@burgan-tech/morph-touch-runtime 0.0.8 → 0.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/burgan-tech-morph-touch-runtime-0.0.9.tgz +0 -0
- package/morph-touch/Functions/get-chat-rooms.http +4 -4
- package/morph-touch/Tasks/check-existing-permanent-chat-room.1.0.0.json +1 -1
- package/morph-touch/Tasks/start-register-matrix-user.1.0.0.json +22 -0
- package/morph-touch/Workflows/chat-room.json +14 -91
- package/morph-touch/Workflows/register-matrix-user.json +128 -0
- package/morph-touch/Workflows/rezervation-start.json +2 -13
- package/morph-touch/Workflows/rezervation-transfer.json +3 -14
- package/morph-touch/Workflows/rezervation-update.json +1 -1
- package/morph-touch/Workflows/src/AlwaysTrueRule.csx +0 -3
- package/morph-touch/Workflows/src/CheckExistingPermanentChatRoomMapping.csx +4 -7
- package/morph-touch/Workflows/src/RegisterForChatRoomMapping.csx +14 -36
- package/morph-touch/Workflows/src/RegisterForJoinUserToRoomMapping.csx +16 -40
- package/morph-touch/Workflows/src/RegisterForRandevuStartChatMapping.csx +14 -38
- package/morph-touch/Workflows/src/RegisterForTransferChatMapping.csx +13 -36
- package/morph-touch/Workflows/src/RegisterMatrixUserMapping.csx +73 -0
- package/morph-touch/Workflows/start-chat.json +1 -1
- package/package.json +1 -1
- package/vnext.config.json +1 -1
- package/burgan-tech-morph-touch-runtime-0.0.8.tgz +0 -0
|
Binary file
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
### Get Chat Rooms by User - Lists all permanent chat rooms for a user
|
|
30
30
|
# Flow-level function (scope: F) on chat-room workflow.
|
|
31
31
|
# Returns rooms array with instanceKey, user, advisorType, advisorId, roomId, currentState.
|
|
32
|
-
GET {{baseUrl}}/api/v{{apiVersion}}/{{domain}}/
|
|
32
|
+
GET {{baseUrl}}/api/v{{apiVersion}}/{{domain}}/functions/get-chat-rooms?user={{user}}&pageSize=1
|
|
33
33
|
Accept: application/json
|
|
34
34
|
Accept-Language: tr-TR
|
|
35
35
|
X-Request-Id: {{$guid}}
|
|
@@ -40,7 +40,7 @@ X-Request-Id: {{$guid}}
|
|
|
40
40
|
|
|
41
41
|
### Get Chat Rooms by Advisor - Lists all chat rooms for an advisor
|
|
42
42
|
# Flow-level function (scope: F) on chat-room workflow.
|
|
43
|
-
GET {{baseUrl}}/api/v{{apiVersion}}/{{domain}}/
|
|
43
|
+
GET {{baseUrl}}/api/v{{apiVersion}}/{{domain}}/functions/get-chat-rooms?advisor={{advisor}}&pageSize=1
|
|
44
44
|
Accept: application/json
|
|
45
45
|
Accept-Language: tr-TR
|
|
46
46
|
X-Request-Id: {{$guid}}
|
|
@@ -50,13 +50,13 @@ X-Request-Id: {{$guid}}
|
|
|
50
50
|
###############################################################################
|
|
51
51
|
|
|
52
52
|
### Get Chat Rooms by User (permanent only)
|
|
53
|
-
GET {{baseUrl}}/api/v{{apiVersion}}/{{domain}}/
|
|
53
|
+
GET {{baseUrl}}/api/v{{apiVersion}}/{{domain}}/functions/get-chat-rooms?user={{user}}&roomType=permanent&pageSize=1
|
|
54
54
|
Accept: application/json
|
|
55
55
|
Accept-Language: tr-TR
|
|
56
56
|
X-Request-Id: {{$guid}}
|
|
57
57
|
|
|
58
58
|
### Get Chat Rooms by User (rezervation only)
|
|
59
|
-
GET {{baseUrl}}/api/v{{apiVersion}}/{{domain}}/
|
|
59
|
+
GET {{baseUrl}}/api/v{{apiVersion}}/{{domain}}/functions/get-chat-rooms?user={{user}}&roomType=rezervation&pageSize=1
|
|
60
60
|
Accept: application/json
|
|
61
61
|
Accept-Language: tr-TR
|
|
62
62
|
X-Request-Id: {{$guid}}
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"type": "3",
|
|
14
14
|
"config": {
|
|
15
15
|
"appId": "vnext-app-morph-touch",
|
|
16
|
-
"methodName": "api/v1/morph-touch/
|
|
16
|
+
"methodName": "api/v1/morph-touch/functions/get-chat-rooms",
|
|
17
17
|
"httpVerb": "GET",
|
|
18
18
|
"timeoutSeconds": 30
|
|
19
19
|
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
{
|
|
2
|
+
"key": "start-register-matrix-user",
|
|
3
|
+
"flow": "sys-tasks",
|
|
4
|
+
"domain": "morph-touch",
|
|
5
|
+
"version": "1.0.0",
|
|
6
|
+
"flowVersion": "1.0.0",
|
|
7
|
+
"tags": [
|
|
8
|
+
"chat",
|
|
9
|
+
"matrix",
|
|
10
|
+
"synapse",
|
|
11
|
+
"register",
|
|
12
|
+
"workflow",
|
|
13
|
+
"start"
|
|
14
|
+
],
|
|
15
|
+
"attributes": {
|
|
16
|
+
"type": "11",
|
|
17
|
+
"config": {
|
|
18
|
+
"domain": "morph-touch",
|
|
19
|
+
"flow": "register-matrix-user"
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}
|
|
@@ -121,23 +121,12 @@
|
|
|
121
121
|
"task": {
|
|
122
122
|
"domain": "morph-touch",
|
|
123
123
|
"flow": "sys-tasks",
|
|
124
|
-
"key": "register-
|
|
124
|
+
"key": "start-register-matrix-user",
|
|
125
125
|
"version": "1.0.0"
|
|
126
126
|
},
|
|
127
127
|
"mapping": {
|
|
128
128
|
"location": "./src/RegisterForChatRoomMapping.csx",
|
|
129
|
-
"code": "
|
|
130
|
-
},
|
|
131
|
-
"errorBoundary": {
|
|
132
|
-
"onError": [
|
|
133
|
-
{
|
|
134
|
-
"action": 3,
|
|
135
|
-
"errorCodes": [
|
|
136
|
-
"*"
|
|
137
|
-
],
|
|
138
|
-
"priority": 1
|
|
139
|
-
}
|
|
140
|
-
]
|
|
129
|
+
"code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGhyZWFkaW5nLlRhc2tzOwp1c2luZyBCQlQuV29ya2Zsb3cuU2NyaXB0aW5nOwp1c2luZyBCQlQuV29ya2Zsb3cuRGVmaW5pdGlvbnM7CgovLy8gPHN1bW1hcnk+Ci8vLyBNYXBwaW5nIGZvciBzdGFydC1yZWdpc3Rlci1tYXRyaXgtdXNlciBTdGFydFRhc2sgKFR5cGUgMTEpIGluIGNoYXQtcm9vbSB3b3JrZmxvdy4KLy8vIFN0YXJ0cyByZWdpc3Rlci1tYXRyaXgtdXNlciBmbG93IHdpdGggbWF0cml4VXNlcm5hbWUgPSAidSIgKyBkYXRhLnVzZXIuCi8vLyA8L3N1bW1hcnk+CnB1YmxpYyBjbGFzcyBSZWdpc3RlckZvckNoYXRSb29tTWFwcGluZyA6IFNjcmlwdEJhc2UsIElNYXBwaW5nCnsKICAgIHB1YmxpYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBJbnB1dEhhbmRsZXIoV29ya2Zsb3dUYXNrIHRhc2ssIFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICB2YXIgc3RhcnRUYXNrID0gdGFzayBhcyBTdGFydFRhc2s7CiAgICAgICAgaWYgKHN0YXJ0VGFzayA9PSBudWxsKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiVGFzayBtdXN0IGJlIGEgU3RhcnRUYXNrIik7CgogICAgICAgIHZhciBkYXRhID0gY29udGV4dC5JbnN0YW5jZT8uRGF0YTsKICAgICAgICB2YXIgdXNlciA9IEdldFN0cmluZyhkYXRhLCAidXNlciIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHVzZXIpKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiQ2Fubm90IGRldGVybWluZSByZWdpc3RlciB1c2VyOiBkYXRhLnVzZXIgaXMgbWlzc2luZyIpOwoKICAgICAgICB2YXIgbWF0cml4VXNlcm5hbWUgPSAidSIgKyB1c2VyOwoKICAgICAgICBzdGFydFRhc2suU2V0RG9tYWluKCJtb3JwaC10b3VjaCIpOwogICAgICAgIHN0YXJ0VGFzay5TZXRGbG93KCJyZWdpc3Rlci1tYXRyaXgtdXNlciIpOwogICAgICAgIHN0YXJ0VGFzay5TZXRTeW5jKHRydWUpOwogICAgICAgIHN0YXJ0VGFzay5TZXRCb2R5KG5ldyB7IG1hdHJpeFVzZXJuYW1lIH0pOwoKICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KG5ldyBTY3JpcHRSZXNwb25zZSgpKTsKICAgIH0KCiAgICBwdWJsaWMgVGFzazxTY3JpcHRSZXNwb25zZT4gT3V0cHV0SGFuZGxlcihTY3JpcHRDb250ZXh0IGNvbnRleHQpCiAgICB7CiAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UoKSk7CiAgICB9CgogICAgcHJpdmF0ZSBzdHJpbmcgR2V0U3RyaW5nKGR5bmFtaWMgb2JqLCBzdHJpbmcgbmFtZSkKICAgIHsKICAgICAgICBpZiAob2JqID09IG51bGwpIHJldHVybiBudWxsOwogICAgICAgIHRyeQogICAgICAgIHsKICAgICAgICAgICAgaWYgKEhhc1Byb3BlcnR5KG9iaiwgbmFtZSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciB2ID0gR2V0UHJvcGVydHlWYWx1ZShvYmosIG5hbWUpOwogICAgICAgICAgICAgICAgcmV0dXJuIHY/LlRvU3RyaW5nKCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY2F0Y2ggeyB9CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICB9Cn0K"
|
|
141
130
|
}
|
|
142
131
|
},
|
|
143
132
|
{
|
|
@@ -171,23 +160,12 @@
|
|
|
171
160
|
"task": {
|
|
172
161
|
"domain": "morph-touch",
|
|
173
162
|
"flow": "sys-tasks",
|
|
174
|
-
"key": "register-
|
|
163
|
+
"key": "start-register-matrix-user",
|
|
175
164
|
"version": "1.0.0"
|
|
176
165
|
},
|
|
177
166
|
"mapping": {
|
|
178
167
|
"location": "./src/RegisterForJoinUserToRoomMapping.csx",
|
|
179
|
-
"code": "
|
|
180
|
-
},
|
|
181
|
-
"errorBoundary": {
|
|
182
|
-
"onError": [
|
|
183
|
-
{
|
|
184
|
-
"action": 3,
|
|
185
|
-
"errorCodes": [
|
|
186
|
-
"*"
|
|
187
|
-
],
|
|
188
|
-
"priority": 1
|
|
189
|
-
}
|
|
190
|
-
]
|
|
168
|
+
"code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGhyZWFkaW5nLlRhc2tzOwp1c2luZyBCQlQuV29ya2Zsb3cuU2NyaXB0aW5nOwp1c2luZyBCQlQuV29ya2Zsb3cuRGVmaW5pdGlvbnM7CgovLy8gPHN1bW1hcnk+Ci8vLyBNYXBwaW5nIGZvciBzdGFydC1yZWdpc3Rlci1tYXRyaXgtdXNlciBTdGFydFRhc2sgKFR5cGUgMTEpIGJlZm9yZSBqb2luLXVzZXItdG8tcm9vbS4KLy8vIFN0YXJ0cyByZWdpc3Rlci1tYXRyaXgtdXNlciBmbG93IHdpdGggbWF0cml4VXNlcm5hbWUgZnJvbSBwZW5kaW5nSm9pblVzZXJJZCAvIG5ld0Fkdmlzb3JJZCAvIGFkdmlzb3JJZC4KLy8vIDwvc3VtbWFyeT4KcHVibGljIGNsYXNzIFJlZ2lzdGVyRm9ySm9pblVzZXJUb1Jvb21NYXBwaW5nIDogU2NyaXB0QmFzZSwgSU1hcHBpbmcKewogICAgcHVibGljIFRhc2s8U2NyaXB0UmVzcG9uc2U+IElucHV0SGFuZGxlcihXb3JrZmxvd1Rhc2sgdGFzaywgU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHZhciBzdGFydFRhc2sgPSB0YXNrIGFzIFN0YXJ0VGFzazsKICAgICAgICBpZiAoc3RhcnRUYXNrID09IG51bGwpCiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJUYXNrIG11c3QgYmUgYSBTdGFydFRhc2siKTsKCiAgICAgICAgdmFyIGRhdGEgPSBjb250ZXh0Lkluc3RhbmNlPy5EYXRhOwoKICAgICAgICB2YXIgam9pblVzZXIgPSBHZXRTdHJpbmcoZGF0YSwgInBlbmRpbmdKb2luVXNlcklkIik7CiAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPcldoaXRlU3BhY2Uoam9pblVzZXIpKQogICAgICAgICAgICBqb2luVXNlciA9IEdldFN0cmluZyhkYXRhLCAibmV3QWR2aXNvcklkIik7CiAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPcldoaXRlU3BhY2Uoam9pblVzZXIpKQogICAgICAgICAgICBqb2luVXNlciA9IEdldFN0cmluZyhkYXRhLCAiYWR2aXNvcklkIik7CgogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKGpvaW5Vc2VyKSkKICAgICAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UoKSk7CgogICAgICAgIHZhciBtYXRyaXhVc2VybmFtZSA9IGpvaW5Vc2VyLlRyaW0oKTsKICAgICAgICBpZiAobWF0cml4VXNlcm5hbWUuU3RhcnRzV2l0aCgiQCIpKQogICAgICAgIHsKICAgICAgICAgICAgdmFyIGNvbG9uSWR4ID0gbWF0cml4VXNlcm5hbWUuSW5kZXhPZignOicpOwogICAgICAgICAgICBtYXRyaXhVc2VybmFtZSA9IGNvbG9uSWR4ID4gMCA/IG1hdHJpeFVzZXJuYW1lLlN1YnN0cmluZygxLCBjb2xvbklkeCAtIDEpIDogbWF0cml4VXNlcm5hbWUuU3Vic3RyaW5nKDEpOwogICAgICAgIH0KCiAgICAgICAgc3RhcnRUYXNrLlNldERvbWFpbigibW9ycGgtdG91Y2giKTsKICAgICAgICBzdGFydFRhc2suU2V0RmxvdygicmVnaXN0ZXItbWF0cml4LXVzZXIiKTsKICAgICAgICBzdGFydFRhc2suU2V0U3luYyh0cnVlKTsKICAgICAgICBzdGFydFRhc2suU2V0Qm9keShuZXcgeyBtYXRyaXhVc2VybmFtZSB9KTsKCiAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UoKSk7CiAgICB9CgogICAgcHVibGljIFRhc2s8U2NyaXB0UmVzcG9uc2U+IE91dHB1dEhhbmRsZXIoU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlKCkpOwogICAgfQoKICAgIHByaXZhdGUgc3RyaW5nIEdldFN0cmluZyhkeW5hbWljIG9iaiwgc3RyaW5nIG5hbWUpCiAgICB7CiAgICAgICAgaWYgKG9iaiA9PSBudWxsKSByZXR1cm4gbnVsbDsKICAgICAgICB0cnkKICAgICAgICB7CiAgICAgICAgICAgIGlmIChIYXNQcm9wZXJ0eShvYmosIG5hbWUpKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICB2YXIgdiA9IEdldFByb3BlcnR5VmFsdWUob2JqLCBuYW1lKTsKICAgICAgICAgICAgICAgIHJldHVybiB2Py5Ub1N0cmluZygpOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNhdGNoIHsgfQogICAgICAgIHJldHVybiBudWxsOwogICAgfQp9Cg=="
|
|
191
169
|
}
|
|
192
170
|
},
|
|
193
171
|
{
|
|
@@ -327,23 +305,12 @@
|
|
|
327
305
|
"task": {
|
|
328
306
|
"domain": "morph-touch",
|
|
329
307
|
"flow": "sys-tasks",
|
|
330
|
-
"key": "register-
|
|
308
|
+
"key": "start-register-matrix-user",
|
|
331
309
|
"version": "1.0.0"
|
|
332
310
|
},
|
|
333
311
|
"mapping": {
|
|
334
312
|
"location": "./src/RegisterForChatRoomMapping.csx",
|
|
335
|
-
"code": "
|
|
336
|
-
},
|
|
337
|
-
"errorBoundary": {
|
|
338
|
-
"onError": [
|
|
339
|
-
{
|
|
340
|
-
"action": 3,
|
|
341
|
-
"errorCodes": [
|
|
342
|
-
"*"
|
|
343
|
-
],
|
|
344
|
-
"priority": 1
|
|
345
|
-
}
|
|
346
|
-
]
|
|
313
|
+
"code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGhyZWFkaW5nLlRhc2tzOwp1c2luZyBCQlQuV29ya2Zsb3cuU2NyaXB0aW5nOwp1c2luZyBCQlQuV29ya2Zsb3cuRGVmaW5pdGlvbnM7CgovLy8gPHN1bW1hcnk+Ci8vLyBNYXBwaW5nIGZvciBzdGFydC1yZWdpc3Rlci1tYXRyaXgtdXNlciBTdGFydFRhc2sgKFR5cGUgMTEpIGluIGNoYXQtcm9vbSB3b3JrZmxvdy4KLy8vIFN0YXJ0cyByZWdpc3Rlci1tYXRyaXgtdXNlciBmbG93IHdpdGggbWF0cml4VXNlcm5hbWUgPSAidSIgKyBkYXRhLnVzZXIuCi8vLyA8L3N1bW1hcnk+CnB1YmxpYyBjbGFzcyBSZWdpc3RlckZvckNoYXRSb29tTWFwcGluZyA6IFNjcmlwdEJhc2UsIElNYXBwaW5nCnsKICAgIHB1YmxpYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBJbnB1dEhhbmRsZXIoV29ya2Zsb3dUYXNrIHRhc2ssIFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICB2YXIgc3RhcnRUYXNrID0gdGFzayBhcyBTdGFydFRhc2s7CiAgICAgICAgaWYgKHN0YXJ0VGFzayA9PSBudWxsKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiVGFzayBtdXN0IGJlIGEgU3RhcnRUYXNrIik7CgogICAgICAgIHZhciBkYXRhID0gY29udGV4dC5JbnN0YW5jZT8uRGF0YTsKICAgICAgICB2YXIgdXNlciA9IEdldFN0cmluZyhkYXRhLCAidXNlciIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHVzZXIpKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiQ2Fubm90IGRldGVybWluZSByZWdpc3RlciB1c2VyOiBkYXRhLnVzZXIgaXMgbWlzc2luZyIpOwoKICAgICAgICB2YXIgbWF0cml4VXNlcm5hbWUgPSAidSIgKyB1c2VyOwoKICAgICAgICBzdGFydFRhc2suU2V0RG9tYWluKCJtb3JwaC10b3VjaCIpOwogICAgICAgIHN0YXJ0VGFzay5TZXRGbG93KCJyZWdpc3Rlci1tYXRyaXgtdXNlciIpOwogICAgICAgIHN0YXJ0VGFzay5TZXRTeW5jKHRydWUpOwogICAgICAgIHN0YXJ0VGFzay5TZXRCb2R5KG5ldyB7IG1hdHJpeFVzZXJuYW1lIH0pOwoKICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KG5ldyBTY3JpcHRSZXNwb25zZSgpKTsKICAgIH0KCiAgICBwdWJsaWMgVGFzazxTY3JpcHRSZXNwb25zZT4gT3V0cHV0SGFuZGxlcihTY3JpcHRDb250ZXh0IGNvbnRleHQpCiAgICB7CiAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UoKSk7CiAgICB9CgogICAgcHJpdmF0ZSBzdHJpbmcgR2V0U3RyaW5nKGR5bmFtaWMgb2JqLCBzdHJpbmcgbmFtZSkKICAgIHsKICAgICAgICBpZiAob2JqID09IG51bGwpIHJldHVybiBudWxsOwogICAgICAgIHRyeQogICAgICAgIHsKICAgICAgICAgICAgaWYgKEhhc1Byb3BlcnR5KG9iaiwgbmFtZSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciB2ID0gR2V0UHJvcGVydHlWYWx1ZShvYmosIG5hbWUpOwogICAgICAgICAgICAgICAgcmV0dXJuIHY/LlRvU3RyaW5nKCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY2F0Y2ggeyB9CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICB9Cn0K"
|
|
347
314
|
}
|
|
348
315
|
},
|
|
349
316
|
{
|
|
@@ -390,23 +357,12 @@
|
|
|
390
357
|
"task": {
|
|
391
358
|
"domain": "morph-touch",
|
|
392
359
|
"flow": "sys-tasks",
|
|
393
|
-
"key": "register-
|
|
360
|
+
"key": "start-register-matrix-user",
|
|
394
361
|
"version": "1.0.0"
|
|
395
362
|
},
|
|
396
363
|
"mapping": {
|
|
397
364
|
"location": "./src/RegisterForJoinUserToRoomMapping.csx",
|
|
398
|
-
"code": "
|
|
399
|
-
},
|
|
400
|
-
"errorBoundary": {
|
|
401
|
-
"onError": [
|
|
402
|
-
{
|
|
403
|
-
"action": 3,
|
|
404
|
-
"errorCodes": [
|
|
405
|
-
"*"
|
|
406
|
-
],
|
|
407
|
-
"priority": 1
|
|
408
|
-
}
|
|
409
|
-
]
|
|
365
|
+
"code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGhyZWFkaW5nLlRhc2tzOwp1c2luZyBCQlQuV29ya2Zsb3cuU2NyaXB0aW5nOwp1c2luZyBCQlQuV29ya2Zsb3cuRGVmaW5pdGlvbnM7CgovLy8gPHN1bW1hcnk+Ci8vLyBNYXBwaW5nIGZvciBzdGFydC1yZWdpc3Rlci1tYXRyaXgtdXNlciBTdGFydFRhc2sgKFR5cGUgMTEpIGJlZm9yZSBqb2luLXVzZXItdG8tcm9vbS4KLy8vIFN0YXJ0cyByZWdpc3Rlci1tYXRyaXgtdXNlciBmbG93IHdpdGggbWF0cml4VXNlcm5hbWUgZnJvbSBwZW5kaW5nSm9pblVzZXJJZCAvIG5ld0Fkdmlzb3JJZCAvIGFkdmlzb3JJZC4KLy8vIDwvc3VtbWFyeT4KcHVibGljIGNsYXNzIFJlZ2lzdGVyRm9ySm9pblVzZXJUb1Jvb21NYXBwaW5nIDogU2NyaXB0QmFzZSwgSU1hcHBpbmcKewogICAgcHVibGljIFRhc2s8U2NyaXB0UmVzcG9uc2U+IElucHV0SGFuZGxlcihXb3JrZmxvd1Rhc2sgdGFzaywgU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHZhciBzdGFydFRhc2sgPSB0YXNrIGFzIFN0YXJ0VGFzazsKICAgICAgICBpZiAoc3RhcnRUYXNrID09IG51bGwpCiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJUYXNrIG11c3QgYmUgYSBTdGFydFRhc2siKTsKCiAgICAgICAgdmFyIGRhdGEgPSBjb250ZXh0Lkluc3RhbmNlPy5EYXRhOwoKICAgICAgICB2YXIgam9pblVzZXIgPSBHZXRTdHJpbmcoZGF0YSwgInBlbmRpbmdKb2luVXNlcklkIik7CiAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPcldoaXRlU3BhY2Uoam9pblVzZXIpKQogICAgICAgICAgICBqb2luVXNlciA9IEdldFN0cmluZyhkYXRhLCAibmV3QWR2aXNvcklkIik7CiAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPcldoaXRlU3BhY2Uoam9pblVzZXIpKQogICAgICAgICAgICBqb2luVXNlciA9IEdldFN0cmluZyhkYXRhLCAiYWR2aXNvcklkIik7CgogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKGpvaW5Vc2VyKSkKICAgICAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UoKSk7CgogICAgICAgIHZhciBtYXRyaXhVc2VybmFtZSA9IGpvaW5Vc2VyLlRyaW0oKTsKICAgICAgICBpZiAobWF0cml4VXNlcm5hbWUuU3RhcnRzV2l0aCgiQCIpKQogICAgICAgIHsKICAgICAgICAgICAgdmFyIGNvbG9uSWR4ID0gbWF0cml4VXNlcm5hbWUuSW5kZXhPZignOicpOwogICAgICAgICAgICBtYXRyaXhVc2VybmFtZSA9IGNvbG9uSWR4ID4gMCA/IG1hdHJpeFVzZXJuYW1lLlN1YnN0cmluZygxLCBjb2xvbklkeCAtIDEpIDogbWF0cml4VXNlcm5hbWUuU3Vic3RyaW5nKDEpOwogICAgICAgIH0KCiAgICAgICAgc3RhcnRUYXNrLlNldERvbWFpbigibW9ycGgtdG91Y2giKTsKICAgICAgICBzdGFydFRhc2suU2V0RmxvdygicmVnaXN0ZXItbWF0cml4LXVzZXIiKTsKICAgICAgICBzdGFydFRhc2suU2V0U3luYyh0cnVlKTsKICAgICAgICBzdGFydFRhc2suU2V0Qm9keShuZXcgeyBtYXRyaXhVc2VybmFtZSB9KTsKCiAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UoKSk7CiAgICB9CgogICAgcHVibGljIFRhc2s8U2NyaXB0UmVzcG9uc2U+IE91dHB1dEhhbmRsZXIoU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlKCkpOwogICAgfQoKICAgIHByaXZhdGUgc3RyaW5nIEdldFN0cmluZyhkeW5hbWljIG9iaiwgc3RyaW5nIG5hbWUpCiAgICB7CiAgICAgICAgaWYgKG9iaiA9PSBudWxsKSByZXR1cm4gbnVsbDsKICAgICAgICB0cnkKICAgICAgICB7CiAgICAgICAgICAgIGlmIChIYXNQcm9wZXJ0eShvYmosIG5hbWUpKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICB2YXIgdiA9IEdldFByb3BlcnR5VmFsdWUob2JqLCBuYW1lKTsKICAgICAgICAgICAgICAgIHJldHVybiB2Py5Ub1N0cmluZygpOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNhdGNoIHsgfQogICAgICAgIHJldHVybiBudWxsOwogICAgfQp9Cg=="
|
|
410
366
|
}
|
|
411
367
|
},
|
|
412
368
|
{
|
|
@@ -458,23 +414,12 @@
|
|
|
458
414
|
"task": {
|
|
459
415
|
"domain": "morph-touch",
|
|
460
416
|
"flow": "sys-tasks",
|
|
461
|
-
"key": "register-
|
|
417
|
+
"key": "start-register-matrix-user",
|
|
462
418
|
"version": "1.0.0"
|
|
463
419
|
},
|
|
464
420
|
"mapping": {
|
|
465
421
|
"location": "./src/RegisterForChatRoomMapping.csx",
|
|
466
|
-
"code": "
|
|
467
|
-
},
|
|
468
|
-
"errorBoundary": {
|
|
469
|
-
"onError": [
|
|
470
|
-
{
|
|
471
|
-
"action": 3,
|
|
472
|
-
"errorCodes": [
|
|
473
|
-
"*"
|
|
474
|
-
],
|
|
475
|
-
"priority": 1
|
|
476
|
-
}
|
|
477
|
-
]
|
|
422
|
+
"code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGhyZWFkaW5nLlRhc2tzOwp1c2luZyBCQlQuV29ya2Zsb3cuU2NyaXB0aW5nOwp1c2luZyBCQlQuV29ya2Zsb3cuRGVmaW5pdGlvbnM7CgovLy8gPHN1bW1hcnk+Ci8vLyBNYXBwaW5nIGZvciBzdGFydC1yZWdpc3Rlci1tYXRyaXgtdXNlciBTdGFydFRhc2sgKFR5cGUgMTEpIGluIGNoYXQtcm9vbSB3b3JrZmxvdy4KLy8vIFN0YXJ0cyByZWdpc3Rlci1tYXRyaXgtdXNlciBmbG93IHdpdGggbWF0cml4VXNlcm5hbWUgPSAidSIgKyBkYXRhLnVzZXIuCi8vLyA8L3N1bW1hcnk+CnB1YmxpYyBjbGFzcyBSZWdpc3RlckZvckNoYXRSb29tTWFwcGluZyA6IFNjcmlwdEJhc2UsIElNYXBwaW5nCnsKICAgIHB1YmxpYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBJbnB1dEhhbmRsZXIoV29ya2Zsb3dUYXNrIHRhc2ssIFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICB2YXIgc3RhcnRUYXNrID0gdGFzayBhcyBTdGFydFRhc2s7CiAgICAgICAgaWYgKHN0YXJ0VGFzayA9PSBudWxsKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiVGFzayBtdXN0IGJlIGEgU3RhcnRUYXNrIik7CgogICAgICAgIHZhciBkYXRhID0gY29udGV4dC5JbnN0YW5jZT8uRGF0YTsKICAgICAgICB2YXIgdXNlciA9IEdldFN0cmluZyhkYXRhLCAidXNlciIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHVzZXIpKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiQ2Fubm90IGRldGVybWluZSByZWdpc3RlciB1c2VyOiBkYXRhLnVzZXIgaXMgbWlzc2luZyIpOwoKICAgICAgICB2YXIgbWF0cml4VXNlcm5hbWUgPSAidSIgKyB1c2VyOwoKICAgICAgICBzdGFydFRhc2suU2V0RG9tYWluKCJtb3JwaC10b3VjaCIpOwogICAgICAgIHN0YXJ0VGFzay5TZXRGbG93KCJyZWdpc3Rlci1tYXRyaXgtdXNlciIpOwogICAgICAgIHN0YXJ0VGFzay5TZXRTeW5jKHRydWUpOwogICAgICAgIHN0YXJ0VGFzay5TZXRCb2R5KG5ldyB7IG1hdHJpeFVzZXJuYW1lIH0pOwoKICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KG5ldyBTY3JpcHRSZXNwb25zZSgpKTsKICAgIH0KCiAgICBwdWJsaWMgVGFzazxTY3JpcHRSZXNwb25zZT4gT3V0cHV0SGFuZGxlcihTY3JpcHRDb250ZXh0IGNvbnRleHQpCiAgICB7CiAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UoKSk7CiAgICB9CgogICAgcHJpdmF0ZSBzdHJpbmcgR2V0U3RyaW5nKGR5bmFtaWMgb2JqLCBzdHJpbmcgbmFtZSkKICAgIHsKICAgICAgICBpZiAob2JqID09IG51bGwpIHJldHVybiBudWxsOwogICAgICAgIHRyeQogICAgICAgIHsKICAgICAgICAgICAgaWYgKEhhc1Byb3BlcnR5KG9iaiwgbmFtZSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciB2ID0gR2V0UHJvcGVydHlWYWx1ZShvYmosIG5hbWUpOwogICAgICAgICAgICAgICAgcmV0dXJuIHY/LlRvU3RyaW5nKCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY2F0Y2ggeyB9CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICB9Cn0K"
|
|
478
423
|
}
|
|
479
424
|
},
|
|
480
425
|
{
|
|
@@ -526,23 +471,12 @@
|
|
|
526
471
|
"task": {
|
|
527
472
|
"domain": "morph-touch",
|
|
528
473
|
"flow": "sys-tasks",
|
|
529
|
-
"key": "register-
|
|
474
|
+
"key": "start-register-matrix-user",
|
|
530
475
|
"version": "1.0.0"
|
|
531
476
|
},
|
|
532
477
|
"mapping": {
|
|
533
478
|
"location": "./src/RegisterForChatRoomMapping.csx",
|
|
534
|
-
"code": "
|
|
535
|
-
},
|
|
536
|
-
"errorBoundary": {
|
|
537
|
-
"onError": [
|
|
538
|
-
{
|
|
539
|
-
"action": 3,
|
|
540
|
-
"errorCodes": [
|
|
541
|
-
"*"
|
|
542
|
-
],
|
|
543
|
-
"priority": 1
|
|
544
|
-
}
|
|
545
|
-
]
|
|
479
|
+
"code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGhyZWFkaW5nLlRhc2tzOwp1c2luZyBCQlQuV29ya2Zsb3cuU2NyaXB0aW5nOwp1c2luZyBCQlQuV29ya2Zsb3cuRGVmaW5pdGlvbnM7CgovLy8gPHN1bW1hcnk+Ci8vLyBNYXBwaW5nIGZvciBzdGFydC1yZWdpc3Rlci1tYXRyaXgtdXNlciBTdGFydFRhc2sgKFR5cGUgMTEpIGluIGNoYXQtcm9vbSB3b3JrZmxvdy4KLy8vIFN0YXJ0cyByZWdpc3Rlci1tYXRyaXgtdXNlciBmbG93IHdpdGggbWF0cml4VXNlcm5hbWUgPSAidSIgKyBkYXRhLnVzZXIuCi8vLyA8L3N1bW1hcnk+CnB1YmxpYyBjbGFzcyBSZWdpc3RlckZvckNoYXRSb29tTWFwcGluZyA6IFNjcmlwdEJhc2UsIElNYXBwaW5nCnsKICAgIHB1YmxpYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBJbnB1dEhhbmRsZXIoV29ya2Zsb3dUYXNrIHRhc2ssIFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICB2YXIgc3RhcnRUYXNrID0gdGFzayBhcyBTdGFydFRhc2s7CiAgICAgICAgaWYgKHN0YXJ0VGFzayA9PSBudWxsKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiVGFzayBtdXN0IGJlIGEgU3RhcnRUYXNrIik7CgogICAgICAgIHZhciBkYXRhID0gY29udGV4dC5JbnN0YW5jZT8uRGF0YTsKICAgICAgICB2YXIgdXNlciA9IEdldFN0cmluZyhkYXRhLCAidXNlciIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHVzZXIpKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiQ2Fubm90IGRldGVybWluZSByZWdpc3RlciB1c2VyOiBkYXRhLnVzZXIgaXMgbWlzc2luZyIpOwoKICAgICAgICB2YXIgbWF0cml4VXNlcm5hbWUgPSAidSIgKyB1c2VyOwoKICAgICAgICBzdGFydFRhc2suU2V0RG9tYWluKCJtb3JwaC10b3VjaCIpOwogICAgICAgIHN0YXJ0VGFzay5TZXRGbG93KCJyZWdpc3Rlci1tYXRyaXgtdXNlciIpOwogICAgICAgIHN0YXJ0VGFzay5TZXRTeW5jKHRydWUpOwogICAgICAgIHN0YXJ0VGFzay5TZXRCb2R5KG5ldyB7IG1hdHJpeFVzZXJuYW1lIH0pOwoKICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KG5ldyBTY3JpcHRSZXNwb25zZSgpKTsKICAgIH0KCiAgICBwdWJsaWMgVGFzazxTY3JpcHRSZXNwb25zZT4gT3V0cHV0SGFuZGxlcihTY3JpcHRDb250ZXh0IGNvbnRleHQpCiAgICB7CiAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UoKSk7CiAgICB9CgogICAgcHJpdmF0ZSBzdHJpbmcgR2V0U3RyaW5nKGR5bmFtaWMgb2JqLCBzdHJpbmcgbmFtZSkKICAgIHsKICAgICAgICBpZiAob2JqID09IG51bGwpIHJldHVybiBudWxsOwogICAgICAgIHRyeQogICAgICAgIHsKICAgICAgICAgICAgaWYgKEhhc1Byb3BlcnR5KG9iaiwgbmFtZSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciB2ID0gR2V0UHJvcGVydHlWYWx1ZShvYmosIG5hbWUpOwogICAgICAgICAgICAgICAgcmV0dXJuIHY/LlRvU3RyaW5nKCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY2F0Y2ggeyB9CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICB9Cn0K"
|
|
546
480
|
}
|
|
547
481
|
},
|
|
548
482
|
{
|
|
@@ -589,23 +523,12 @@
|
|
|
589
523
|
"task": {
|
|
590
524
|
"domain": "morph-touch",
|
|
591
525
|
"flow": "sys-tasks",
|
|
592
|
-
"key": "register-
|
|
526
|
+
"key": "start-register-matrix-user",
|
|
593
527
|
"version": "1.0.0"
|
|
594
528
|
},
|
|
595
529
|
"mapping": {
|
|
596
530
|
"location": "./src/RegisterForJoinUserToRoomMapping.csx",
|
|
597
|
-
"code": "
|
|
598
|
-
},
|
|
599
|
-
"errorBoundary": {
|
|
600
|
-
"onError": [
|
|
601
|
-
{
|
|
602
|
-
"action": 3,
|
|
603
|
-
"errorCodes": [
|
|
604
|
-
"*"
|
|
605
|
-
],
|
|
606
|
-
"priority": 1
|
|
607
|
-
}
|
|
608
|
-
]
|
|
531
|
+
"code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGhyZWFkaW5nLlRhc2tzOwp1c2luZyBCQlQuV29ya2Zsb3cuU2NyaXB0aW5nOwp1c2luZyBCQlQuV29ya2Zsb3cuRGVmaW5pdGlvbnM7CgovLy8gPHN1bW1hcnk+Ci8vLyBNYXBwaW5nIGZvciBzdGFydC1yZWdpc3Rlci1tYXRyaXgtdXNlciBTdGFydFRhc2sgKFR5cGUgMTEpIGJlZm9yZSBqb2luLXVzZXItdG8tcm9vbS4KLy8vIFN0YXJ0cyByZWdpc3Rlci1tYXRyaXgtdXNlciBmbG93IHdpdGggbWF0cml4VXNlcm5hbWUgZnJvbSBwZW5kaW5nSm9pblVzZXJJZCAvIG5ld0Fkdmlzb3JJZCAvIGFkdmlzb3JJZC4KLy8vIDwvc3VtbWFyeT4KcHVibGljIGNsYXNzIFJlZ2lzdGVyRm9ySm9pblVzZXJUb1Jvb21NYXBwaW5nIDogU2NyaXB0QmFzZSwgSU1hcHBpbmcKewogICAgcHVibGljIFRhc2s8U2NyaXB0UmVzcG9uc2U+IElucHV0SGFuZGxlcihXb3JrZmxvd1Rhc2sgdGFzaywgU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHZhciBzdGFydFRhc2sgPSB0YXNrIGFzIFN0YXJ0VGFzazsKICAgICAgICBpZiAoc3RhcnRUYXNrID09IG51bGwpCiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJUYXNrIG11c3QgYmUgYSBTdGFydFRhc2siKTsKCiAgICAgICAgdmFyIGRhdGEgPSBjb250ZXh0Lkluc3RhbmNlPy5EYXRhOwoKICAgICAgICB2YXIgam9pblVzZXIgPSBHZXRTdHJpbmcoZGF0YSwgInBlbmRpbmdKb2luVXNlcklkIik7CiAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPcldoaXRlU3BhY2Uoam9pblVzZXIpKQogICAgICAgICAgICBqb2luVXNlciA9IEdldFN0cmluZyhkYXRhLCAibmV3QWR2aXNvcklkIik7CiAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPcldoaXRlU3BhY2Uoam9pblVzZXIpKQogICAgICAgICAgICBqb2luVXNlciA9IEdldFN0cmluZyhkYXRhLCAiYWR2aXNvcklkIik7CgogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKGpvaW5Vc2VyKSkKICAgICAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UoKSk7CgogICAgICAgIHZhciBtYXRyaXhVc2VybmFtZSA9IGpvaW5Vc2VyLlRyaW0oKTsKICAgICAgICBpZiAobWF0cml4VXNlcm5hbWUuU3RhcnRzV2l0aCgiQCIpKQogICAgICAgIHsKICAgICAgICAgICAgdmFyIGNvbG9uSWR4ID0gbWF0cml4VXNlcm5hbWUuSW5kZXhPZignOicpOwogICAgICAgICAgICBtYXRyaXhVc2VybmFtZSA9IGNvbG9uSWR4ID4gMCA/IG1hdHJpeFVzZXJuYW1lLlN1YnN0cmluZygxLCBjb2xvbklkeCAtIDEpIDogbWF0cml4VXNlcm5hbWUuU3Vic3RyaW5nKDEpOwogICAgICAgIH0KCiAgICAgICAgc3RhcnRUYXNrLlNldERvbWFpbigibW9ycGgtdG91Y2giKTsKICAgICAgICBzdGFydFRhc2suU2V0RmxvdygicmVnaXN0ZXItbWF0cml4LXVzZXIiKTsKICAgICAgICBzdGFydFRhc2suU2V0U3luYyh0cnVlKTsKICAgICAgICBzdGFydFRhc2suU2V0Qm9keShuZXcgeyBtYXRyaXhVc2VybmFtZSB9KTsKCiAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UoKSk7CiAgICB9CgogICAgcHVibGljIFRhc2s8U2NyaXB0UmVzcG9uc2U+IE91dHB1dEhhbmRsZXIoU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlKCkpOwogICAgfQoKICAgIHByaXZhdGUgc3RyaW5nIEdldFN0cmluZyhkeW5hbWljIG9iaiwgc3RyaW5nIG5hbWUpCiAgICB7CiAgICAgICAgaWYgKG9iaiA9PSBudWxsKSByZXR1cm4gbnVsbDsKICAgICAgICB0cnkKICAgICAgICB7CiAgICAgICAgICAgIGlmIChIYXNQcm9wZXJ0eShvYmosIG5hbWUpKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICB2YXIgdiA9IEdldFByb3BlcnR5VmFsdWUob2JqLCBuYW1lKTsKICAgICAgICAgICAgICAgIHJldHVybiB2Py5Ub1N0cmluZygpOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNhdGNoIHsgfQogICAgICAgIHJldHVybiBudWxsOwogICAgfQp9Cg=="
|
|
609
532
|
}
|
|
610
533
|
},
|
|
611
534
|
{
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
{
|
|
2
|
+
"key": "register-matrix-user",
|
|
3
|
+
"flow": "sys-flows",
|
|
4
|
+
"domain": "morph-touch",
|
|
5
|
+
"version": "1.0.0",
|
|
6
|
+
"flowVersion": "1.0.0",
|
|
7
|
+
"tags": [
|
|
8
|
+
"chat",
|
|
9
|
+
"matrix",
|
|
10
|
+
"synapse",
|
|
11
|
+
"register"
|
|
12
|
+
],
|
|
13
|
+
"attributes": {
|
|
14
|
+
"type": "S",
|
|
15
|
+
"labels": [
|
|
16
|
+
{
|
|
17
|
+
"label": "Register Matrix User",
|
|
18
|
+
"language": "en-US"
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"label": "Matrix Kullanıcı Kaydı",
|
|
22
|
+
"language": "tr-TR"
|
|
23
|
+
}
|
|
24
|
+
],
|
|
25
|
+
"functions": [],
|
|
26
|
+
"features": [],
|
|
27
|
+
"extensions": [],
|
|
28
|
+
"sharedTransitions": [],
|
|
29
|
+
"startTransition": {
|
|
30
|
+
"key": "start",
|
|
31
|
+
"target": "registering",
|
|
32
|
+
"versionStrategy": "Major",
|
|
33
|
+
"triggerType": 0,
|
|
34
|
+
"labels": [
|
|
35
|
+
{
|
|
36
|
+
"label": "Start",
|
|
37
|
+
"language": "en-US"
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
"label": "Başla",
|
|
41
|
+
"language": "tr-TR"
|
|
42
|
+
}
|
|
43
|
+
]
|
|
44
|
+
},
|
|
45
|
+
"states": [
|
|
46
|
+
{
|
|
47
|
+
"key": "registering",
|
|
48
|
+
"stateType": 1,
|
|
49
|
+
"versionStrategy": "Minor",
|
|
50
|
+
"labels": [
|
|
51
|
+
{
|
|
52
|
+
"label": "Registering",
|
|
53
|
+
"language": "en-US"
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"label": "Kayıt Ediliyor",
|
|
57
|
+
"language": "tr-TR"
|
|
58
|
+
}
|
|
59
|
+
],
|
|
60
|
+
"transitions": [
|
|
61
|
+
{
|
|
62
|
+
"key": "complete",
|
|
63
|
+
"target": "completed",
|
|
64
|
+
"triggerType": 1,
|
|
65
|
+
"versionStrategy": "Minor",
|
|
66
|
+
"labels": [
|
|
67
|
+
{
|
|
68
|
+
"label": "Complete",
|
|
69
|
+
"language": "en-US"
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
"label": "Tamamla",
|
|
73
|
+
"language": "tr-TR"
|
|
74
|
+
}
|
|
75
|
+
],
|
|
76
|
+
"rule": {
|
|
77
|
+
"location": "./src/AlwaysTrueRule.csx",
|
|
78
|
+
"code": "dXNpbmcgU3lzdGVtLlRocmVhZGluZy5UYXNrczsKdXNpbmcgQkJULldvcmtmbG93LlNjcmlwdGluZzsKCnB1YmxpYyBjbGFzcyBBbHdheXNUcnVlUnVsZSA6IFNjcmlwdEJhc2UsIElDb25kaXRpb25NYXBwaW5nCnsKICAgIHB1YmxpYyBUYXNrPGJvb2w+IEhhbmRsZXIoU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQodHJ1ZSk7CiAgICB9Cn0K"
|
|
79
|
+
},
|
|
80
|
+
"onExecutionTasks": [
|
|
81
|
+
{
|
|
82
|
+
"order": 1,
|
|
83
|
+
"task": {
|
|
84
|
+
"domain": "morph-touch",
|
|
85
|
+
"flow": "sys-tasks",
|
|
86
|
+
"key": "register-for-chat",
|
|
87
|
+
"version": "1.0.0"
|
|
88
|
+
},
|
|
89
|
+
"mapping": {
|
|
90
|
+
"location": "./src/RegisterMatrixUserMapping.csx",
|
|
91
|
+
"code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLlRocmVhZGluZy5UYXNrczsKdXNpbmcgQkJULldvcmtmbG93LlNjcmlwdGluZzsKdXNpbmcgQkJULldvcmtmbG93LkRlZmluaXRpb25zOwoKLy8vIDxzdW1tYXJ5PgovLy8gR2VuZXJpYyBtYXBwaW5nIGZvciByZWdpc3Rlci1mb3ItY2hhdCBpbnNpZGUgdGhlIHJlZ2lzdGVyLW1hdHJpeC11c2VyIGZsb3cuCi8vLyBSZWFkcyBtYXRyaXhVc2VybmFtZSBmcm9tIGluc3RhbmNlIGRhdGEgYW5kIHJlZ2lzdGVycyBvbiBTeW5hcHNlIHZpYSBQT1NUIC9fbWF0cml4L2NsaWVudC92My9yZWdpc3Rlci4KLy8vIDwvc3VtbWFyeT4KcHVibGljIGNsYXNzIFJlZ2lzdGVyTWF0cml4VXNlck1hcHBpbmcgOiBTY3JpcHRCYXNlLCBJTWFwcGluZwp7CiAgICBwdWJsaWMgYXN5bmMgVGFzazxTY3JpcHRSZXNwb25zZT4gSW5wdXRIYW5kbGVyKFdvcmtmbG93VGFzayB0YXNrLCBTY3JpcHRDb250ZXh0IGNvbnRleHQpCiAgICB7CiAgICAgICAgdmFyIGh0dHBUYXNrID0gdGFzayBhcyBIdHRwVGFzazsKICAgICAgICBpZiAoaHR0cFRhc2sgPT0gbnVsbCkKICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRPcGVyYXRpb25FeGNlcHRpb24oIlRhc2sgbXVzdCBiZSBhbiBIdHRwVGFzayIpOwoKICAgICAgICB2YXIgZGF0YSA9IGNvbnRleHQuSW5zdGFuY2U/LkRhdGE7CiAgICAgICAgdmFyIG1hdHJpeFVzZXJuYW1lID0gR2V0U3RyaW5nKGRhdGEsICJtYXRyaXhVc2VybmFtZSIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKG1hdHJpeFVzZXJuYW1lKSkKICAgICAgICAgICAgcmV0dXJuIG5ldyBTY3JpcHRSZXNwb25zZSgpOwoKICAgICAgICB2YXIgc2VjcmV0TmFtZSA9IEdldENvbmZpZ1ZhbHVlKCJEQVBSX1NFQ1JFVF9TVE9SRV9OQU1FIik7CiAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPcldoaXRlU3BhY2Uoc2VjcmV0TmFtZSkpCiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJEQVBSX1NFQ1JFVF9TVE9SRV9OQU1FIGNvbmZpZ3VyYXRpb24gaXMgcmVxdWlyZWQiKTsKCiAgICAgICAgdmFyIG1hdHJpeEJhc2VVcmwgPSBhd2FpdCBHZXRTZWNyZXRBc3luYyhzZWNyZXROYW1lLCAid29ya2Zsb3ctc2VjcmV0IiwgIk1hdHJpeEJhc2VVcmwiKTsKICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yV2hpdGVTcGFjZShtYXRyaXhCYXNlVXJsKSkKICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRPcGVyYXRpb25FeGNlcHRpb24oIk1hdHJpeEJhc2VVcmwgc2VjcmV0IGlzIHJlcXVpcmVkIik7CgogICAgICAgIHZhciBzeW5hcHNlUGFzc3dvcmQgPSBhd2FpdCBHZXRTZWNyZXRBc3luYyhzZWNyZXROYW1lLCAid29ya2Zsb3ctc2VjcmV0IiwgIlN5bmFwc2VQYXNzd29yZCIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHN5bmFwc2VQYXNzd29yZCkpCiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJTeW5hcHNlUGFzc3dvcmQgc2VjcmV0IGlzIHJlcXVpcmVkIik7CgogICAgICAgIHZhciBmdWxsVXJsID0gbWF0cml4QmFzZVVybC5UcmltRW5kKCcvJykgKyAiL19tYXRyaXgvY2xpZW50L3YzL3JlZ2lzdGVyIjsKICAgICAgICBodHRwVGFzay5TZXRVcmwoZnVsbFVybCk7CgogICAgICAgIGh0dHBUYXNrLlNldEhlYWRlcnMobmV3IERpY3Rpb25hcnk8c3RyaW5nLCBzdHJpbmc+CiAgICAgICAgewogICAgICAgICAgICBbIkNvbnRlbnQtVHlwZSJdID0gImFwcGxpY2F0aW9uL2pzb24iLAogICAgICAgICAgICBbIkFjY2VwdCJdID0gImFwcGxpY2F0aW9uL2pzb24iCiAgICAgICAgfSk7CgogICAgICAgIGh0dHBUYXNrLlNldEJvZHkobmV3CiAgICAgICAgewogICAgICAgICAgICBhdXRoID0gbmV3IHsgdHlwZSA9ICJtLmxvZ2luLmR1bW15IiB9LAogICAgICAgICAgICB1c2VybmFtZSA9IG1hdHJpeFVzZXJuYW1lLAogICAgICAgICAgICBwYXNzd29yZCA9IHN5bmFwc2VQYXNzd29yZAogICAgICAgIH0pOwogICAgICAgIHJldHVybiBuZXcgU2NyaXB0UmVzcG9uc2UoKTsKICAgIH0KCiAgICBwdWJsaWMgVGFzazxTY3JpcHRSZXNwb25zZT4gT3V0cHV0SGFuZGxlcihTY3JpcHRDb250ZXh0IGNvbnRleHQpCiAgICB7CiAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UoKSk7CiAgICB9CgogICAgcHJpdmF0ZSBzdHJpbmcgR2V0U3RyaW5nKGR5bmFtaWMgb2JqLCBzdHJpbmcgbmFtZSkKICAgIHsKICAgICAgICBpZiAob2JqID09IG51bGwpIHJldHVybiBudWxsOwogICAgICAgIHRyeQogICAgICAgIHsKICAgICAgICAgICAgaWYgKEhhc1Byb3BlcnR5KG9iaiwgbmFtZSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciB2ID0gR2V0UHJvcGVydHlWYWx1ZShvYmosIG5hbWUpOwogICAgICAgICAgICAgICAgcmV0dXJuIHY/LlRvU3RyaW5nKCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY2F0Y2ggeyB9CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICB9Cn0K"
|
|
92
|
+
},
|
|
93
|
+
"errorBoundary": {
|
|
94
|
+
"onError": [
|
|
95
|
+
{
|
|
96
|
+
"action": 5,
|
|
97
|
+
"errorCodes": [
|
|
98
|
+
"*"
|
|
99
|
+
],
|
|
100
|
+
"priority": 1
|
|
101
|
+
}
|
|
102
|
+
]
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
]
|
|
106
|
+
}
|
|
107
|
+
]
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
"key": "completed",
|
|
111
|
+
"stateType": 3,
|
|
112
|
+
"versionStrategy": "Minor",
|
|
113
|
+
"labels": [
|
|
114
|
+
{
|
|
115
|
+
"label": "Completed",
|
|
116
|
+
"language": "en-US"
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
"label": "Tamamlandı",
|
|
120
|
+
"language": "tr-TR"
|
|
121
|
+
}
|
|
122
|
+
]
|
|
123
|
+
}
|
|
124
|
+
],
|
|
125
|
+
"subFlowType": "S",
|
|
126
|
+
"timeout": null
|
|
127
|
+
}
|
|
128
|
+
}
|
|
@@ -399,23 +399,12 @@
|
|
|
399
399
|
"task": {
|
|
400
400
|
"domain": "morph-touch",
|
|
401
401
|
"flow": "sys-tasks",
|
|
402
|
-
"key": "register-
|
|
402
|
+
"key": "start-register-matrix-user",
|
|
403
403
|
"version": "1.0.0"
|
|
404
404
|
},
|
|
405
405
|
"mapping": {
|
|
406
406
|
"location": "./src/RegisterForRandevuStartChatMapping.csx",
|
|
407
|
-
"code": "
|
|
408
|
-
},
|
|
409
|
-
"errorBoundary": {
|
|
410
|
-
"onError": [
|
|
411
|
-
{
|
|
412
|
-
"action": 3,
|
|
413
|
-
"errorCodes": [
|
|
414
|
-
"*"
|
|
415
|
-
],
|
|
416
|
-
"priority": 1
|
|
417
|
-
}
|
|
418
|
-
]
|
|
407
|
+
"code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGhyZWFkaW5nLlRhc2tzOwp1c2luZyBCQlQuV29ya2Zsb3cuU2NyaXB0aW5nOwp1c2luZyBCQlQuV29ya2Zsb3cuRGVmaW5pdGlvbnM7CgovLy8gPHN1bW1hcnk+Ci8vLyBNYXBwaW5nIGZvciBzdGFydC1yZWdpc3Rlci1tYXRyaXgtdXNlciBTdGFydFRhc2sgKFR5cGUgMTEpIGluIHJlemVydmF0aW9uLXN0YXJ0IGZsb3cuCi8vLyBTdGFydHMgcmVnaXN0ZXItbWF0cml4LXVzZXIgZmxvdyB3aXRoIG1hdHJpeFVzZXJuYW1lIGJhc2VkIG9uIHBhcnRpY2lwYW50VHlwZSAoYWR2aXNvci9pbnZpdGVkL2N1c3RvbWVyKS4KLy8vIDwvc3VtbWFyeT4KcHVibGljIGNsYXNzIFJlZ2lzdGVyRm9yUmFuZGV2dVN0YXJ0Q2hhdE1hcHBpbmcgOiBTY3JpcHRCYXNlLCBJTWFwcGluZwp7CiAgICBwdWJsaWMgVGFzazxTY3JpcHRSZXNwb25zZT4gSW5wdXRIYW5kbGVyKFdvcmtmbG93VGFzayB0YXNrLCBTY3JpcHRDb250ZXh0IGNvbnRleHQpCiAgICB7CiAgICAgICAgdmFyIHN0YXJ0VGFzayA9IHRhc2sgYXMgU3RhcnRUYXNrOwogICAgICAgIGlmIChzdGFydFRhc2sgPT0gbnVsbCkKICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRPcGVyYXRpb25FeGNlcHRpb24oIlRhc2sgbXVzdCBiZSBhIFN0YXJ0VGFzayIpOwoKICAgICAgICB2YXIgZGF0YSA9IGNvbnRleHQuSW5zdGFuY2U/LkRhdGE7CiAgICAgICAgdmFyIHBhcnRpY2lwYW50VHlwZSA9IEdldFN0cmluZyhkYXRhLCAicGFydGljaXBhbnRUeXBlIik7CiAgICAgICAgdmFyIHVzZXIgPSBHZXRTdHJpbmcoZGF0YSwgInVzZXIiKTsKICAgICAgICB2YXIgYWR2aXNvciA9IEdldFN0cmluZyhkYXRhLCAiYWR2aXNvciIpOwoKICAgICAgICB2YXIgbWF0cml4VXNlcm5hbWUgPSBwYXJ0aWNpcGFudFR5cGUgPT0gImFkdmlzb3IiID8gYWR2aXNvcgogICAgICAgICAgICA6IHBhcnRpY2lwYW50VHlwZSA9PSAiaW52aXRlZCIgPyBHZXRTdHJpbmcoZGF0YSwgImludml0ZWRVc2VySWQiKQogICAgICAgICAgICA6ICJ1IiArIHVzZXI7CiAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPcldoaXRlU3BhY2UobWF0cml4VXNlcm5hbWUpKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiQ2Fubm90IGRldGVybWluZSByZWdpc3RlciB1c2VyOiBwYXJ0aWNpcGFudFR5cGUsIHVzZXIsIGFkdmlzb3IsIG9yIGludml0ZWRVc2VySWQgbWlzc2luZyIpOwoKICAgICAgICBzdGFydFRhc2suU2V0RG9tYWluKCJtb3JwaC10b3VjaCIpOwogICAgICAgIHN0YXJ0VGFzay5TZXRGbG93KCJyZWdpc3Rlci1tYXRyaXgtdXNlciIpOwogICAgICAgIHN0YXJ0VGFzay5TZXRTeW5jKHRydWUpOwogICAgICAgIHN0YXJ0VGFzay5TZXRCb2R5KG5ldyB7IG1hdHJpeFVzZXJuYW1lIH0pOwoKICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KG5ldyBTY3JpcHRSZXNwb25zZSgpKTsKICAgIH0KCiAgICBwdWJsaWMgVGFzazxTY3JpcHRSZXNwb25zZT4gT3V0cHV0SGFuZGxlcihTY3JpcHRDb250ZXh0IGNvbnRleHQpCiAgICB7CiAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UoKSk7CiAgICB9CgogICAgcHJpdmF0ZSBzdHJpbmcgR2V0U3RyaW5nKGR5bmFtaWMgb2JqLCBzdHJpbmcgbmFtZSkKICAgIHsKICAgICAgICBpZiAob2JqID09IG51bGwpIHJldHVybiBudWxsOwogICAgICAgIHRyeQogICAgICAgIHsKICAgICAgICAgICAgaWYgKEhhc1Byb3BlcnR5KG9iaiwgbmFtZSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciB2ID0gR2V0UHJvcGVydHlWYWx1ZShvYmosIG5hbWUpOwogICAgICAgICAgICAgICAgcmV0dXJuIHY/LlRvU3RyaW5nKCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY2F0Y2ggeyB9CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICB9Cn0K"
|
|
419
408
|
}
|
|
420
409
|
},
|
|
421
410
|
{
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"extensions": [],
|
|
25
25
|
"sharedTransitions": [
|
|
26
26
|
{
|
|
27
|
-
"key": "cancel",
|
|
27
|
+
"key": "cancel-transfer",
|
|
28
28
|
"target": "cancelled",
|
|
29
29
|
"triggerType": 0,
|
|
30
30
|
"versionStrategy": "Minor",
|
|
@@ -472,23 +472,12 @@
|
|
|
472
472
|
"task": {
|
|
473
473
|
"domain": "morph-touch",
|
|
474
474
|
"flow": "sys-tasks",
|
|
475
|
-
"key": "register-
|
|
475
|
+
"key": "start-register-matrix-user",
|
|
476
476
|
"version": "1.0.0"
|
|
477
477
|
},
|
|
478
478
|
"mapping": {
|
|
479
479
|
"location": "./src/RegisterForTransferChatMapping.csx",
|
|
480
|
-
"code": "
|
|
481
|
-
},
|
|
482
|
-
"errorBoundary": {
|
|
483
|
-
"onError": [
|
|
484
|
-
{
|
|
485
|
-
"action": 3,
|
|
486
|
-
"errorCodes": [
|
|
487
|
-
"*"
|
|
488
|
-
],
|
|
489
|
-
"priority": 1
|
|
490
|
-
}
|
|
491
|
-
]
|
|
480
|
+
"code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLkxpbnE7CnVzaW5nIFN5c3RlbS5UaHJlYWRpbmcuVGFza3M7CnVzaW5nIEJCVC5Xb3JrZmxvdy5TY3JpcHRpbmc7CnVzaW5nIEJCVC5Xb3JrZmxvdy5EZWZpbml0aW9uczsKCi8vLyA8c3VtbWFyeT4KLy8vIE1hcHBpbmcgZm9yIHN0YXJ0LXJlZ2lzdGVyLW1hdHJpeC11c2VyIFN0YXJ0VGFzayAoVHlwZSAxMSkgaW4gcmV6ZXJ2YXRpb24tdHJhbnNmZXIgZmxvdy4KLy8vIFN0YXJ0cyByZWdpc3Rlci1tYXRyaXgtdXNlciBmbG93IHdpdGggbWF0cml4VXNlcm5hbWUgbG9va2VkIHVwIGZyb20gcGVybWFuZW50Q2hhdFJvb21zIGJ5IGNoYXRSb29tS2V5LgovLy8gPC9zdW1tYXJ5PgpwdWJsaWMgY2xhc3MgUmVnaXN0ZXJGb3JUcmFuc2ZlckNoYXRNYXBwaW5nIDogU2NyaXB0QmFzZSwgSU1hcHBpbmcKewogICAgcHVibGljIFRhc2s8U2NyaXB0UmVzcG9uc2U+IElucHV0SGFuZGxlcihXb3JrZmxvd1Rhc2sgdGFzaywgU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHZhciBzdGFydFRhc2sgPSB0YXNrIGFzIFN0YXJ0VGFzazsKICAgICAgICBpZiAoc3RhcnRUYXNrID09IG51bGwpCiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJUYXNrIG11c3QgYmUgYSBTdGFydFRhc2siKTsKCiAgICAgICAgdmFyIGRhdGEgPSBjb250ZXh0Lkluc3RhbmNlPy5EYXRhOwogICAgICAgIGlmIChkYXRhID09IG51bGwpCiAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlKCkpOwoKICAgICAgICBzdHJpbmcgdXNlciA9IG51bGw7CiAgICAgICAgdmFyIHBlcm1hbmVudFJvb21QbGFuID0gZGF0YS5wZXJtYW5lbnRSb29tUGxhbjsKICAgICAgICBpZiAocGVybWFuZW50Um9vbVBsYW4gIT0gbnVsbCkKICAgICAgICB7CiAgICAgICAgICAgIGludCBwcm9jZXNzZWRJbmRleCA9IDA7CiAgICAgICAgICAgIGlmIChIYXNQcm9wZXJ0eShkYXRhLCAicGVybWFuZW50UHJvY2Vzc2VkSW5kZXgiKSkKICAgICAgICAgICAgICAgIGludC5UcnlQYXJzZShkYXRhLnBlcm1hbmVudFByb2Nlc3NlZEluZGV4Py5Ub1N0cmluZygpID8/ICIwIiwgb3V0IHByb2Nlc3NlZEluZGV4KTsKCiAgICAgICAgICAgIHZhciBpdGVtcyA9IHBlcm1hbmVudFJvb21QbGFuIGFzIElFbnVtZXJhYmxlPG9iamVjdD47CiAgICAgICAgICAgIGlmIChpdGVtcyAhPSBudWxsKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICB2YXIgaXRlbXNMaXN0ID0gaXRlbXMuVG9MaXN0KCk7CiAgICAgICAgICAgICAgICBpZiAocHJvY2Vzc2VkSW5kZXggPCBpdGVtc0xpc3QuQ291bnQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgZHluYW1pYyBjdXJyZW50SXRlbSA9IGl0ZW1zTGlzdFtwcm9jZXNzZWRJbmRleF07CiAgICAgICAgICAgICAgICAgICAgdmFyIGNoYXRSb29tS2V5ID0gY3VycmVudEl0ZW0/LmNoYXRSb29tS2V5Py5Ub1N0cmluZygpOwogICAgICAgICAgICAgICAgICAgIGlmICghc3RyaW5nLklzTnVsbE9yRW1wdHkoY2hhdFJvb21LZXkpKQogICAgICAgICAgICAgICAgICAgICAgICB1c2VyID0gTG9va3VwVXNlcihkYXRhLCBjaGF0Um9vbUtleSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHVzZXIpKQogICAgICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KG5ldyBTY3JpcHRSZXNwb25zZSgpKTsKCiAgICAgICAgc3RhcnRUYXNrLlNldERvbWFpbigibW9ycGgtdG91Y2giKTsKICAgICAgICBzdGFydFRhc2suU2V0RmxvdygicmVnaXN0ZXItbWF0cml4LXVzZXIiKTsKICAgICAgICBzdGFydFRhc2suU2V0U3luYyh0cnVlKTsKICAgICAgICBzdGFydFRhc2suU2V0Qm9keShuZXcgeyBtYXRyaXhVc2VybmFtZSA9IHVzZXIgfSk7CgogICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlKCkpOwogICAgfQoKICAgIHB1YmxpYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBPdXRwdXRIYW5kbGVyKFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KG5ldyBTY3JpcHRSZXNwb25zZSgpKTsKICAgIH0KCiAgICBwcml2YXRlIHN0cmluZyBMb29rdXBVc2VyKGR5bmFtaWMgZGF0YSwgc3RyaW5nIGNoYXRSb29tS2V5KQogICAgewogICAgICAgIGlmICghSGFzUHJvcGVydHkoZGF0YSwgInBlcm1hbmVudENoYXRSb29tcyIpIHx8IGRhdGEucGVybWFuZW50Q2hhdFJvb21zID09IG51bGwpCiAgICAgICAgICAgIHJldHVybiBudWxsOwoKICAgICAgICBmb3JlYWNoICh2YXIgcm9vbSBpbiBkYXRhLnBlcm1hbmVudENoYXRSb29tcykKICAgICAgICB7CiAgICAgICAgICAgIHZhciBrZXkgPSBHZXRTdHJpbmcocm9vbSwgImNoYXRSb29tS2V5Iik7CiAgICAgICAgICAgIGlmIChzdHJpbmcuRXF1YWxzKGtleSwgY2hhdFJvb21LZXksIFN0cmluZ0NvbXBhcmlzb24uT3JkaW5hbElnbm9yZUNhc2UpKQogICAgICAgICAgICAgICAgcmV0dXJuIEdldFN0cmluZyhyb29tLCAidXNlciIpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbnVsbDsKICAgIH0KCiAgICBwcml2YXRlIHN0cmluZyBHZXRTdHJpbmcoZHluYW1pYyBvYmosIHN0cmluZyBuYW1lKQogICAgewogICAgICAgIGlmIChvYmogPT0gbnVsbCkgcmV0dXJuIG51bGw7CiAgICAgICAgdHJ5CiAgICAgICAgewogICAgICAgICAgICBpZiAoSGFzUHJvcGVydHkob2JqLCBuYW1lKSkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgdmFyIHYgPSBHZXRQcm9wZXJ0eVZhbHVlKG9iaiwgbmFtZSk7CiAgICAgICAgICAgICAgICByZXR1cm4gdj8uVG9TdHJpbmcoKT8uVHJpbSgpOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNhdGNoIHsgfQogICAgICAgIHJldHVybiBudWxsOwogICAgfQp9Cg=="
|
|
492
481
|
}
|
|
493
482
|
},
|
|
494
483
|
{
|
|
@@ -460,7 +460,7 @@
|
|
|
460
460
|
],
|
|
461
461
|
"rule": {
|
|
462
462
|
"location": "./src/AlwaysTrueRule.csx",
|
|
463
|
-
"code": "
|
|
463
|
+
"code": "dXNpbmcgU3lzdGVtLlRocmVhZGluZy5UYXNrczsKdXNpbmcgQkJULldvcmtmbG93LlNjcmlwdGluZzsKCnB1YmxpYyBjbGFzcyBBbHdheXNUcnVlUnVsZSA6IFNjcmlwdEJhc2UsIElDb25kaXRpb25NYXBwaW5nCnsKICAgIHB1YmxpYyBUYXNrPGJvb2w+IEhhbmRsZXIoU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQodHJ1ZSk7CiAgICB9Cn0K"
|
|
464
464
|
}
|
|
465
465
|
}
|
|
466
466
|
]
|
|
@@ -1,9 +1,6 @@
|
|
|
1
1
|
using System.Threading.Tasks;
|
|
2
2
|
using BBT.Workflow.Scripting;
|
|
3
3
|
|
|
4
|
-
/// <summary>
|
|
5
|
-
/// Rule that always returns true. Used for auto-transitions that should always fire.
|
|
6
|
-
/// </summary>
|
|
7
4
|
public class AlwaysTrueRule : ScriptBase, IConditionMapping
|
|
8
5
|
{
|
|
9
6
|
public Task<bool> Handler(ScriptContext context)
|
|
@@ -106,13 +106,10 @@ public class CheckExistingPermanentChatRoomMapping : ScriptBase, IMapping
|
|
|
106
106
|
if (responseData == null) return null;
|
|
107
107
|
try
|
|
108
108
|
{
|
|
109
|
-
//
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
return responseData.data.rooms;
|
|
114
|
-
if (HasProperty(responseData, "Data") && responseData.Data != null && HasProperty(responseData.Data, "rooms"))
|
|
115
|
-
return responseData.Data.rooms;
|
|
109
|
+
// responseData.getChatRooms.rooms
|
|
110
|
+
var directChatRooms = GetValue(responseData, "getChatRooms");
|
|
111
|
+
if (directChatRooms != null && HasProperty(directChatRooms, "rooms") && directChatRooms.rooms != null)
|
|
112
|
+
return directChatRooms.rooms;
|
|
116
113
|
|
|
117
114
|
// Wrapped: checkExistingData.items[].getChatRooms.rooms (runtime task result shape)
|
|
118
115
|
var checkExisting = GetValue(responseData, "checkExistingData") ?? GetValue(responseData, "data");
|
|
@@ -1,55 +1,33 @@
|
|
|
1
1
|
using System;
|
|
2
|
-
using System.Collections.Generic;
|
|
3
2
|
using System.Threading.Tasks;
|
|
4
3
|
using BBT.Workflow.Scripting;
|
|
5
4
|
using BBT.Workflow.Definitions;
|
|
6
5
|
|
|
7
6
|
/// <summary>
|
|
8
|
-
/// Mapping for register-
|
|
9
|
-
///
|
|
10
|
-
/// ErrorBoundary on the task ignores M_USER_IN_USE and other errors so login proceeds.
|
|
7
|
+
/// Mapping for start-register-matrix-user StartTask (Type 11) in chat-room workflow.
|
|
8
|
+
/// Starts register-matrix-user flow with matrixUsername = "u" + data.user.
|
|
11
9
|
/// </summary>
|
|
12
10
|
public class RegisterForChatRoomMapping : ScriptBase, IMapping
|
|
13
11
|
{
|
|
14
|
-
public
|
|
12
|
+
public Task<ScriptResponse> InputHandler(WorkflowTask task, ScriptContext context)
|
|
15
13
|
{
|
|
16
|
-
var
|
|
17
|
-
if (
|
|
18
|
-
throw new InvalidOperationException("Task must be
|
|
19
|
-
|
|
20
|
-
var secretName = GetConfigValue("DAPR_SECRET_STORE_NAME");
|
|
21
|
-
if (string.IsNullOrWhiteSpace(secretName))
|
|
22
|
-
throw new InvalidOperationException("DAPR_SECRET_STORE_NAME configuration is required");
|
|
23
|
-
|
|
24
|
-
var matrixBaseUrl = await GetSecretAsync(secretName, "workflow-secret", "MatrixBaseUrl");
|
|
25
|
-
if (string.IsNullOrWhiteSpace(matrixBaseUrl))
|
|
26
|
-
throw new InvalidOperationException("MatrixBaseUrl secret is required");
|
|
27
|
-
|
|
28
|
-
var synapsePassword = await GetSecretAsync(secretName, "workflow-secret", "SynapsePassword");
|
|
29
|
-
if (string.IsNullOrWhiteSpace(synapsePassword))
|
|
30
|
-
throw new InvalidOperationException("SynapsePassword secret is required");
|
|
14
|
+
var startTask = task as StartTask;
|
|
15
|
+
if (startTask == null)
|
|
16
|
+
throw new InvalidOperationException("Task must be a StartTask");
|
|
31
17
|
|
|
32
18
|
var data = context.Instance?.Data;
|
|
33
|
-
var
|
|
34
|
-
if (string.IsNullOrWhiteSpace(
|
|
19
|
+
var user = GetString(data, "user");
|
|
20
|
+
if (string.IsNullOrWhiteSpace(user))
|
|
35
21
|
throw new InvalidOperationException("Cannot determine register user: data.user is missing");
|
|
36
22
|
|
|
37
|
-
var
|
|
38
|
-
httpTask.SetUrl(fullUrl);
|
|
23
|
+
var matrixUsername = "u" + user;
|
|
39
24
|
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
});
|
|
25
|
+
startTask.SetDomain("morph-touch");
|
|
26
|
+
startTask.SetFlow("register-matrix-user");
|
|
27
|
+
startTask.SetSync(true);
|
|
28
|
+
startTask.SetBody(new { matrixUsername });
|
|
45
29
|
|
|
46
|
-
|
|
47
|
-
{
|
|
48
|
-
auth = new { type = "m.login.dummy" },
|
|
49
|
-
username = "u" + registerUsername,
|
|
50
|
-
password = synapsePassword
|
|
51
|
-
});
|
|
52
|
-
return new ScriptResponse();
|
|
30
|
+
return Task.FromResult(new ScriptResponse());
|
|
53
31
|
}
|
|
54
32
|
|
|
55
33
|
public Task<ScriptResponse> OutputHandler(ScriptContext context)
|
|
@@ -1,21 +1,19 @@
|
|
|
1
1
|
using System;
|
|
2
|
-
using System.Collections.Generic;
|
|
3
2
|
using System.Threading.Tasks;
|
|
4
3
|
using BBT.Workflow.Scripting;
|
|
5
4
|
using BBT.Workflow.Definitions;
|
|
6
5
|
|
|
7
6
|
/// <summary>
|
|
8
|
-
/// Mapping for register-
|
|
9
|
-
///
|
|
10
|
-
/// ErrorBoundary on the task ignores M_USER_IN_USE and other errors so login proceeds.
|
|
7
|
+
/// Mapping for start-register-matrix-user StartTask (Type 11) before join-user-to-room.
|
|
8
|
+
/// Starts register-matrix-user flow with matrixUsername from pendingJoinUserId / newAdvisorId / advisorId.
|
|
11
9
|
/// </summary>
|
|
12
10
|
public class RegisterForJoinUserToRoomMapping : ScriptBase, IMapping
|
|
13
11
|
{
|
|
14
|
-
public
|
|
12
|
+
public Task<ScriptResponse> InputHandler(WorkflowTask task, ScriptContext context)
|
|
15
13
|
{
|
|
16
|
-
var
|
|
17
|
-
if (
|
|
18
|
-
throw new InvalidOperationException("Task must be
|
|
14
|
+
var startTask = task as StartTask;
|
|
15
|
+
if (startTask == null)
|
|
16
|
+
throw new InvalidOperationException("Task must be a StartTask");
|
|
19
17
|
|
|
20
18
|
var data = context.Instance?.Data;
|
|
21
19
|
|
|
@@ -26,43 +24,21 @@ public class RegisterForJoinUserToRoomMapping : ScriptBase, IMapping
|
|
|
26
24
|
joinUser = GetString(data, "advisorId");
|
|
27
25
|
|
|
28
26
|
if (string.IsNullOrWhiteSpace(joinUser))
|
|
29
|
-
return new ScriptResponse();
|
|
27
|
+
return Task.FromResult(new ScriptResponse());
|
|
30
28
|
|
|
31
|
-
var
|
|
32
|
-
if (
|
|
29
|
+
var matrixUsername = joinUser.Trim();
|
|
30
|
+
if (matrixUsername.StartsWith("@"))
|
|
33
31
|
{
|
|
34
|
-
var colonIdx =
|
|
35
|
-
|
|
32
|
+
var colonIdx = matrixUsername.IndexOf(':');
|
|
33
|
+
matrixUsername = colonIdx > 0 ? matrixUsername.Substring(1, colonIdx - 1) : matrixUsername.Substring(1);
|
|
36
34
|
}
|
|
37
35
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
36
|
+
startTask.SetDomain("morph-touch");
|
|
37
|
+
startTask.SetFlow("register-matrix-user");
|
|
38
|
+
startTask.SetSync(true);
|
|
39
|
+
startTask.SetBody(new { matrixUsername });
|
|
41
40
|
|
|
42
|
-
|
|
43
|
-
if (string.IsNullOrWhiteSpace(matrixBaseUrl))
|
|
44
|
-
throw new InvalidOperationException("MatrixBaseUrl secret is required");
|
|
45
|
-
|
|
46
|
-
var synapsePassword = await GetSecretAsync(secretName, "workflow-secret", "SynapsePassword");
|
|
47
|
-
if (string.IsNullOrWhiteSpace(synapsePassword))
|
|
48
|
-
throw new InvalidOperationException("SynapsePassword secret is required");
|
|
49
|
-
|
|
50
|
-
var fullUrl = matrixBaseUrl.TrimEnd('/') + "/_matrix/client/v3/register";
|
|
51
|
-
httpTask.SetUrl(fullUrl);
|
|
52
|
-
|
|
53
|
-
httpTask.SetHeaders(new Dictionary<string, string>
|
|
54
|
-
{
|
|
55
|
-
["Content-Type"] = "application/json",
|
|
56
|
-
["Accept"] = "application/json"
|
|
57
|
-
});
|
|
58
|
-
|
|
59
|
-
httpTask.SetBody(new
|
|
60
|
-
{
|
|
61
|
-
auth = new { type = "m.login.dummy" },
|
|
62
|
-
username = registerUsername,
|
|
63
|
-
password = synapsePassword
|
|
64
|
-
});
|
|
65
|
-
return new ScriptResponse();
|
|
41
|
+
return Task.FromResult(new ScriptResponse());
|
|
66
42
|
}
|
|
67
43
|
|
|
68
44
|
public Task<ScriptResponse> OutputHandler(ScriptContext context)
|
|
@@ -1,61 +1,37 @@
|
|
|
1
1
|
using System;
|
|
2
|
-
using System.Collections.Generic;
|
|
3
2
|
using System.Threading.Tasks;
|
|
4
3
|
using BBT.Workflow.Scripting;
|
|
5
4
|
using BBT.Workflow.Definitions;
|
|
6
5
|
|
|
7
6
|
/// <summary>
|
|
8
|
-
/// Mapping for register-
|
|
9
|
-
///
|
|
10
|
-
/// ErrorBoundary on the task ignores M_USER_IN_USE and other errors so login proceeds.
|
|
7
|
+
/// Mapping for start-register-matrix-user StartTask (Type 11) in rezervation-start flow.
|
|
8
|
+
/// Starts register-matrix-user flow with matrixUsername based on participantType (advisor/invited/customer).
|
|
11
9
|
/// </summary>
|
|
12
10
|
public class RegisterForRandevuStartChatMapping : ScriptBase, IMapping
|
|
13
11
|
{
|
|
14
|
-
public
|
|
12
|
+
public Task<ScriptResponse> InputHandler(WorkflowTask task, ScriptContext context)
|
|
15
13
|
{
|
|
16
|
-
var
|
|
17
|
-
if (
|
|
18
|
-
throw new InvalidOperationException("Task must be
|
|
19
|
-
|
|
20
|
-
var secretName = GetConfigValue("DAPR_SECRET_STORE_NAME");
|
|
21
|
-
if (string.IsNullOrWhiteSpace(secretName))
|
|
22
|
-
throw new InvalidOperationException("DAPR_SECRET_STORE_NAME configuration is required");
|
|
23
|
-
|
|
24
|
-
var matrixBaseUrl = await GetSecretAsync(secretName, "workflow-secret", "MatrixBaseUrl");
|
|
25
|
-
if (string.IsNullOrWhiteSpace(matrixBaseUrl))
|
|
26
|
-
throw new InvalidOperationException("MatrixBaseUrl secret is required");
|
|
27
|
-
|
|
28
|
-
var synapsePassword = await GetSecretAsync(secretName, "workflow-secret", "SynapsePassword");
|
|
29
|
-
if (string.IsNullOrWhiteSpace(synapsePassword))
|
|
30
|
-
throw new InvalidOperationException("SynapsePassword secret is required");
|
|
14
|
+
var startTask = task as StartTask;
|
|
15
|
+
if (startTask == null)
|
|
16
|
+
throw new InvalidOperationException("Task must be a StartTask");
|
|
31
17
|
|
|
32
18
|
var data = context.Instance?.Data;
|
|
33
19
|
var participantType = GetString(data, "participantType");
|
|
34
20
|
var user = GetString(data, "user");
|
|
35
21
|
var advisor = GetString(data, "advisor");
|
|
36
22
|
|
|
37
|
-
var
|
|
23
|
+
var matrixUsername = participantType == "advisor" ? advisor
|
|
38
24
|
: participantType == "invited" ? GetString(data, "invitedUserId")
|
|
39
|
-
: "u"+user;
|
|
40
|
-
if (string.IsNullOrWhiteSpace(
|
|
25
|
+
: "u" + user;
|
|
26
|
+
if (string.IsNullOrWhiteSpace(matrixUsername))
|
|
41
27
|
throw new InvalidOperationException("Cannot determine register user: participantType, user, advisor, or invitedUserId missing");
|
|
42
28
|
|
|
43
|
-
|
|
44
|
-
|
|
29
|
+
startTask.SetDomain("morph-touch");
|
|
30
|
+
startTask.SetFlow("register-matrix-user");
|
|
31
|
+
startTask.SetSync(true);
|
|
32
|
+
startTask.SetBody(new { matrixUsername });
|
|
45
33
|
|
|
46
|
-
|
|
47
|
-
{
|
|
48
|
-
["Content-Type"] = "application/json",
|
|
49
|
-
["Accept"] = "application/json"
|
|
50
|
-
});
|
|
51
|
-
|
|
52
|
-
httpTask.SetBody(new
|
|
53
|
-
{
|
|
54
|
-
auth = new { type = "m.login.dummy" },
|
|
55
|
-
username = registerUsername,
|
|
56
|
-
password = synapsePassword
|
|
57
|
-
});
|
|
58
|
-
return new ScriptResponse();
|
|
34
|
+
return Task.FromResult(new ScriptResponse());
|
|
59
35
|
}
|
|
60
36
|
|
|
61
37
|
public Task<ScriptResponse> OutputHandler(ScriptContext context)
|
|
@@ -6,21 +6,20 @@ using BBT.Workflow.Scripting;
|
|
|
6
6
|
using BBT.Workflow.Definitions;
|
|
7
7
|
|
|
8
8
|
/// <summary>
|
|
9
|
-
/// Mapping for register-
|
|
10
|
-
///
|
|
11
|
-
/// ErrorBoundary on the task ignores M_USER_IN_USE and other errors so login proceeds.
|
|
9
|
+
/// Mapping for start-register-matrix-user StartTask (Type 11) in rezervation-transfer flow.
|
|
10
|
+
/// Starts register-matrix-user flow with matrixUsername looked up from permanentChatRooms by chatRoomKey.
|
|
12
11
|
/// </summary>
|
|
13
12
|
public class RegisterForTransferChatMapping : ScriptBase, IMapping
|
|
14
13
|
{
|
|
15
|
-
public
|
|
14
|
+
public Task<ScriptResponse> InputHandler(WorkflowTask task, ScriptContext context)
|
|
16
15
|
{
|
|
17
|
-
var
|
|
18
|
-
if (
|
|
19
|
-
throw new InvalidOperationException("Task must be
|
|
16
|
+
var startTask = task as StartTask;
|
|
17
|
+
if (startTask == null)
|
|
18
|
+
throw new InvalidOperationException("Task must be a StartTask");
|
|
20
19
|
|
|
21
20
|
var data = context.Instance?.Data;
|
|
22
21
|
if (data == null)
|
|
23
|
-
return new ScriptResponse();
|
|
22
|
+
return Task.FromResult(new ScriptResponse());
|
|
24
23
|
|
|
25
24
|
string user = null;
|
|
26
25
|
var permanentRoomPlan = data.permanentRoomPlan;
|
|
@@ -45,36 +44,14 @@ public class RegisterForTransferChatMapping : ScriptBase, IMapping
|
|
|
45
44
|
}
|
|
46
45
|
|
|
47
46
|
if (string.IsNullOrWhiteSpace(user))
|
|
48
|
-
return new ScriptResponse();
|
|
47
|
+
return Task.FromResult(new ScriptResponse());
|
|
49
48
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
49
|
+
startTask.SetDomain("morph-touch");
|
|
50
|
+
startTask.SetFlow("register-matrix-user");
|
|
51
|
+
startTask.SetSync(true);
|
|
52
|
+
startTask.SetBody(new { matrixUsername = user });
|
|
53
53
|
|
|
54
|
-
|
|
55
|
-
if (string.IsNullOrWhiteSpace(matrixBaseUrl))
|
|
56
|
-
throw new InvalidOperationException("MatrixBaseUrl secret is required");
|
|
57
|
-
|
|
58
|
-
var synapsePassword = await GetSecretAsync(secretName, "workflow-secret", "SynapsePassword");
|
|
59
|
-
if (string.IsNullOrWhiteSpace(synapsePassword))
|
|
60
|
-
throw new InvalidOperationException("SynapsePassword secret is required");
|
|
61
|
-
|
|
62
|
-
var fullUrl = matrixBaseUrl.TrimEnd('/') + "/_matrix/client/v3/register";
|
|
63
|
-
httpTask.SetUrl(fullUrl);
|
|
64
|
-
|
|
65
|
-
httpTask.SetHeaders(new Dictionary<string, string>
|
|
66
|
-
{
|
|
67
|
-
["Content-Type"] = "application/json",
|
|
68
|
-
["Accept"] = "application/json"
|
|
69
|
-
});
|
|
70
|
-
|
|
71
|
-
httpTask.SetBody(new
|
|
72
|
-
{
|
|
73
|
-
auth = new { type = "m.login.dummy" },
|
|
74
|
-
username = user,
|
|
75
|
-
password = synapsePassword
|
|
76
|
-
});
|
|
77
|
-
return new ScriptResponse();
|
|
54
|
+
return Task.FromResult(new ScriptResponse());
|
|
78
55
|
}
|
|
79
56
|
|
|
80
57
|
public Task<ScriptResponse> OutputHandler(ScriptContext context)
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
using System;
|
|
2
|
+
using System.Collections.Generic;
|
|
3
|
+
using System.Threading.Tasks;
|
|
4
|
+
using BBT.Workflow.Scripting;
|
|
5
|
+
using BBT.Workflow.Definitions;
|
|
6
|
+
|
|
7
|
+
/// <summary>
|
|
8
|
+
/// Generic mapping for register-for-chat inside the register-matrix-user flow.
|
|
9
|
+
/// Reads matrixUsername from instance data and registers on Synapse via POST /_matrix/client/v3/register.
|
|
10
|
+
/// </summary>
|
|
11
|
+
public class RegisterMatrixUserMapping : ScriptBase, IMapping
|
|
12
|
+
{
|
|
13
|
+
public async Task<ScriptResponse> InputHandler(WorkflowTask task, ScriptContext context)
|
|
14
|
+
{
|
|
15
|
+
var httpTask = task as HttpTask;
|
|
16
|
+
if (httpTask == null)
|
|
17
|
+
throw new InvalidOperationException("Task must be an HttpTask");
|
|
18
|
+
|
|
19
|
+
var data = context.Instance?.Data;
|
|
20
|
+
var matrixUsername = GetString(data, "matrixUsername");
|
|
21
|
+
if (string.IsNullOrWhiteSpace(matrixUsername))
|
|
22
|
+
return new ScriptResponse();
|
|
23
|
+
|
|
24
|
+
var secretName = GetConfigValue("DAPR_SECRET_STORE_NAME");
|
|
25
|
+
if (string.IsNullOrWhiteSpace(secretName))
|
|
26
|
+
throw new InvalidOperationException("DAPR_SECRET_STORE_NAME configuration is required");
|
|
27
|
+
|
|
28
|
+
var matrixBaseUrl = await GetSecretAsync(secretName, "workflow-secret", "MatrixBaseUrl");
|
|
29
|
+
if (string.IsNullOrWhiteSpace(matrixBaseUrl))
|
|
30
|
+
throw new InvalidOperationException("MatrixBaseUrl secret is required");
|
|
31
|
+
|
|
32
|
+
var synapsePassword = await GetSecretAsync(secretName, "workflow-secret", "SynapsePassword");
|
|
33
|
+
if (string.IsNullOrWhiteSpace(synapsePassword))
|
|
34
|
+
throw new InvalidOperationException("SynapsePassword secret is required");
|
|
35
|
+
|
|
36
|
+
var fullUrl = matrixBaseUrl.TrimEnd('/') + "/_matrix/client/v3/register";
|
|
37
|
+
httpTask.SetUrl(fullUrl);
|
|
38
|
+
|
|
39
|
+
httpTask.SetHeaders(new Dictionary<string, string>
|
|
40
|
+
{
|
|
41
|
+
["Content-Type"] = "application/json",
|
|
42
|
+
["Accept"] = "application/json"
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
httpTask.SetBody(new
|
|
46
|
+
{
|
|
47
|
+
auth = new { type = "m.login.dummy" },
|
|
48
|
+
username = matrixUsername,
|
|
49
|
+
password = synapsePassword
|
|
50
|
+
});
|
|
51
|
+
return new ScriptResponse();
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
public Task<ScriptResponse> OutputHandler(ScriptContext context)
|
|
55
|
+
{
|
|
56
|
+
return Task.FromResult(new ScriptResponse());
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
private string GetString(dynamic obj, string name)
|
|
60
|
+
{
|
|
61
|
+
if (obj == null) return null;
|
|
62
|
+
try
|
|
63
|
+
{
|
|
64
|
+
if (HasProperty(obj, name))
|
|
65
|
+
{
|
|
66
|
+
var v = GetPropertyValue(obj, name);
|
|
67
|
+
return v?.ToString();
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
catch { }
|
|
71
|
+
return null;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
@@ -49,7 +49,7 @@
|
|
|
49
49
|
},
|
|
50
50
|
"mapping": {
|
|
51
51
|
"location": "./src/CheckExistingPermanentChatRoomMapping.csx",
|
|
52
|
-
"code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLlRocmVhZGluZy5UYXNrczsKdXNpbmcgQkJULldvcmtmbG93LlNjcmlwdGluZzsKdXNpbmcgQkJULldvcmtmbG93LkRlZmluaXRpb25zOwoKLy8vIDxzdW1tYXJ5PgovLy8gTWFwcGluZyBmb3IgY2hlY2stZXhpc3RpbmctcGVybWFuZW50LWNoYXQtcm9vbSBEYXByU2VydmljZVRhc2sgKFR5cGUgMykuCi8vLyBDYWxscyBnZXQtY2hhdC1yb29tcyBmbG93IGZ1bmN0aW9uIHdpdGggdXNlciBhbmQgcm9vbVR5cGU9cGVybWFuZW50IGZyb20gSW5zdGFuY2VEYXRhLgovLy8gT3V0cHV0OiBoYXNFeGlzdGluZ1Blcm1hbmVudFJvb20gKGJvb2wpLCBleGlzdGluZ1Jvb21BZHZpc29yTWF0Y2hlcyAoYm9vbCksIGV4aXN0aW5nQ2hhdFJvb21JbnN0YW5jZUtleSAoc3RyaW5nKS4KLy8vIC0gaGFzRXhpc3RpbmdQZXJtYW5lbnRSb29tOiB0cnVlIG9ubHkgaWYgdXNlciBoYXMgYSBwZXJtYW5lbnQgcm9vbSB3aXRoIHRoZSBzYW1lIGFkdmlzb3JUeXBlIChlLmcuIFBNIHJlcXVlc3Qgb25seSBjb3VudHMgUE0gcm9vbXM7IElBIHJlcXVlc3Qgb25seSBjb3VudHMgSUEgcm9vbXMpLgovLy8gLSBleGlzdGluZ1Jvb21BZHZpc29yTWF0Y2hlczogdHJ1ZSBpZiB0aGF0IHJvb20ncyBhZHZpc29ySWQgYWxzbyBtYXRjaGVzOyBmYWxzZSBvdGhlcndpc2UuCi8vLyAtIGV4aXN0aW5nQ2hhdFJvb21JbnN0YW5jZUtleToga2V5IG9mIG1hdGNoaW5nIHJvb20sIG9yIGZpcnN0IHJvb20gd2l0aCBzYW1lIGFkdmlzb3JUeXBlIHdoZW4gbm8gbWF0Y2ggKGZvciB0cmFuc2ZlcikuCi8vLyA8L3N1bW1hcnk+CnB1YmxpYyBjbGFzcyBDaGVja0V4aXN0aW5nUGVybWFuZW50Q2hhdFJvb21NYXBwaW5nIDogU2NyaXB0QmFzZSwgSU1hcHBpbmcKewogICAgcHVibGljIFRhc2s8U2NyaXB0UmVzcG9uc2U+IElucHV0SGFuZGxlcihXb3JrZmxvd1Rhc2sgdGFzaywgU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHZhciBzZXJ2aWNlVGFzayA9IHRhc2sgYXMgRGFwclNlcnZpY2VUYXNrOwogICAgICAgIGlmIChzZXJ2aWNlVGFzayA9PSBudWxsKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiVGFzayBtdXN0IGJlIGEgRGFwclNlcnZpY2VUYXNrIik7CgogICAgICAgIHZhciBhcHBJZCA9IEdldENvbmZpZ1ZhbHVlKCJEQVBSX0FQUF9JRCIpOwogICAgICAgIGlmICghc3RyaW5nLklzTnVsbE9yRW1wdHkoYXBwSWQpKQogICAgICAgICAgICBzZXJ2aWNlVGFzay5TZXRBcHBJZChhcHBJZCk7CgogICAgICAgIHZhciBkYXRhID0gY29udGV4dC5JbnN0YW5jZT8uRGF0YTsKICAgICAgICBpZiAoZGF0YSA9PSBudWxsKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiSW5zdGFuY2UgZGF0YSBpcyByZXF1aXJlZCIpOwoKICAgICAgICB2YXIgdXNlciA9IEdldFN0cmluZyhkYXRhLCAidXNlciIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHVzZXIpKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigidXNlciBpcyByZXF1aXJlZCBpbiBpbnN0YW5jZSBkYXRhIik7CgogICAgICAgIHZhciBxdWVyeVBhcmFtcyA9IG5ldyBMaXN0PHN0cmluZz4KICAgICAgICB7CiAgICAgICAgICAgICJ1c2VyPSIgKyBVcmkuRXNjYXBlRGF0YVN0cmluZyh1c2VyLlRyaW0oKSksCiAgICAgICAgICAgICJyb29tVHlwZT1wZXJtYW5lbnQiLAogICAgICAgICAgICAic3RhdGU9YWN0aXZhdGVkIiwKICAgICAgICAgICAgInBhZ2VTaXplPTIwIgogICAgICAgIH07CiAgICAgICAgc2VydmljZVRhc2suU2V0UXVlcnlTdHJpbmcoc3RyaW5nLkpvaW4oIiYiLCBxdWVyeVBhcmFtcykpOwoKICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KG5ldyBTY3JpcHRSZXNwb25zZSgpKTsKICAgIH0KCiAgICBwdWJsaWMgVGFzazxTY3JpcHRSZXNwb25zZT4gT3V0cHV0SGFuZGxlcihTY3JpcHRDb250ZXh0IGNvbnRleHQpCiAgICB7CiAgICAgICAgdmFyIHJlc3BvbnNlID0gY29udGV4dC5Cb2R5OwogICAgICAgIHZhciBkYXRhID0gY29udGV4dC5JbnN0YW5jZT8uRGF0YTsKICAgICAgICB2YXIgYWR2aXNvcklkID0gR2V0U3RyaW5nKGRhdGEsICJhZHZpc29ySWQiKTsKICAgICAgICB2YXIgYWR2aXNvclR5cGUgPSBHZXRTdHJpbmcoZGF0YSwgImFkdmlzb3JUeXBlIik7CgogICAgICAgIGJvb2wgaGFzRXhpc3RpbmdQZXJtYW5lbnRSb29tID0gZmFsc2U7CiAgICAgICAgYm9vbCBleGlzdGluZ1Jvb21BZHZpc29yTWF0Y2hlcyA9IGZhbHNlOwogICAgICAgIHN0cmluZyBleGlzdGluZ0NoYXRSb29tSW5zdGFuY2VLZXkgPSBudWxsOwogICAgICAgIHN0cmluZyBmaXJzdFJvb21XaXRoU2FtZUFkdmlzb3JUeXBlS2V5ID0gbnVsbDsKCiAgICAgICAgaWYgKHJlc3BvbnNlPy5pc1N1Y2Nlc3MgPT0gdHJ1ZSkKICAgICAgICB7CiAgICAgICAgICAgIHZhciByZXNwb25zZURhdGEgPSByZXNwb25zZT8uZGF0YSA/PyByZXNwb25zZT8uRGF0YSA/PyByZXNwb25zZTsKICAgICAgICAgICAgdmFyIHJvb21zID0gR2V0Um9vbXNMaXN0KHJlc3BvbnNlRGF0YSk7CiAgICAgICAgICAgIGlmIChyb29tcyAhPSBudWxsKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBmb3JlYWNoICh2YXIgcm9vbSBpbiByb29tcykKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICB2YXIgcm9vbUFkdmlzb3JUeXBlID0gR2V0U3RyaW5nKHJvb20sICJhZHZpc29yVHlwZSIpOwogICAgICAgICAgICAgICAgICAgIGlmICghc3RyaW5nLkVxdWFscyhyb29tQWR2aXNvclR5cGU/LlRyaW0oKSwgYWR2aXNvclR5cGU/LlRyaW0oKSwgU3RyaW5nQ29tcGFyaXNvbi5PcmRpbmFsSWdub3JlQ2FzZSkpCiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwoKICAgICAgICAgICAgICAgICAgICB2YXIgcm9vbUtleSA9IEdldFN0cmluZyhyb29tLCAiaW5zdGFuY2VLZXkiKSA/
|
|
52
|
+
"code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLlRocmVhZGluZy5UYXNrczsKdXNpbmcgQkJULldvcmtmbG93LlNjcmlwdGluZzsKdXNpbmcgQkJULldvcmtmbG93LkRlZmluaXRpb25zOwoKLy8vIDxzdW1tYXJ5PgovLy8gTWFwcGluZyBmb3IgY2hlY2stZXhpc3RpbmctcGVybWFuZW50LWNoYXQtcm9vbSBEYXByU2VydmljZVRhc2sgKFR5cGUgMykuCi8vLyBDYWxscyBnZXQtY2hhdC1yb29tcyBmbG93IGZ1bmN0aW9uIHdpdGggdXNlciBhbmQgcm9vbVR5cGU9cGVybWFuZW50IGZyb20gSW5zdGFuY2VEYXRhLgovLy8gT3V0cHV0OiBoYXNFeGlzdGluZ1Blcm1hbmVudFJvb20gKGJvb2wpLCBleGlzdGluZ1Jvb21BZHZpc29yTWF0Y2hlcyAoYm9vbCksIGV4aXN0aW5nQ2hhdFJvb21JbnN0YW5jZUtleSAoc3RyaW5nKS4KLy8vIC0gaGFzRXhpc3RpbmdQZXJtYW5lbnRSb29tOiB0cnVlIG9ubHkgaWYgdXNlciBoYXMgYSBwZXJtYW5lbnQgcm9vbSB3aXRoIHRoZSBzYW1lIGFkdmlzb3JUeXBlIChlLmcuIFBNIHJlcXVlc3Qgb25seSBjb3VudHMgUE0gcm9vbXM7IElBIHJlcXVlc3Qgb25seSBjb3VudHMgSUEgcm9vbXMpLgovLy8gLSBleGlzdGluZ1Jvb21BZHZpc29yTWF0Y2hlczogdHJ1ZSBpZiB0aGF0IHJvb20ncyBhZHZpc29ySWQgYWxzbyBtYXRjaGVzOyBmYWxzZSBvdGhlcndpc2UuCi8vLyAtIGV4aXN0aW5nQ2hhdFJvb21JbnN0YW5jZUtleToga2V5IG9mIG1hdGNoaW5nIHJvb20sIG9yIGZpcnN0IHJvb20gd2l0aCBzYW1lIGFkdmlzb3JUeXBlIHdoZW4gbm8gbWF0Y2ggKGZvciB0cmFuc2ZlcikuCi8vLyA8L3N1bW1hcnk+CnB1YmxpYyBjbGFzcyBDaGVja0V4aXN0aW5nUGVybWFuZW50Q2hhdFJvb21NYXBwaW5nIDogU2NyaXB0QmFzZSwgSU1hcHBpbmcKewogICAgcHVibGljIFRhc2s8U2NyaXB0UmVzcG9uc2U+IElucHV0SGFuZGxlcihXb3JrZmxvd1Rhc2sgdGFzaywgU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHZhciBzZXJ2aWNlVGFzayA9IHRhc2sgYXMgRGFwclNlcnZpY2VUYXNrOwogICAgICAgIGlmIChzZXJ2aWNlVGFzayA9PSBudWxsKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiVGFzayBtdXN0IGJlIGEgRGFwclNlcnZpY2VUYXNrIik7CgogICAgICAgIHZhciBhcHBJZCA9IEdldENvbmZpZ1ZhbHVlKCJEQVBSX0FQUF9JRCIpOwogICAgICAgIGlmICghc3RyaW5nLklzTnVsbE9yRW1wdHkoYXBwSWQpKQogICAgICAgICAgICBzZXJ2aWNlVGFzay5TZXRBcHBJZChhcHBJZCk7CgogICAgICAgIHZhciBkYXRhID0gY29udGV4dC5JbnN0YW5jZT8uRGF0YTsKICAgICAgICBpZiAoZGF0YSA9PSBudWxsKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiSW5zdGFuY2UgZGF0YSBpcyByZXF1aXJlZCIpOwoKICAgICAgICB2YXIgdXNlciA9IEdldFN0cmluZyhkYXRhLCAidXNlciIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHVzZXIpKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigidXNlciBpcyByZXF1aXJlZCBpbiBpbnN0YW5jZSBkYXRhIik7CgogICAgICAgIHZhciBxdWVyeVBhcmFtcyA9IG5ldyBMaXN0PHN0cmluZz4KICAgICAgICB7CiAgICAgICAgICAgICJ1c2VyPSIgKyBVcmkuRXNjYXBlRGF0YVN0cmluZyh1c2VyLlRyaW0oKSksCiAgICAgICAgICAgICJyb29tVHlwZT1wZXJtYW5lbnQiLAogICAgICAgICAgICAic3RhdGU9YWN0aXZhdGVkIiwKICAgICAgICAgICAgInBhZ2VTaXplPTIwIgogICAgICAgIH07CiAgICAgICAgc2VydmljZVRhc2suU2V0UXVlcnlTdHJpbmcoc3RyaW5nLkpvaW4oIiYiLCBxdWVyeVBhcmFtcykpOwoKICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KG5ldyBTY3JpcHRSZXNwb25zZSgpKTsKICAgIH0KCiAgICBwdWJsaWMgVGFzazxTY3JpcHRSZXNwb25zZT4gT3V0cHV0SGFuZGxlcihTY3JpcHRDb250ZXh0IGNvbnRleHQpCiAgICB7CiAgICAgICAgdmFyIHJlc3BvbnNlID0gY29udGV4dC5Cb2R5OwogICAgICAgIHZhciBkYXRhID0gY29udGV4dC5JbnN0YW5jZT8uRGF0YTsKICAgICAgICB2YXIgYWR2aXNvcklkID0gR2V0U3RyaW5nKGRhdGEsICJhZHZpc29ySWQiKTsKICAgICAgICB2YXIgYWR2aXNvclR5cGUgPSBHZXRTdHJpbmcoZGF0YSwgImFkdmlzb3JUeXBlIik7CgogICAgICAgIGJvb2wgaGFzRXhpc3RpbmdQZXJtYW5lbnRSb29tID0gZmFsc2U7CiAgICAgICAgYm9vbCBleGlzdGluZ1Jvb21BZHZpc29yTWF0Y2hlcyA9IGZhbHNlOwogICAgICAgIHN0cmluZyBleGlzdGluZ0NoYXRSb29tSW5zdGFuY2VLZXkgPSBudWxsOwogICAgICAgIHN0cmluZyBmaXJzdFJvb21XaXRoU2FtZUFkdmlzb3JUeXBlS2V5ID0gbnVsbDsKCiAgICAgICAgaWYgKHJlc3BvbnNlPy5pc1N1Y2Nlc3MgPT0gdHJ1ZSkKICAgICAgICB7CiAgICAgICAgICAgIHZhciByZXNwb25zZURhdGEgPSByZXNwb25zZT8uZGF0YSA/PyByZXNwb25zZT8uRGF0YSA/PyByZXNwb25zZTsKICAgICAgICAgICAgdmFyIHJvb21zID0gR2V0Um9vbXNMaXN0KHJlc3BvbnNlRGF0YSk7CiAgICAgICAgICAgIGlmIChyb29tcyAhPSBudWxsKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBmb3JlYWNoICh2YXIgcm9vbSBpbiByb29tcykKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICB2YXIgcm9vbUFkdmlzb3JUeXBlID0gR2V0U3RyaW5nKHJvb20sICJhZHZpc29yVHlwZSIpOwogICAgICAgICAgICAgICAgICAgIGlmICghc3RyaW5nLkVxdWFscyhyb29tQWR2aXNvclR5cGU/LlRyaW0oKSwgYWR2aXNvclR5cGU/LlRyaW0oKSwgU3RyaW5nQ29tcGFyaXNvbi5PcmRpbmFsSWdub3JlQ2FzZSkpCiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwoKICAgICAgICAgICAgICAgICAgICB2YXIgcm9vbUtleSA9IEdldFN0cmluZyhyb29tLCAiaW5zdGFuY2VLZXkiKSA/PyBHZXRTdHJpbmcocm9vbSwgImtleSIpOwogICAgICAgICAgICAgICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHJvb21LZXkpKSBjb250aW51ZTsKCiAgICAgICAgICAgICAgICAgICAgaWYgKGZpcnN0Um9vbVdpdGhTYW1lQWR2aXNvclR5cGVLZXkgPT0gbnVsbCkKICAgICAgICAgICAgICAgICAgICAgICAgZmlyc3RSb29tV2l0aFNhbWVBZHZpc29yVHlwZUtleSA9IHJvb21LZXk7CgogICAgICAgICAgICAgICAgICAgIGhhc0V4aXN0aW5nUGVybWFuZW50Um9vbSA9IHRydWU7CgogICAgICAgICAgICAgICAgICAgIHZhciByb29tQWR2aXNvcklkID0gR2V0U3RyaW5nKHJvb20sICJhZHZpc29ySWQiKTsKICAgICAgICAgICAgICAgICAgICBpZiAoc3RyaW5nLkVxdWFscyhyb29tQWR2aXNvcklkPy5UcmltKCksIGFkdmlzb3JJZD8uVHJpbSgpLCBTdHJpbmdDb21wYXJpc29uLk9yZGluYWxJZ25vcmVDYXNlKSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIGV4aXN0aW5nUm9vbUFkdmlzb3JNYXRjaGVzID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgICAgICAgZXhpc3RpbmdDaGF0Um9vbUluc3RhbmNlS2V5ID0gcm9vbUtleTsKICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGlmIChoYXNFeGlzdGluZ1Blcm1hbmVudFJvb20gJiYgZXhpc3RpbmdDaGF0Um9vbUluc3RhbmNlS2V5ID09IG51bGwpCiAgICAgICAgICAgICAgICAgICAgZXhpc3RpbmdDaGF0Um9vbUluc3RhbmNlS2V5ID0gZmlyc3RSb29tV2l0aFNhbWVBZHZpc29yVHlwZUtleTsKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UKICAgICAgICB7CiAgICAgICAgICAgIERhdGEgPSBuZXcKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgaGFzRXhpc3RpbmdQZXJtYW5lbnRSb29tID0gaGFzRXhpc3RpbmdQZXJtYW5lbnRSb29tLAogICAgICAgICAgICAgICAgZXhpc3RpbmdSb29tQWR2aXNvck1hdGNoZXMgPSBleGlzdGluZ1Jvb21BZHZpc29yTWF0Y2hlcywKICAgICAgICAgICAgICAgIGV4aXN0aW5nQ2hhdFJvb21JbnN0YW5jZUtleSA9IGV4aXN0aW5nQ2hhdFJvb21JbnN0YW5jZUtleQogICAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICB9CgogICAgcHJpdmF0ZSBTeXN0ZW0uQ29sbGVjdGlvbnMuSUVudW1lcmFibGUgR2V0Um9vbXNMaXN0KGR5bmFtaWMgcmVzcG9uc2VEYXRhKQogICAgewogICAgICAgIGlmIChyZXNwb25zZURhdGEgPT0gbnVsbCkgcmV0dXJuIG51bGw7CiAgICAgICAgdHJ5CiAgICAgICAgewogICAgICAgICAgICAvLyByZXNwb25zZURhdGEuZ2V0Q2hhdFJvb21zLnJvb21zCiAgICAgICAgICAgIHZhciBkaXJlY3RDaGF0Um9vbXMgPSBHZXRWYWx1ZShyZXNwb25zZURhdGEsICJnZXRDaGF0Um9vbXMiKTsKICAgICAgICAgICAgaWYgKGRpcmVjdENoYXRSb29tcyAhPSBudWxsICYmIEhhc1Byb3BlcnR5KGRpcmVjdENoYXRSb29tcywgInJvb21zIikgJiYgZGlyZWN0Q2hhdFJvb21zLnJvb21zICE9IG51bGwpCiAgICAgICAgICAgICAgICByZXR1cm4gZGlyZWN0Q2hhdFJvb21zLnJvb21zOwoKICAgICAgICAgICAgLy8gV3JhcHBlZDogY2hlY2tFeGlzdGluZ0RhdGEuaXRlbXNbXS5nZXRDaGF0Um9vbXMucm9vbXMgKHJ1bnRpbWUgdGFzayByZXN1bHQgc2hhcGUpCiAgICAgICAgICAgIHZhciBjaGVja0V4aXN0aW5nID0gR2V0VmFsdWUocmVzcG9uc2VEYXRhLCAiY2hlY2tFeGlzdGluZ0RhdGEiKSA/PyBHZXRWYWx1ZShyZXNwb25zZURhdGEsICJkYXRhIik7CiAgICAgICAgICAgIHZhciByb290ID0gY2hlY2tFeGlzdGluZyA/PyByZXNwb25zZURhdGE7CiAgICAgICAgICAgIGlmIChyb290ICE9IG51bGwgJiYgSGFzUHJvcGVydHkocm9vdCwgIml0ZW1zIikgJiYgcm9vdC5pdGVtcyAhPSBudWxsKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICB2YXIgaXRlbXMgPSByb290Lml0ZW1zIGFzIFN5c3RlbS5Db2xsZWN0aW9ucy5JRW51bWVyYWJsZTsKICAgICAgICAgICAgICAgIGlmIChpdGVtcyAhPSBudWxsKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIGZvcmVhY2ggKHZhciBpdGVtIGluIGl0ZW1zKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGl0ZW0gPT0gbnVsbCkgY29udGludWU7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBnZXRDaGF0Um9vbXMgPSBHZXRWYWx1ZShpdGVtLCAiZ2V0Q2hhdFJvb21zIik7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChnZXRDaGF0Um9vbXMgIT0gbnVsbCAmJiBIYXNQcm9wZXJ0eShnZXRDaGF0Um9vbXMsICJyb29tcyIpKQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgcm9vbXMgPSBHZXRWYWx1ZShnZXRDaGF0Um9vbXMsICJyb29tcyIpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJvb21zIGlzIFN5c3RlbS5Db2xsZWN0aW9ucy5JRW51bWVyYWJsZSBlbiAmJiBlbiAhPSBudWxsKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBlbjsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjYXRjaCB7IH0KICAgICAgICByZXR1cm4gbnVsbDsKICAgIH0KCiAgICBwcml2YXRlIG9iamVjdCBHZXRWYWx1ZShkeW5hbWljIG9iaiwgc3RyaW5nIG5hbWUpCiAgICB7CiAgICAgICAgaWYgKG9iaiA9PSBudWxsKSByZXR1cm4gbnVsbDsKICAgICAgICB0cnkKICAgICAgICB7CiAgICAgICAgICAgIGlmIChIYXNQcm9wZXJ0eShvYmosIG5hbWUpKQogICAgICAgICAgICAgICAgcmV0dXJuIEdldFByb3BlcnR5VmFsdWUob2JqLCBuYW1lKTsKICAgICAgICB9CiAgICAgICAgY2F0Y2ggeyB9CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICB9CgogICAgcHJpdmF0ZSBzdHJpbmcgR2V0U3RyaW5nKGR5bmFtaWMgb2JqLCBzdHJpbmcgbmFtZSkKICAgIHsKICAgICAgICBpZiAob2JqID09IG51bGwpIHJldHVybiBudWxsOwogICAgICAgIHRyeQogICAgICAgIHsKICAgICAgICAgICAgaWYgKEhhc1Byb3BlcnR5KG9iaiwgbmFtZSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciB2ID0gR2V0UHJvcGVydHlWYWx1ZShvYmosIG5hbWUpOwogICAgICAgICAgICAgICAgcmV0dXJuIHY/LlRvU3RyaW5nKCk/LlRyaW0oKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjYXRjaCB7IH0KICAgICAgICByZXR1cm4gbnVsbDsKICAgIH0KfQo="
|
|
53
53
|
}
|
|
54
54
|
}
|
|
55
55
|
]
|
package/package.json
CHANGED
package/vnext.config.json
CHANGED
|
Binary file
|