dcl-npc-toolkit 1.1.4-20230619185824.commit-afe7da0 → 1.1.4-20230620173040.commit-0c1ebfe
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/dist/ui.d.ts +1 -0
- package/dist/ui.js +56 -35
- package/package.json +2 -2
package/dist/ui.d.ts
CHANGED
|
@@ -74,4 +74,5 @@ export declare let redButtonSection: {
|
|
|
74
74
|
sourceLeft: number;
|
|
75
75
|
sourceTop: number;
|
|
76
76
|
};
|
|
77
|
+
export declare function setupNPCUiScaling(inModalScale: number, inFontSize: number, inModalTextWrapScale: number): void;
|
|
77
78
|
export declare const NpcUtilsUi: () => ReactEcs.JSX.Element;
|
package/dist/ui.js
CHANGED
|
@@ -50,9 +50,27 @@ export let redButtonSection = {
|
|
|
50
50
|
atlasHeight: sourcesComponentsCoordinates.atlasHeight,
|
|
51
51
|
atlasWidth: sourcesComponentsCoordinates.atlasWidth
|
|
52
52
|
};
|
|
53
|
+
let modalScale = 1;
|
|
54
|
+
let modelFontSizeScale = 1;
|
|
55
|
+
let modalTextWrapScale = 1;
|
|
56
|
+
export function setupNPCUiScaling(inModalScale, inFontSize, inModalTextWrapScale) {
|
|
57
|
+
modalScale = inModalScale;
|
|
58
|
+
modelFontSizeScale = inFontSize;
|
|
59
|
+
modalTextWrapScale = inModalTextWrapScale;
|
|
60
|
+
console.log('NPC-TOOLKIT', 'Scale UI:', modalScale, 'TextFontSize:', modelFontSizeScale, 'TextWrapScaling:', modalTextWrapScale);
|
|
61
|
+
}
|
|
62
|
+
function getScaledSize(size) {
|
|
63
|
+
return size * modalScale;
|
|
64
|
+
}
|
|
65
|
+
function getScaledFontSize(size) {
|
|
66
|
+
return size * modelFontSizeScale;
|
|
67
|
+
}
|
|
68
|
+
function getScaledTextWrap(size) {
|
|
69
|
+
return size * modalTextWrapScale;
|
|
70
|
+
}
|
|
53
71
|
export const NpcUtilsUi = () => {
|
|
54
|
-
const width = realWidth(700);
|
|
55
|
-
const height = realHeight(225);
|
|
72
|
+
const width = getScaledSize(realWidth(700));
|
|
73
|
+
const height = getScaledSize(realHeight(225));
|
|
56
74
|
return (ReactEcs.createElement(UiEntity, { uiTransform: {
|
|
57
75
|
display: displayDialog() ? 'flex' : 'none',
|
|
58
76
|
flexDirection: 'column',
|
|
@@ -80,10 +98,13 @@ export const NpcUtilsUi = () => {
|
|
|
80
98
|
} }),
|
|
81
99
|
ReactEcs.createElement(UiEntity, { uiTransform: {
|
|
82
100
|
display: displayPortrait() ? 'flex' : 'none',
|
|
83
|
-
width: portraitWidth(),
|
|
84
|
-
height: portraitHeight(),
|
|
101
|
+
width: getScaledSize(portraitWidth()),
|
|
102
|
+
height: getScaledSize(portraitHeight()),
|
|
85
103
|
positionType: 'absolute',
|
|
86
|
-
position: {
|
|
104
|
+
position: {
|
|
105
|
+
bottom: getScaledSize(positionPortaitY()),
|
|
106
|
+
left: getScaledSize(positionPortaitX())
|
|
107
|
+
}
|
|
87
108
|
}, uiBackground: {
|
|
88
109
|
textureMode: 'stretch',
|
|
89
110
|
texture: {
|
|
@@ -92,8 +113,8 @@ export const NpcUtilsUi = () => {
|
|
|
92
113
|
} }),
|
|
93
114
|
ReactEcs.createElement(UiEntity, { uiTransform: {
|
|
94
115
|
display: displayImage() ? 'flex' : 'none',
|
|
95
|
-
width: imageWidth(),
|
|
96
|
-
height: imageHeight(),
|
|
116
|
+
width: getScaledSize(imageWidth()),
|
|
117
|
+
height: getScaledSize(imageHeight()),
|
|
97
118
|
positionType: 'absolute',
|
|
98
119
|
position: { bottom: positionImageY(), right: positionImageX() }
|
|
99
120
|
}, uiBackground: {
|
|
@@ -104,8 +125,8 @@ export const NpcUtilsUi = () => {
|
|
|
104
125
|
} }),
|
|
105
126
|
ReactEcs.createElement(UiEntity, { uiTransform: {
|
|
106
127
|
display: displaySkipable() ? 'flex' : 'none',
|
|
107
|
-
width: 15,
|
|
108
|
-
height: 15,
|
|
128
|
+
width: getScaledSize(15),
|
|
129
|
+
height: getScaledSize(15),
|
|
109
130
|
positionType: 'absolute',
|
|
110
131
|
position: { bottom: '7%', left: '25%' }
|
|
111
132
|
}, uiBackground: {
|
|
@@ -124,12 +145,12 @@ export const NpcUtilsUi = () => {
|
|
|
124
145
|
}, uiText: {
|
|
125
146
|
value: 'Skip',
|
|
126
147
|
color: getTextColor(),
|
|
127
|
-
fontSize: 12
|
|
148
|
+
fontSize: getScaledFontSize(12)
|
|
128
149
|
} })),
|
|
129
150
|
ReactEcs.createElement(UiEntity, { uiTransform: {
|
|
130
151
|
display: 'flex',
|
|
131
|
-
width: 24,
|
|
132
|
-
height: 36,
|
|
152
|
+
width: getScaledSize(24),
|
|
153
|
+
height: getScaledSize(36),
|
|
133
154
|
positionType: 'absolute',
|
|
134
155
|
position: { bottom: '5%', right: '2%' }
|
|
135
156
|
}, uiBackground: {
|
|
@@ -148,11 +169,11 @@ export const NpcUtilsUi = () => {
|
|
|
148
169
|
}, uiText: {
|
|
149
170
|
value: getText(),
|
|
150
171
|
color: getTextColor(),
|
|
151
|
-
fontSize: getFontSize(),
|
|
172
|
+
fontSize: getScaledFontSize(getFontSize()),
|
|
152
173
|
textAlign: 'middle-left'
|
|
153
174
|
} }),
|
|
154
175
|
ReactEcs.createElement(UiEntity, { uiTransform: {
|
|
155
|
-
width:
|
|
176
|
+
width: getScaledSize(300),
|
|
156
177
|
alignItems: 'center',
|
|
157
178
|
flexDirection: 'row',
|
|
158
179
|
justifyContent: 'space-between',
|
|
@@ -160,8 +181,8 @@ export const NpcUtilsUi = () => {
|
|
|
160
181
|
position: { top: '20%' }
|
|
161
182
|
} },
|
|
162
183
|
ReactEcs.createElement(UiEntity, { uiTransform: {
|
|
163
|
-
width:
|
|
164
|
-
height:
|
|
184
|
+
width: getScaledSize(150),
|
|
185
|
+
height: getScaledSize(45),
|
|
165
186
|
margin: { right: '5%' },
|
|
166
187
|
flexDirection: 'row',
|
|
167
188
|
alignItems: 'center',
|
|
@@ -174,13 +195,13 @@ export const NpcUtilsUi = () => {
|
|
|
174
195
|
src: getTheme()
|
|
175
196
|
},
|
|
176
197
|
uvs: getImageAtlasMapping(darkButtonSection)
|
|
177
|
-
}, uiText: { value: getButtonText(0), fontSize: 16 }, onMouseDown: () => {
|
|
198
|
+
}, uiText: { value: getButtonText(0), fontSize: getScaledFontSize(16) }, onMouseDown: () => {
|
|
178
199
|
buttonClick(0);
|
|
179
200
|
} },
|
|
180
201
|
ReactEcs.createElement(UiEntity, { uiTransform: {
|
|
181
|
-
width:
|
|
182
|
-
height:
|
|
183
|
-
position: { left: 5 }
|
|
202
|
+
width: getScaledSize(25),
|
|
203
|
+
height: getScaledSize(25),
|
|
204
|
+
position: { left: getScaledSize(5) }
|
|
184
205
|
}, uiBackground: {
|
|
185
206
|
textureMode: 'stretch',
|
|
186
207
|
texture: {
|
|
@@ -189,8 +210,8 @@ export const NpcUtilsUi = () => {
|
|
|
189
210
|
uvs: getImageAtlasMapping(secondaryButtonSection)
|
|
190
211
|
} })),
|
|
191
212
|
ReactEcs.createElement(UiEntity, { uiTransform: {
|
|
192
|
-
width:
|
|
193
|
-
height:
|
|
213
|
+
width: getScaledSize(150),
|
|
214
|
+
height: getScaledSize(45),
|
|
194
215
|
flexDirection: 'row',
|
|
195
216
|
alignItems: 'center',
|
|
196
217
|
justifyContent: 'flex-start',
|
|
@@ -202,13 +223,13 @@ export const NpcUtilsUi = () => {
|
|
|
202
223
|
src: getTheme()
|
|
203
224
|
},
|
|
204
225
|
uvs: getImageAtlasMapping(redButtonSection)
|
|
205
|
-
}, uiText: { value: getButtonText(1), fontSize: 16 }, onMouseDown: () => {
|
|
226
|
+
}, uiText: { value: getButtonText(1), fontSize: getScaledFontSize(16) }, onMouseDown: () => {
|
|
206
227
|
buttonClick(1);
|
|
207
228
|
} },
|
|
208
229
|
ReactEcs.createElement(UiEntity, { uiTransform: {
|
|
209
|
-
width:
|
|
210
|
-
height:
|
|
211
|
-
position: { left: 5 }
|
|
230
|
+
width: getScaledSize(25),
|
|
231
|
+
height: getScaledSize(25),
|
|
232
|
+
position: { left: getScaledSize(5) }
|
|
212
233
|
}, uiBackground: {
|
|
213
234
|
textureMode: 'stretch',
|
|
214
235
|
texture: {
|
|
@@ -217,17 +238,17 @@ export const NpcUtilsUi = () => {
|
|
|
217
238
|
uvs: getImageAtlasMapping(primaryButtonSection)
|
|
218
239
|
} }))),
|
|
219
240
|
ReactEcs.createElement(UiEntity, { uiTransform: {
|
|
220
|
-
width:
|
|
241
|
+
width: getScaledSize(300),
|
|
221
242
|
alignItems: 'center',
|
|
222
243
|
flexDirection: 'row',
|
|
223
244
|
justifyContent: 'space-between',
|
|
224
|
-
margin: { top: 20 },
|
|
245
|
+
margin: { top: getScaledSize(20) },
|
|
225
246
|
display: displaySecondButtonContainer() ? 'flex' : 'none',
|
|
226
247
|
position: { top: '15%' }
|
|
227
248
|
} },
|
|
228
249
|
ReactEcs.createElement(UiEntity, { uiTransform: {
|
|
229
|
-
width:
|
|
230
|
-
height:
|
|
250
|
+
width: getScaledSize(150),
|
|
251
|
+
height: getScaledSize(45),
|
|
231
252
|
margin: { right: '5%' },
|
|
232
253
|
alignItems: 'center',
|
|
233
254
|
justifyContent: 'center',
|
|
@@ -239,12 +260,12 @@ export const NpcUtilsUi = () => {
|
|
|
239
260
|
src: getTheme()
|
|
240
261
|
},
|
|
241
262
|
uvs: getImageAtlasMapping(darkButtonSection)
|
|
242
|
-
}, uiText: { value: getButtonText(2), fontSize: 16 }, onMouseDown: () => {
|
|
263
|
+
}, uiText: { value: getButtonText(2), fontSize: getScaledFontSize(16) }, onMouseDown: () => {
|
|
243
264
|
buttonClick(3);
|
|
244
265
|
} }),
|
|
245
266
|
ReactEcs.createElement(UiEntity, { uiTransform: {
|
|
246
|
-
width:
|
|
247
|
-
height:
|
|
267
|
+
width: getScaledSize(150),
|
|
268
|
+
height: getScaledSize(45),
|
|
248
269
|
alignItems: 'center',
|
|
249
270
|
justifyContent: 'center',
|
|
250
271
|
alignContent: 'flex-start',
|
|
@@ -255,8 +276,8 @@ export const NpcUtilsUi = () => {
|
|
|
255
276
|
src: getTheme()
|
|
256
277
|
},
|
|
257
278
|
uvs: getImageAtlasMapping(darkButtonSection)
|
|
258
|
-
}, uiText: { value: getButtonText(3), fontSize: 16 }, onMouseDown: () => {
|
|
279
|
+
}, uiText: { value: getButtonText(3), fontSize: getScaledFontSize(16) }, onMouseDown: () => {
|
|
259
280
|
buttonClick(4);
|
|
260
281
|
} }))));
|
|
261
282
|
};
|
|
262
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdWkudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sUUFBUSxFQUFFLEVBQW1DLFFBQVEsRUFBRSxNQUFNLG9CQUFvQixDQUFBO0FBRXhGLE9BQU8sRUFDTCxXQUFXLEVBRVgsYUFBYSxFQUNiLGFBQWEsRUFDYiwyQkFBMkIsRUFDM0IsWUFBWSxFQUNaLGVBQWUsRUFDZiw0QkFBNEIsRUFDNUIsZUFBZSxFQUNmLGFBQWEsRUFDYixXQUFXLEVBQ1gsUUFBUSxFQUNSLG9CQUFvQixFQUNwQixpQkFBaUIsRUFDakIsV0FBVyxFQUNYLGdCQUFnQixFQUNoQixPQUFPLEVBQ1AsWUFBWSxFQUNaLGVBQWUsRUFDZixRQUFRLEVBQ1IsaUJBQWlCLEVBQ2pCLFdBQVcsRUFDWCxVQUFVLEVBQ1YsY0FBYyxFQUNkLGFBQWEsRUFDYixjQUFjLEVBQ2QsY0FBYyxFQUNkLGdCQUFnQixFQUNoQixnQkFBZ0IsRUFHaEIsVUFBVSxFQUNWLFNBQVMsRUFDVCxXQUFXLEVBQ1osTUFBTSxVQUFVLENBQUE7QUFDakIsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzVELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxPQUFPLENBQUE7QUFFakMsTUFBTSxDQUFDLElBQUksVUFBVSxHQUFHLHVEQUF1RCxDQUFBO0FBQy9FLE1BQU0sQ0FBQyxJQUFJLFNBQVMsR0FBRyxzREFBc0QsQ0FBQTtBQUU3RSxNQUFNLENBQUMsSUFBSSxjQUFjLEdBQUcsdURBQXVELENBQUE7QUFFbkYsTUFBTSxDQUFDLElBQUksT0FBTyxHQUFHO0lBQ25CLEdBQUcsNEJBQTRCLENBQUMsV0FBVyxDQUFDLFNBQVM7SUFDckQsV0FBVyxFQUFFLDRCQUE0QixDQUFDLFdBQVc7SUFDckQsVUFBVSxFQUFFLDRCQUE0QixDQUFDLFVBQVU7Q0FDcEQsQ0FBQTtBQUVELE1BQU0sQ0FBQyxJQUFJLGlCQUFpQixHQUFHO0lBQzdCLEdBQUcsNEJBQTRCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDekMsV0FBVyxFQUFFLDRCQUE0QixDQUFDLFdBQVc7SUFDckQsVUFBVSxFQUFFLDRCQUE0QixDQUFDLFVBQVU7Q0FDcEQsQ0FBQTtBQUVELE1BQU0sQ0FBQyxJQUFJLHNCQUFzQixHQUFHO0lBQ2xDLEdBQUcsNEJBQTRCLENBQUMsT0FBTyxDQUFDLE1BQU07SUFDOUMsV0FBVyxFQUFFLDRCQUE0QixDQUFDLFdBQVc7SUFDckQsVUFBVSxFQUFFLDRCQUE0QixDQUFDLFVBQVU7Q0FDcEQsQ0FBQTtBQUVELE1BQU0sQ0FBQyxJQUFJLGdCQUFnQixHQUFHO0lBQzVCLEdBQUcsNEJBQTRCLENBQUMsS0FBSyxDQUFDLFVBQVU7SUFDaEQsV0FBVyxFQUFFLDRCQUE0QixDQUFDLFdBQVc7SUFDckQsVUFBVSxFQUFFLDRCQUE0QixDQUFDLFVBQVU7Q0FDcEQsQ0FBQTtBQUVELE1BQU0sQ0FBQyxJQUFJLHNCQUFzQixHQUFHO0lBQ2xDLEdBQUcsNEJBQTRCLENBQUMsS0FBSyxDQUFDLFNBQVM7SUFDL0MsV0FBVyxFQUFFLDRCQUE0QixDQUFDLFdBQVc7SUFDckQsVUFBVSxFQUFFLDRCQUE0QixDQUFDLFVBQVU7Q0FDcEQsQ0FBQTtBQUVELE1BQU0sQ0FBQyxJQUFJLG9CQUFvQixHQUFHO0lBQ2hDLEdBQUcsNEJBQTRCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDekMsV0FBVyxFQUFFLDRCQUE0QixDQUFDLFdBQVc7SUFDckQsVUFBVSxFQUFFLDRCQUE0QixDQUFDLFVBQVU7Q0FDcEQsQ0FBQTtBQUVELE1BQU0sQ0FBQyxJQUFJLHNCQUFzQixHQUFHO0lBQ2xDLEdBQUcsNEJBQTRCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDekMsV0FBVyxFQUFFLDRCQUE0QixDQUFDLFdBQVc7SUFDckQsVUFBVSxFQUFFLDRCQUE0QixDQUFDLFVBQVU7Q0FDcEQsQ0FBQTtBQUVELE1BQU0sQ0FBQyxJQUFJLGlCQUFpQixHQUFHO0lBQzdCLEdBQUcsNEJB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WyJpbXBvcnQgeyBDb2xvcjQgfSBmcm9tICdAZGNsL3Nkay9tYXRoJ1xuaW1wb3J0IFJlYWN0RWNzLCB7IEJ1dHRvbiwgTGFiZWwsIFJlYWN0RWNzUmVuZGVyZXIsIFVpRW50aXR5IH0gZnJvbSAnQGRjbC9zZGsvcmVhY3QtZWNzJ1xuaW1wb3J0IHsgRW50aXR5IH0gZnJvbSAnQGRjbC9zZGsvZWNzJ1xuaW1wb3J0IHtcbiAgYnV0dG9uQ2xpY2ssXG4gIGNvbmZpcm1UZXh0LFxuICBkaXNwbGF5QnV0dG9uLFxuICBkaXNwbGF5RGlhbG9nLFxuICBkaXNwbGF5Rmlyc3RCdXR0b25Db250YWluZXIsXG4gIGRpc3BsYXlJbWFnZSxcbiAgZGlzcGxheVBvcnRyYWl0LFxuICBkaXNwbGF5U2Vjb25kQnV0dG9uQ29udGFpbmVyLFxuICBkaXNwbGF5U2tpcGFibGUsXG4gIGdldEJ1dHRvblRleHQsXG4gIGdldEZvbnRTaXplLFxuICBnZXRJbWFnZSxcbiAgZ2V0SW1hZ2VBdGxhc01hcHBpbmcsXG4gIGdldExlZnRDbGlja1RoZW1lLFxuICBnZXRQb3J0cmFpdCxcbiAgZ2V0U2tpcGFibGVUaGVtZSxcbiAgZ2V0VGV4dCxcbiAgZ2V0VGV4dENvbG9yLFxuICBnZXRUZXh0UG9zaXRpb24sXG4gIGdldFRoZW1lLFxuICBoYW5kbGVEaWFsb2dDbGljayxcbiAgaW1hZ2VIZWlnaHQsXG4gIGltYWdlV2lkdGgsXG4gIHBvcnRyYWl0SGVpZ2h0LFxuICBwb3J0cmFpdFdpZHRoLFxuICBwb3NpdGlvbkltYWdlWCxcbiAgcG9zaXRpb25JbWFnZVksXG4gIHBvc2l0aW9uUG9ydGFpdFgsXG4gIHBvc2l0aW9uUG9ydGFpdFksXG4gIHBvc2l0aW9uVGV4dFgsXG4gIHBvc2l0aW9uVGV4dFksXG4gIHJlYWxIZWlnaHQsXG4gIHJlYWxXaWR0aCxcbiAgc2tpcERpYWxvZ3Ncbn0gZnJvbSAnLi9kaWFsb2cnXG5pbXBvcnQgeyBzb3VyY2VzQ29tcG9uZW50c0Nvb3JkaW5hdGVzIH0gZnJvbSAnLi91aVJlc291cmNlcydcbmltcG9ydCB7IGFjdGl2ZU5QQyB9IGZyb20gJy4vbnBjJ1xuXG5leHBvcnQgbGV0IGxpZ2h0VGhlbWUgPSAnaHR0cHM6Ly9kZWNlbnRyYWxhbmQub3JnL2ltYWdlcy91aS9saWdodC1hdGxhcy12My5wbmcnXG5leHBvcnQgbGV0IGRhcmtUaGVtZSA9ICdodHRwczovL2RlY2VudHJhbGFuZC5vcmcvaW1hZ2VzL3VpL2RhcmstYXRsYXMtdjMucG5nJ1xuXG5leHBvcnQgbGV0IGJ1YmJsZXNUZXh0dXJlID0gJ2h0dHBzOi8vZGVjZW50cmFsYW5kLm9yZy9pbWFnZXMvdWkvZGlhbG9nLWJ1YmJsZXMucG5nJ1xuXG5leHBvcnQgbGV0IHNlY3Rpb24gPSB7XG4gIC4uLnNvdXJjZXNDb21wb25lbnRzQ29vcmRpbmF0ZXMuYmFja2dyb3VuZHMuTlBDRGlhbG9nLFxuICBhdGxhc0hlaWdodDogc291cmNlc0NvbXBvbmVudHNDb29yZGluYXRlcy5hdGxhc0hlaWdodCxcbiAgYXRsYXNXaWR0aDogc291cmNlc0NvbXBvbmVudHNDb29yZGluYXRlcy5hdGxhc1dpZHRoXG59XG5cbmV4cG9ydCBsZXQgc2tpcEJ1dHRvblNlY3Rpb24gPSB7XG4gIC4uLnNvdXJjZXNDb21wb25lbnRzQ29vcmRpbmF0ZXMuYnV0dG9ucy5GLFxuICBhdGxhc0hlaWdodDogc291cmNlc0NvbXBvbmVudHNDb29yZGluYXRlcy5hdGxhc0hlaWdodCxcbiAgYXRsYXNXaWR0aDogc291cmNlc0NvbXBvbmVudHNDb29yZGluYXRlcy5hdGxhc1dpZHRoXG59XG5cbmV4cG9ydCBsZXQgc2tpcEJ1dHRvblNlY3Rpb25CbGFjayA9IHtcbiAgLi4uc291cmNlc0NvbXBvbmVudHNDb29yZGluYXRlcy5idXR0b25zLkZCbGFjayxcbiAgYXRsYXNIZWlnaHQ6IHNvdXJjZXNDb21wb25lbnRzQ29vcmRpbmF0ZXMuYXRsYXNIZWlnaHQsXG4gIGF0bGFzV2lkdGg6IHNvdXJjZXNDb21wb25lbnRzQ29vcmRpbmF0ZXMuYXRsYXNXaWR0aFxufVxuXG5leHBvcnQgbGV0IGxlZnRDbGlja1NlY3Rpb24gPSB7XG4gIC4uLnNvdXJjZXNDb21wb25lbnRzQ29vcmRpbmF0ZXMuaWNvbnMuQ2xpY2tXaGl0ZSxcbiAgYXRsYXNIZWlnaHQ6IHNvdXJjZXNDb21wb25lbnRzQ29vcmRpbmF0ZXMuYXRsYXNIZWlnaHQsXG4gIGF0bGFzV2lkdGg6IHNvdXJjZXNDb21wb25lbnRzQ29vcmRpbmF0ZXMuYXRsYXNXaWR0aFxufVxuXG5leHBvcnQgbGV0IGxlZnRDbGlja1NlY3Rpb25iQmxhY2sgPSB7XG4gIC4uLnNvdXJjZXNDb21wb25lbnRzQ29vcmRpbmF0ZXMuaWNvbnMuQ2xpY2tEYXJrLFxuICBhdGxhc0hlaWdodDogc291cmNlc0NvbXBvbmVudHNDb29yZGluYXRlcy5hdGxhc0hlaWdodCxcbiAgYXRsYXNXaWR0aDogc291cmNlc0NvbXBvbmVudHNDb29yZGluYXRlcy5hdGxhc1dpZHRoXG59XG5cbmV4cG9ydCBsZXQgcHJpbWFyeUJ1dHRvblNlY3Rpb24gPSB7XG4gIC4uLnNvdXJjZXNDb21wb25lbnRzQ29vcmRpbmF0ZXMuYnV0dG9ucy5FLFxuICBhdGxhc0hlaWdodDogc291cmNlc0NvbXBvbmVudHNDb29yZGluYXRlcy5hdGxhc0hlaWdodCxcbiAgYXRsYXNXaWR0aDogc291cmNlc0NvbXBvbmVudHNDb29yZGluYXRlcy5hdGxhc1dpZHRoXG59XG5cbmV4cG9ydCBsZXQgc2Vjb25kYXJ5QnV0dG9uU2VjdGlvbiA9IHtcbiAgLi4uc291cmNlc0NvbXBvbmVudHNDb29yZGluYXRlcy5idXR0b25zLkYsXG4gIGF0bGFzSGVpZ2h0OiBzb3VyY2VzQ29tcG9uZW50c0Nvb3JkaW5hdGVzLmF0bGFzSGVpZ2h0LFxuICBhdGxhc1dpZHRoOiBzb3VyY2VzQ29tcG9uZW50c0Nvb3JkaW5hdGVzLmF0bGFzV2lkdGhcbn1cblxuZXhwb3J0IGxldCBkYXJrQnV0dG9uU2VjdGlvbiA9IHtcbiAgLi4uc291cmNlc0NvbXBvbmVudHNDb29yZGluYXRlcy5idXR0b25zLmJ1dHRvbkYsXG4gIGF0bGFzSGVpZ2h0OiBzb3VyY2VzQ29tcG9uZW50c0Nvb3JkaW5hdGVzLmF0bGFzSGVpZ2h0LFxuICBhdGxhc1dpZHRoOiBzb3VyY2VzQ29tcG9uZW50c0Nvb3JkaW5hdGVzLmF0bGFzV2lkdGhcbn1cblxuZXhwb3J0IGxldCByZWRCdXR0b25TZWN0aW9uID0ge1xuICAuLi5zb3VyY2VzQ29tcG9uZW50c0Nvb3JkaW5hdGVzLmJ1dHRvbnMuYnV0dG9uRSxcbiAgYXRsYXNIZWlnaHQ6IHNvdXJjZXNDb21wb25lbnRzQ29vcmRpbmF0ZXMuYXRsYXNIZWlnaHQsXG4gIGF0bGFzV2lkdGg6IHNvdXJjZXNDb21wb25lbnRzQ29vcmRpbmF0ZXMuYXRsYXNXaWR0aFxufVxuXG5leHBvcnQgY29uc3QgTnBjVXRpbHNVaSA9ICgpID0+IHtcbiAgY29uc3Qgd2lkdGggPSByZWFsV2lkdGgoNzAwKVxuICBjb25zdCBoZWlnaHQgPSByZWFsSGVpZ2h0KDIyNSlcblxuICByZXR1cm4gKFxuICAgIDxVaUVudGl0eVxuICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgZGlzcGxheTogZGlzcGxheURpYWxvZygpID8gJ2ZsZXgnIDogJ25vbmUnLFxuICAgICAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcbiAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICAgIGp1c3RpZnlDb250ZW50OiAnY2VudGVyJyxcbiAgICAgICAgcG9zaXRpb25UeXBlOiAnYWJzb2x1dGUnLFxuICAgICAgICBwb3NpdGlvbjogeyBib3R0b206ICcxNSUnLCBsZWZ0OiAnNTAlJyB9LFxuICAgICAgICBtYXJnaW46IHsgdG9wOiAtaGVpZ2h0IC8gMiwgbGVmdDogLXdpZHRoIC8gMiB9LFxuICAgICAgICB3aWR0aCxcbiAgICAgICAgaGVpZ2h0XG4gICAgICB9fVxuICAgID5cbiAgICAgIDxVaUVudGl0eVxuICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgIHBvc2l0aW9uVHlwZTogJ2Fic29sdXRlJyxcbiAgICAgICAgICBwb3NpdGlvbjogeyB0b3A6IDAsIGxlZnQ6IDAgfSxcbiAgICAgICAgICB3aWR0aDogJzEwMCUnLFxuICAgICAgICAgIGhlaWdodDogJzEwMCUnXG4gICAgICAgIH19XG4gICAgICAgIHVpQmFja2dyb3VuZD17e1xuICAgICAgICAgIHRleHR1cmVNb2RlOiAnc3RyZXRjaCcsXG4gICAgICAgICAgdGV4dHVyZToge1xuICAgICAgICAgICAgc3JjOiBnZXRUaGVtZSgpXG4gICAgICAgICAgfSxcbiAgICAgICAgICB1dnM6IGdldEltYWdlQXRsYXNNYXBwaW5nKHNlY3Rpb24pXG4gICAgICAgIH19XG4gICAgICAgIG9uTW91c2VEb3duPXsoKSA9PiB7XG4gICAgICAgICAgaGFuZGxlRGlhbG9nQ2xpY2soKVxuICAgICAgICB9fVxuICAgICAgLz5cblxuICAgICAgPFVpRW50aXR5XG4gICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgZGlzcGxheTogZGlzcGxheVBvcnRyYWl0KCkgPyAnZmxleCcgOiAnbm9uZScsXG4gICAgICAgICAgd2lkdGg6IHBvcnRyYWl0V2lkdGgoKSxcbiAgICAgICAgICBoZWlnaHQ6IHBvcnRyYWl0SGVpZ2h0KCksXG4gICAgICAgICAgcG9zaXRpb25UeXBlOiAnYWJzb2x1dGUnLFxuICAgICAgICAgIHBvc2l0aW9uOiB7IGJvdHRvbTogcG9zaXRpb25Qb3J0YWl0WSgpLCBsZWZ0OiBwb3NpdGlvblBvcnRhaXRYKCkgfVxuICAgICAgICB9fVxuICAgICAgICB1aUJhY2tncm91bmQ9e3tcbiAgICAgICAgICB0ZXh0dXJlTW9kZTogJ3N0cmV0Y2gnLFxuICAgICAgICAgIHRleHR1cmU6IHtcbiAgICAgICAgICAgIHNyYzogZ2V0UG9ydHJhaXQoKVxuICAgICAgICAgIH1cbiAgICAgICAgICAvLyB1dnM6IGdldEltYWdlQXRsYXNNYXBwaW5nKHNraXBCdXR0b25TZWN0aW9uKSxcbiAgICAgICAgfX1cbiAgICAgIC8+XG5cbiAgICAgIDxVaUVudGl0eVxuICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgIGRpc3BsYXk6IGRpc3BsYXlJbWFnZSgpID8gJ2ZsZXgnIDogJ25vbmUnLFxuICAgICAgICAgIHdpZHRoOiBpbWFnZVdpZHRoKCksXG4gICAgICAgICAgaGVpZ2h0OiBpbWFnZUhlaWdodCgpLFxuICAgICAgICAgIHBvc2l0aW9uVHlwZTogJ2Fic29sdXRlJyxcbiAgICAgICAgICBwb3NpdGlvbjogeyBib3R0b206IHBvc2l0aW9uSW1hZ2VZKCksIHJpZ2h0OiBwb3NpdGlvbkltYWdlWCgpIH1cbiAgICAgICAgfX1cbiAgICAgICAgdWlCYWNrZ3JvdW5kPXt7XG4gICAgICAgICAgdGV4dHVyZU1vZGU6ICdzdHJldGNoJyxcbiAgICAgICAgICB0ZXh0dXJlOiB7XG4gICAgICAgICAgICBzcmM6IGdldEltYWdlKClcbiAgICAgICAgICB9XG4gICAgICAgICAgLy8gdXZzOiBnZXRJbWFnZUF0bGFzTWFwcGluZyhza2lwQnV0dG9uU2VjdGlvbiksXG4gICAgICAgIH19XG4gICAgICAvPlxuXG4gICAgICA8VWlFbnRpdHlcbiAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICBkaXNwbGF5OiBkaXNwbGF5U2tpcGFibGUoKSA/ICdmbGV4JyA6ICdub25lJyxcbiAgICAgICAgICB3aWR0aDogMTUsXG4gICAgICAgICAgaGVpZ2h0OiAxNSxcbiAgICAgICAgICBwb3NpdGlvblR5cGU6ICdhYnNvbHV0ZScsXG4gICAgICAgICAgcG9zaXRpb246IHsgYm90dG9tOiAnNyUnLCBsZWZ0OiAnMjUlJyB9XG4gICAgICAgIH19XG4gICAgICAgIHVpQmFja2dyb3VuZD17e1xuICAgICAgICAgIHRleHR1cmVNb2RlOiAnc3RyZXRjaCcsXG4gICAgICAgICAgdGV4dHVyZToge1xuICAgICAgICAgICAgc3JjOiBnZXRUaGVtZSgpXG4gICAgICAgICAgfSxcbiAgICAgICAgICB1dnM6IGdldEltYWdlQXRsYXNNYXBwaW5nKGdldFNraXBhYmxlVGhlbWUoKSlcbiAgICAgICAgfX1cbiAgICAgICAgb25Nb3VzZURvd249eygpID0+IHtcbiAgICAgICAgICBza2lwRGlhbG9ncyhhY3RpdmVOUEMpXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxVaUVudGl0eVxuICAgICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICAgICAgICBwb3NpdGlvblR5cGU6ICdhYnNvbHV0ZScsXG4gICAgICAgICAgICBwb3NpdGlvbjogeyBsZWZ0OiAnMjE1JScgfVxuICAgICAgICAgIH19XG4gICAgICAgICAgdWlUZXh0PXt7XG4gICAgICAgICAgICB2YWx1ZTogJ1NraXAnLFxuICAgICAgICAgICAgY29sb3I6IGdldFRleHRDb2xvcigpLFxuICAgICAgICAgICAgZm9udFNpemU6IDEyXG4gICAgICAgICAgfX1cbiAgICAgICAgLz5cbiAgICAgIDwvVWlFbnRpdHk+XG5cbiAgICAgIDxVaUVudGl0eVxuICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgICAgICB3aWR0aDogMjQsXG4gICAgICAgICAgaGVpZ2h0OiAzNixcbiAgICAgICAgICBwb3NpdGlvblR5cGU6ICdhYnNvbHV0ZScsXG4gICAgICAgICAgcG9zaXRpb246IHsgYm90dG9tOiAnNSUnLCByaWdodDogJzIlJyB9XG4gICAgICAgIH19XG4gICAgICAgIHVpQmFja2dyb3VuZD17e1xuICAgICAgICAgIHRleHR1cmVNb2RlOiAnc3RyZXRjaCcsXG4gICAgICAgICAgdGV4dHVyZToge1xuICAgICAgICAgICAgc3JjOiBnZXRUaGVtZSgpXG4gICAgICAgICAgfSxcbiAgICAgICAgICB1dnM6IGdldEltYWdlQXRsYXNNYXBwaW5nKGdldExlZnRDbGlja1RoZW1lKCkpXG4gICAgICAgIH19XG4gICAgICAvPlxuXG4gICAgICA8VWlFbnRpdHlcbiAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICBhbGlnblNlbGY6ICdmbGV4LXN0YXJ0JyxcbiAgICAgICAgICBhbGlnbkl0ZW1zOiAnZmxleC1zdGFydCcsXG4gICAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdmbGV4LXN0YXJ0JyxcbiAgICAgICAgICBmbGV4RGlyZWN0aW9uOiAncm93JyxcbiAgICAgICAgICBwb3NpdGlvbjogZ2V0VGV4dFBvc2l0aW9uKClcbiAgICAgICAgfX1cbiAgICAgICAgdWlUZXh0PXt7XG4gICAgICAgICAgdmFsdWU6IGdldFRleHQoKSxcbiAgICAgICAgICBjb2xvcjogZ2V0VGV4dENvbG9yKCksXG4gICAgICAgICAgZm9udFNpemU6IGdldEZvbnRTaXplKCksXG4gICAgICAgICAgdGV4dEFsaWduOiAnbWlkZGxlLWxlZnQnXG4gICAgICAgIH19XG4gICAgICA+PC9VaUVudGl0eT5cblxuICAgICAgPFVpRW50aXR5XG4gICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgd2lkdGg6ICczMDBweCcsXG4gICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICAgICAgZmxleERpcmVjdGlvbjogJ3JvdycsXG4gICAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdzcGFjZS1iZXR3ZWVuJyxcbiAgICAgICAgICBkaXNwbGF5OiBkaXNwbGF5Rmlyc3RCdXR0b25Db250YWluZXIoKSA/ICdmbGV4JyA6ICdub25lJyxcbiAgICAgICAgICBwb3NpdGlvbjogeyB0b3A6ICcyMCUnIH1cbiAgICAgICAgfX1cbiAgICAgID5cbiAgICAgICAgey8qIEJ1dHRvbjEgKFRvcC1MZWZ0KSAqL31cbiAgICAgICAgPFVpRW50aXR5XG4gICAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICAgIHdpZHRoOiAnMTUwcHgnLFxuICAgICAgICAgICAgaGVpZ2h0OiAnNDVweCcsXG4gICAgICAgICAgICBtYXJnaW46IHsgcmlnaHQ6ICc1JScgfSxcbiAgICAgICAgICAgIGZsZXhEaXJlY3Rpb246ICdyb3cnLFxuICAgICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICAgICAgICBqdXN0aWZ5Q29udGVudDogJ2ZsZXgtc3RhcnQnLFxuICAgICAgICAgICAgYWxpZ25Db250ZW50OiAnZmxleC1zdGFydCcsXG4gICAgICAgICAgICBkaXNwbGF5OiBkaXNwbGF5QnV0dG9uKDEpID8gJ2ZsZXgnIDogJ25vbmUnXG4gICAgICAgICAgfX1cbiAgICAgICAgICB1aUJhY2tncm91bmQ9e3tcbiAgICAgICAgICAgIHRleHR1cmVNb2RlOiAnc3RyZXRjaCcsXG4gICAgICAgICAgICB0ZXh0dXJlOiB7XG4gICAgICAgICAgICAgIHNyYzogZ2V0VGhlbWUoKVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHV2czogZ2V0SW1hZ2VBdGxhc01hcHBpbmcoZGFya0J1dHRvblNlY3Rpb24pXG4gICAgICAgICAgfX1cbiAgICAgICAgICB1aVRleHQ9e3sgdmFsdWU6IGdldEJ1dHRvblRleHQoMCksIGZvbnRTaXplOiAxNiB9fVxuICAgICAgICAgIG9uTW91c2VEb3duPXsoKSA9PiB7XG4gICAgICAgICAgICBidXR0b25DbGljaygwKVxuICAgICAgICAgIH19XG4gICAgICAgID5cbiAgICAgICAgICA8VWlFbnRpdHlcbiAgICAgICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgICAgIHdpZHRoOiAnMjVweCcsXG4gICAgICAgICAgICAgIGhlaWdodDogJzI1cHgnLFxuICAgICAgICAgICAgICBwb3NpdGlvbjogeyBsZWZ0OiA1IH1cbiAgICAgICAgICAgIH19XG4gICAgICAgICAgICB1aUJhY2tncm91bmQ9e3tcbiAgICAgICAgICAgICAgdGV4dHVyZU1vZGU6ICdzdHJldGNoJyxcbiAgICAgICAgICAgICAgdGV4dHVyZToge1xuICAgICAgICAgICAgICAgIHNyYzogZ2V0VGhlbWUoKVxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB1dnM6IGdldEltYWdlQXRsYXNNYXBwaW5nKHNlY29uZGFyeUJ1dHRvblNlY3Rpb24pXG4gICAgICAgICAgICB9fVxuICAgICAgICAgID48L1VpRW50aXR5PlxuICAgICAgICA8L1VpRW50aXR5PlxuXG4gICAgICAgIHsvKiBCdXR0b24yIChUb3AtUmlnaHQpICovfVxuICAgICAgICA8VWlFbnRpdHlcbiAgICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgICAgd2lkdGg6ICcxNTBweCcsXG4gICAgICAgICAgICBoZWlnaHQ6ICc0NXB4JyxcbiAgICAgICAgICAgIGZsZXhEaXJlY3Rpb246ICdyb3cnLFxuICAgICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICAgICAgICBqdXN0aWZ5Q29udGVudDogJ2ZsZXgtc3RhcnQnLFxuICAgICAgICAgICAgYWxpZ25Db250ZW50OiAnZmxleC1zdGFydCcsXG4gICAgICAgICAgICBkaXNwbGF5OiBkaXNwbGF5QnV0dG9uKDIpID8gJ2ZsZXgnIDogJ25vbmUnXG4gICAgICAgICAgfX1cbiAgICAgICAgICB1aUJhY2tncm91bmQ9e3tcbiAgICAgICAgICAgIHRleHR1cmVNb2RlOiAnc3RyZXRjaCcsXG4gICAgICAgICAgICB0ZXh0dXJlOiB7XG4gICAgICAgICAgICAgIHNyYzogZ2V0VGhlbWUoKVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHV2czogZ2V0SW1hZ2VBdGxhc01hcHBpbmcocmVkQnV0dG9uU2VjdGlvbilcbiAgICAgICAgICB9fVxuICAgICAgICAgIHVpVGV4dD17eyB2YWx1ZTogZ2V0QnV0dG9uVGV4dCgxKSwgZm9udFNpemU6IDE2IH19XG4gICAgICAgICAgb25Nb3VzZURvd249eygpID0+IHtcbiAgICAgICAgICAgIGJ1dHRvbkNsaWNrKDEpXG4gICAgICAgICAgfX1cbiAgICAgICAgPlxuICAgICAgICAgIDxVaUVudGl0eVxuICAgICAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICAgICAgd2lkdGg6ICcyNXB4JyxcbiAgICAgICAgICAgICAgaGVpZ2h0OiAnMjVweCcsXG4gICAgICAgICAgICAgIHBvc2l0aW9uOiB7IGxlZnQ6IDUgfVxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAgIHVpQmFja2dyb3VuZD17e1xuICAgICAgICAgICAgICB0ZXh0dXJlTW9kZTogJ3N0cmV0Y2gnLFxuICAgICAgICAgICAgICB0ZXh0dXJlOiB7XG4gICAgICAgICAgICAgICAgc3JjOiBnZXRUaGVtZSgpXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHV2czogZ2V0SW1hZ2VBdGxhc01hcHBpbmcocHJpbWFyeUJ1dHRvblNlY3Rpb24pXG4gICAgICAgICAgICB9fVxuICAgICAgICAgID48L1VpRW50aXR5PlxuICAgICAgICA8L1VpRW50aXR5PlxuICAgICAgPC9VaUVudGl0eT5cblxuICAgICAgey8qIFNlY29uZCByb3cgb2YgYnV0dG9ucyAqL31cbiAgICAgIDxVaUVudGl0eVxuICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgIHdpZHRoOiAnMzAwcHgnLFxuICAgICAgICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICAgICAgICAgIGZsZXhEaXJlY3Rpb246ICdyb3cnLFxuICAgICAgICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXG4gICAgICAgICAgbWFyZ2luOiB7IHRvcDogMjAgfSxcbiAgICAgICAgICBkaXNwbGF5OiBkaXNwbGF5U2Vjb25kQnV0dG9uQ29udGFpbmVyKCkgPyAnZmxleCcgOiAnbm9uZScsXG4gICAgICAgICAgcG9zaXRpb246IHsgdG9wOiAnMTUlJyB9XG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIHsvKiBCdXR0b24zICovfVxuICAgICAgICA8VWlFbnRpdHlcbiAgICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgICAgd2lkdGg6ICcxNTBweCcsXG4gICAgICAgICAgICBoZWlnaHQ6ICc0NXB4JyxcbiAgICAgICAgICAgIG1hcmdpbjogeyByaWdodDogJzUlJyB9LFxuICAgICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICAgICAgICBqdXN0aWZ5Q29udGVudDogJ2NlbnRlcicsXG4gICAgICAgICAgICBhbGlnbkNvbnRlbnQ6ICdmbGV4LXN0YXJ0JyxcbiAgICAgICAgICAgIGRpc3BsYXk6IGRpc3BsYXlCdXR0b24oMykgPyAnZmxleCcgOiAnbm9uZSdcbiAgICAgICAgICB9fVxuICAgICAgICAgIHVpQmFja2dyb3VuZD17e1xuICAgICAgICAgICAgdGV4dHVyZU1vZGU6ICdzdHJldGNoJyxcbiAgICAgICAgICAgIHRleHR1cmU6IHtcbiAgICAgICAgICAgICAgc3JjOiBnZXRUaGVtZSgpXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgdXZzOiBnZXRJbWFnZUF0bGFzTWFwcGluZyhkYXJrQnV0dG9uU2VjdGlvbilcbiAgICAgICAgICB9fVxuICAgICAgICAgIHVpVGV4dD17eyB2YWx1ZTogZ2V0QnV0dG9uVGV4dCgyKSwgZm9udFNpemU6IDE2IH19XG4gICAgICAgICAgb25Nb3VzZURvd249eygpID0+IHtcbiAgICAgICAgICAgIGJ1dHRvbkNsaWNrKDMpXG4gICAgICAgICAgfX1cbiAgICAgICAgPjwvVWlFbnRpdHk+XG5cbiAgICAgICAgey8qIEJ1dHRvbjQgKi99XG4gICAgICAgIDxVaUVudGl0eVxuICAgICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgICB3aWR0aDogJzE1MHB4JyxcbiAgICAgICAgICAgIGhlaWdodDogJzQ1cHgnLFxuICAgICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICAgICAgICBqdXN0aWZ5Q29udGVudDogJ2NlbnRlcicsXG4gICAgICAgICAgICBhbGlnbkNvbnRlbnQ6ICdmbGV4LXN0YXJ0JyxcbiAgICAgICAgICAgIGRpc3BsYXk6IGRpc3BsYXlCdXR0b24oNCkgPyAnZmxleCcgOiAnbm9uZSdcbiAgICAgICAgICB9fVxuICAgICAgICAgIHVpQmFja2dyb3VuZD17e1xuICAgICAgICAgICAgdGV4dHVyZU1vZGU6ICdzdHJldGNoJyxcbiAgICAgICAgICAgIHRleHR1cmU6IHtcbiAgICAgICAgICAgICAgc3JjOiBnZXRUaGVtZSgpXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgdXZzOiBnZXRJbWFnZUF0bGFzTWFwcGluZyhkYXJrQnV0dG9uU2VjdGlvbilcbiAgICAgICAgICB9fVxuICAgICAgICAgIHVpVGV4dD17eyB2YWx1ZTogZ2V0QnV0dG9uVGV4dCgzKSwgZm9udFNpemU6IDE2IH19XG4gICAgICAgICAgb25Nb3VzZURvd249eygpID0+IHtcbiAgICAgICAgICAgIGJ1dHRvbkNsaWNrKDQpXG4gICAgICAgICAgfX1cbiAgICAgICAgPjwvVWlFbnRpdHk+XG4gICAgICA8L1VpRW50aXR5PlxuICAgIDwvVWlFbnRpdHk+XG4gIClcbn1cbiJdfQ==
|
|
283
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdWkudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sUUFBUSxFQUFFLEVBQW1DLFFBQVEsRUFBRSxNQUFNLG9CQUFvQixDQUFBO0FBRXhGLE9BQU8sRUFDTCxXQUFXLEVBRVgsYUFBYSxFQUNiLGFBQWEsRUFDYiwyQkFBMkIsRUFDM0IsWUFBWSxFQUNaLGVBQWUsRUFDZiw0QkFBNEIsRUFDNUIsZUFBZSxFQUNmLGFBQWEsRUFDYixXQUFXLEVBQ1gsUUFBUSxFQUNSLG9CQUFvQixFQUNwQixpQkFBaUIsRUFDakIsV0FBVyxFQUNYLGdCQUFnQixFQUNoQixPQUFPLEVBQ1AsWUFBWSxFQUNaLGVBQWUsRUFDZixRQUFRLEVBQ1IsaUJBQWlCLEVBQ2pCLFdBQVcsRUFDWCxVQUFVLEVBQ1YsY0FBYyxFQUNkLGFBQWEsRUFDYixjQUFjLEVBQ2QsY0FBYyxFQUNkLGdCQUFnQixFQUNoQixnQkFBZ0IsRUFHaEIsVUFBVSxFQUNWLFNBQVMsRUFDVCxXQUFXLEVBQ1osTUFBTSxVQUFVLENBQUE7QUFDakIsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzVELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxPQUFPLENBQUE7QUFFakMsTUFBTSxDQUFDLElBQUksVUFBVSxHQUFHLHVEQUF1RCxDQUFBO0FBQy9FLE1BQU0sQ0FBQyxJQUFJLFNBQVMsR0FBRyxzREFBc0QsQ0FBQTtBQUU3RSxNQUFNLENBQUMsSUFBSSxjQUFjLEdBQUcsdURBQXVELENBQUE7QUFFbkYsTUFBTSxDQUFDLElBQUksT0FBTyxHQUFHO0lBQ25CLEdBQUcsNEJBQTRCLENBQUMsV0FBVyxDQUFDLFNBQVM7SUFDckQsV0FBVyxFQUFFLDRCQUE0QixDQUFDLFdBQVc7SUFDckQsVUFBVSxFQUFFLDRCQUE0QixDQUFDLFVBQVU7Q0FDcEQsQ0FBQTtBQUVELE1BQU0sQ0FBQyxJQUFJLGlCQUFpQixHQUFHO0lBQzdCLEdBQUcsNEJBQTRCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDekMsV0FBVyxFQUFFLDRCQUE0QixDQUFDLFdBQVc7SUFDckQsVUFBVSxFQUFFLDRCQUE0QixDQUFDLFVBQVU7Q0FDcEQsQ0FBQTtBQUVELE1BQU0sQ0FBQyxJQUFJLHNCQUFzQixHQUFHO0lBQ2xDLEdBQUcsNEJBQTRCLENBQUMsT0FBTyxDQUFDLE1BQU07SUFDOUMsV0FBVyxFQUFFLDRCQUE0QixDQUFDLFdBQVc7SUFDckQsVUFBVSxFQUFFLDRCQUE0QixDQUFDLFVBQVU7Q0FDcEQsQ0FBQTtBQUVELE1BQU0sQ0FBQyxJQUFJLGdCQUFnQixHQUFHO0lBQzVCLEdBQUcsNEJBQTRCLENBQUMsS0FBSyxDQUFDLFVBQVU7SUFDaEQsV0FBVyxFQUFFLDRCQUE0QixDQUFDLFdBQVc7SUFDckQsVUFBVSxFQUFFLDRCQUE0QixDQUFDLFVBQVU7Q0FDcEQsQ0FBQTtBQUVELE1BQU0sQ0FBQyxJQUFJLHNCQUFzQixHQUFHO0lBQ2xDLEdBQUcsNEJBQTRCLENBQUMsS0FBSyxDQUFDLFNBQVM7SUFDL0MsV0FBVyxFQUFFLDRCQUE0QixDQUFDLFdBQVc7SUFDckQsVUFBVSxFQUFFLDRCQUE0QixDQUFDLFVBQVU7Q0FDcEQsQ0FBQTtBQUVELE1BQU0sQ0FBQyxJQUFJLG9CQUFvQixHQUFHO0lBQ2hDLEdBQUcsNEJBQTRCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDekMsV0FBVyxFQUFFLDRCQUE0QixDQUFDLFdBQVc7SUFDckQsVUFBVSxFQUFFLDRCQUE0QixDQUFDLFVBQVU7Q0FDcEQsQ0FBQTtBQUVELE1BQU0sQ0FBQyxJQUFJLHNCQUFzQixHQUFHO0lBQ2xDLEdBQUcsNEJBQTRCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDekMsV0FBVyxFQUFFLDRCQUE0QixDQUFDLFdBQVc7SUFDckQsVUFBVSxFQUFFLDRCQUE0QixDQUFDLFVBQVU7Q0FDcEQsQ0FBQTtBQUVELE1BQU0sQ0FBQyxJQUFJLGlCQUFpQixHQUFHO0lBQzdCLEdBQUcsNEJB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QkFDN0MsRUFDRCxNQUFNLEVBQUUsRUFBRSxLQUFLLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUNwRSxXQUFXLEVBQUUsR0FBRyxFQUFFO29CQUNoQixXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUE7Z0JBQ2hCLENBQUMsR0FDUyxDQUNILENBQ0YsQ0FDWixDQUFBO0FBQ0gsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29sb3I0IH0gZnJvbSAnQGRjbC9zZGsvbWF0aCdcbmltcG9ydCBSZWFjdEVjcywgeyBCdXR0b24sIExhYmVsLCBSZWFjdEVjc1JlbmRlcmVyLCBVaUVudGl0eSB9IGZyb20gJ0BkY2wvc2RrL3JlYWN0LWVjcydcbmltcG9ydCB7IEVudGl0eSB9IGZyb20gJ0BkY2wvc2RrL2VjcydcbmltcG9ydCB7XG4gIGJ1dHRvbkNsaWNrLFxuICBjb25maXJtVGV4dCxcbiAgZGlzcGxheUJ1dHRvbixcbiAgZGlzcGxheURpYWxvZyxcbiAgZGlzcGxheUZpcnN0QnV0dG9uQ29udGFpbmVyLFxuICBkaXNwbGF5SW1hZ2UsXG4gIGRpc3BsYXlQb3J0cmFpdCxcbiAgZGlzcGxheVNlY29uZEJ1dHRvbkNvbnRhaW5lcixcbiAgZGlzcGxheVNraXBhYmxlLFxuICBnZXRCdXR0b25UZXh0LFxuICBnZXRGb250U2l6ZSxcbiAgZ2V0SW1hZ2UsXG4gIGdldEltYWdlQXRsYXNNYXBwaW5nLFxuICBnZXRMZWZ0Q2xpY2tUaGVtZSxcbiAgZ2V0UG9ydHJhaXQsXG4gIGdldFNraXBhYmxlVGhlbWUsXG4gIGdldFRleHQsXG4gIGdldFRleHRDb2xvcixcbiAgZ2V0VGV4dFBvc2l0aW9uLFxuICBnZXRUaGVtZSxcbiAgaGFuZGxlRGlhbG9nQ2xpY2ssXG4gIGltYWdlSGVpZ2h0LFxuICBpbWFnZVdpZHRoLFxuICBwb3J0cmFpdEhlaWdodCxcbiAgcG9ydHJhaXRXaWR0aCxcbiAgcG9zaXRpb25JbWFnZVgsXG4gIHBvc2l0aW9uSW1hZ2VZLFxuICBwb3NpdGlvblBvcnRhaXRYLFxuICBwb3NpdGlvblBvcnRhaXRZLFxuICBwb3NpdGlvblRleHRYLFxuICBwb3NpdGlvblRleHRZLFxuICByZWFsSGVpZ2h0LFxuICByZWFsV2lkdGgsXG4gIHNraXBEaWFsb2dzXG59IGZyb20gJy4vZGlhbG9nJ1xuaW1wb3J0IHsgc291cmNlc0NvbXBvbmVudHNDb29yZGluYXRlcyB9IGZyb20gJy4vdWlSZXNvdXJjZXMnXG5pbXBvcnQgeyBhY3RpdmVOUEMgfSBmcm9tICcuL25wYydcblxuZXhwb3J0IGxldCBsaWdodFRoZW1lID0gJ2h0dHBzOi8vZGVjZW50cmFsYW5kLm9yZy9pbWFnZXMvdWkvbGlnaHQtYXRsYXMtdjMucG5nJ1xuZXhwb3J0IGxldCBkYXJrVGhlbWUgPSAnaHR0cHM6Ly9kZWNlbnRyYWxhbmQub3JnL2ltYWdlcy91aS9kYXJrLWF0bGFzLXYzLnBuZydcblxuZXhwb3J0IGxldCBidWJibGVzVGV4dHVyZSA9ICdodHRwczovL2RlY2VudHJhbGFuZC5vcmcvaW1hZ2VzL3VpL2RpYWxvZy1idWJibGVzLnBuZydcblxuZXhwb3J0IGxldCBzZWN0aW9uID0ge1xuICAuLi5zb3VyY2VzQ29tcG9uZW50c0Nvb3JkaW5hdGVzLmJhY2tncm91bmRzLk5QQ0RpYWxvZyxcbiAgYXRsYXNIZWlnaHQ6IHNvdXJjZXNDb21wb25lbnRzQ29vcmRpbmF0ZXMuYXRsYXNIZWlnaHQsXG4gIGF0bGFzV2lkdGg6IHNvdXJjZXNDb21wb25lbnRzQ29vcmRpbmF0ZXMuYXRsYXNXaWR0aFxufVxuXG5leHBvcnQgbGV0IHNraXBCdXR0b25TZWN0aW9uID0ge1xuICAuLi5zb3VyY2VzQ29tcG9uZW50c0Nvb3JkaW5hdGVzLmJ1dHRvbnMuRixcbiAgYXRsYXNIZWlnaHQ6IHNvdXJjZXNDb21wb25lbnRzQ29vcmRpbmF0ZXMuYXRsYXNIZWlnaHQsXG4gIGF0bGFzV2lkdGg6IHNvdXJjZXNDb21wb25lbnRzQ29vcmRpbmF0ZXMuYXRsYXNXaWR0aFxufVxuXG5leHBvcnQgbGV0IHNraXBCdXR0b25TZWN0aW9uQmxhY2sgPSB7XG4gIC4uLnNvdXJjZXNDb21wb25lbnRzQ29vcmRpbmF0ZXMuYnV0dG9ucy5GQmxhY2ssXG4gIGF0bGFzSGVpZ2h0OiBzb3VyY2VzQ29tcG9uZW50c0Nvb3JkaW5hdGVzLmF0bGFzSGVpZ2h0LFxuICBhdGxhc1dpZHRoOiBzb3VyY2VzQ29tcG9uZW50c0Nvb3JkaW5hdGVzLmF0bGFzV2lkdGhcbn1cblxuZXhwb3J0IGxldCBsZWZ0Q2xpY2tTZWN0aW9uID0ge1xuICAuLi5zb3VyY2VzQ29tcG9uZW50c0Nvb3JkaW5hdGVzLmljb25zLkNsaWNrV2hpdGUsXG4gIGF0bGFzSGVpZ2h0OiBzb3VyY2VzQ29tcG9uZW50c0Nvb3JkaW5hdGVzLmF0bGFzSGVpZ2h0LFxuICBhdGxhc1dpZHRoOiBzb3VyY2VzQ29tcG9uZW50c0Nvb3JkaW5hdGVzLmF0bGFzV2lkdGhcbn1cblxuZXhwb3J0IGxldCBsZWZ0Q2xpY2tTZWN0aW9uYkJsYWNrID0ge1xuICAuLi5zb3VyY2VzQ29tcG9uZW50c0Nvb3JkaW5hdGVzLmljb25zLkNsaWNrRGFyayxcbiAgYXRsYXNIZWlnaHQ6IHNvdXJjZXNDb21wb25lbnRzQ29vcmRpbmF0ZXMuYXRsYXNIZWlnaHQsXG4gIGF0bGFzV2lkdGg6IHNvdXJjZXNDb21wb25lbnRzQ29vcmRpbmF0ZXMuYXRsYXNXaWR0aFxufVxuXG5leHBvcnQgbGV0IHByaW1hcnlCdXR0b25TZWN0aW9uID0ge1xuICAuLi5zb3VyY2VzQ29tcG9uZW50c0Nvb3JkaW5hdGVzLmJ1dHRvbnMuRSxcbiAgYXRsYXNIZWlnaHQ6IHNvdXJjZXNDb21wb25lbnRzQ29vcmRpbmF0ZXMuYXRsYXNIZWlnaHQsXG4gIGF0bGFzV2lkdGg6IHNvdXJjZXNDb21wb25lbnRzQ29vcmRpbmF0ZXMuYXRsYXNXaWR0aFxufVxuXG5leHBvcnQgbGV0IHNlY29uZGFyeUJ1dHRvblNlY3Rpb24gPSB7XG4gIC4uLnNvdXJjZXNDb21wb25lbnRzQ29vcmRpbmF0ZXMuYnV0dG9ucy5GLFxuICBhdGxhc0hlaWdodDogc291cmNlc0NvbXBvbmVudHNDb29yZGluYXRlcy5hdGxhc0hlaWdodCxcbiAgYXRsYXNXaWR0aDogc291cmNlc0NvbXBvbmVudHNDb29yZGluYXRlcy5hdGxhc1dpZHRoXG59XG5cbmV4cG9ydCBsZXQgZGFya0J1dHRvblNlY3Rpb24gPSB7XG4gIC4uLnNvdXJjZXNDb21wb25lbnRzQ29vcmRpbmF0ZXMuYnV0dG9ucy5idXR0b25GLFxuICBhdGxhc0hlaWdodDogc291cmNlc0NvbXBvbmVudHNDb29yZGluYXRlcy5hdGxhc0hlaWdodCxcbiAgYXRsYXNXaWR0aDogc291cmNlc0NvbXBvbmVudHNDb29yZGluYXRlcy5hdGxhc1dpZHRoXG59XG5cbmV4cG9ydCBsZXQgcmVkQnV0dG9uU2VjdGlvbiA9IHtcbiAgLi4uc291cmNlc0NvbXBvbmVudHNDb29yZGluYXRlcy5idXR0b25zLmJ1dHRvbkUsXG4gIGF0bGFzSGVpZ2h0OiBzb3VyY2VzQ29tcG9uZW50c0Nvb3JkaW5hdGVzLmF0bGFzSGVpZ2h0LFxuICBhdGxhc1dpZHRoOiBzb3VyY2VzQ29tcG9uZW50c0Nvb3JkaW5hdGVzLmF0bGFzV2lkdGhcbn1cblxubGV0IG1vZGFsU2NhbGUgPSAxXG5sZXQgbW9kZWxGb250U2l6ZVNjYWxlID0gMVxubGV0IG1vZGFsVGV4dFdyYXBTY2FsZSA9IDFcblxuZXhwb3J0IGZ1bmN0aW9uIHNldHVwTlBDVWlTY2FsaW5nKGluTW9kYWxTY2FsZTogbnVtYmVyLCBpbkZvbnRTaXplOiBudW1iZXIsIGluTW9kYWxUZXh0V3JhcFNjYWxlOiBudW1iZXIpIHtcbiAgbW9kYWxTY2FsZSA9IGluTW9kYWxTY2FsZVxuICBtb2RlbEZvbnRTaXplU2NhbGUgPSBpbkZvbnRTaXplXG4gIG1vZGFsVGV4dFdyYXBTY2FsZSA9IGluTW9kYWxUZXh0V3JhcFNjYWxlXG4gIGNvbnNvbGUubG9nKFxuICAgICdOUEMtVE9PTEtJVCcsXG4gICAgJ1NjYWxlIFVJOicsXG4gICAgbW9kYWxTY2FsZSxcbiAgICAnVGV4dEZvbnRTaXplOicsXG4gICAgbW9kZWxGb250U2l6ZVNjYWxlLFxuICAgICdUZXh0V3JhcFNjYWxpbmc6JyxcbiAgICBtb2RhbFRleHRXcmFwU2NhbGVcbiAgKVxufVxuXG5mdW5jdGlvbiBnZXRTY2FsZWRTaXplKHNpemU6IG51bWJlcik6IG51bWJlciB7XG4gIHJldHVybiBzaXplICogbW9kYWxTY2FsZVxufVxuZnVuY3Rpb24gZ2V0U2NhbGVkRm9udFNpemUoc2l6ZTogbnVtYmVyKTogbnVtYmVyIHtcbiAgcmV0dXJuIHNpemUgKiBtb2RlbEZvbnRTaXplU2NhbGVcbn1cbmZ1bmN0aW9uIGdldFNjYWxlZFRleHRXcmFwKHNpemU6IG51bWJlcik6IG51bWJlciB7XG4gIHJldHVybiBzaXplICogbW9kYWxUZXh0V3JhcFNjYWxlXG59XG5cbmV4cG9ydCBjb25zdCBOcGNVdGlsc1VpID0gKCkgPT4ge1xuICBjb25zdCB3aWR0aCA9IGdldFNjYWxlZFNpemUocmVhbFdpZHRoKDcwMCkpXG4gIGNvbnN0IGhlaWdodCA9IGdldFNjYWxlZFNpemUocmVhbEhlaWdodCgyMjUpKVxuXG4gIHJldHVybiAoXG4gICAgPFVpRW50aXR5XG4gICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICBkaXNwbGF5OiBkaXNwbGF5RGlhbG9nKCkgPyAnZmxleCcgOiAnbm9uZScsXG4gICAgICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxuICAgICAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcbiAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdjZW50ZXInLFxuICAgICAgICBwb3NpdGlvblR5cGU6ICdhYnNvbHV0ZScsXG4gICAgICAgIHBvc2l0aW9uOiB7IGJvdHRvbTogJzE1JScsIGxlZnQ6ICc1MCUnIH0sXG4gICAgICAgIG1hcmdpbjogeyB0b3A6IC1oZWlnaHQgLyAyLCBsZWZ0OiAtd2lkdGggLyAyIH0sXG4gICAgICAgIHdpZHRoLFxuICAgICAgICBoZWlnaHRcbiAgICAgIH19XG4gICAgPlxuICAgICAgPFVpRW50aXR5XG4gICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgcG9zaXRpb25UeXBlOiAnYWJzb2x1dGUnLFxuICAgICAgICAgIHBvc2l0aW9uOiB7IHRvcDogMCwgbGVmdDogMCB9LFxuICAgICAgICAgIHdpZHRoOiAnMTAwJScsXG4gICAgICAgICAgaGVpZ2h0OiAnMTAwJSdcbiAgICAgICAgfX1cbiAgICAgICAgdWlCYWNrZ3JvdW5kPXt7XG4gICAgICAgICAgdGV4dHVyZU1vZGU6ICdzdHJldGNoJyxcbiAgICAgICAgICB0ZXh0dXJlOiB7XG4gICAgICAgICAgICBzcmM6IGdldFRoZW1lKClcbiAgICAgICAgICB9LFxuICAgICAgICAgIHV2czogZ2V0SW1hZ2VBdGxhc01hcHBpbmcoc2VjdGlvbilcbiAgICAgICAgfX1cbiAgICAgICAgb25Nb3VzZURvd249eygpID0+IHtcbiAgICAgICAgICBoYW5kbGVEaWFsb2dDbGljaygpXG4gICAgICAgIH19XG4gICAgICAvPlxuXG4gICAgICA8VWlFbnRpdHlcbiAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICBkaXNwbGF5OiBkaXNwbGF5UG9ydHJhaXQoKSA/ICdmbGV4JyA6ICdub25lJyxcbiAgICAgICAgICB3aWR0aDogZ2V0U2NhbGVkU2l6ZShwb3J0cmFpdFdpZHRoKCkpLFxuICAgICAgICAgIGhlaWdodDogZ2V0U2NhbGVkU2l6ZShwb3J0cmFpdEhlaWdodCgpKSxcbiAgICAgICAgICBwb3NpdGlvblR5cGU6ICdhYnNvbHV0ZScsXG4gICAgICAgICAgcG9zaXRpb246IHtcbiAgICAgICAgICAgIGJvdHRvbTogZ2V0U2NhbGVkU2l6ZShwb3NpdGlvblBvcnRhaXRZKCkpLFxuICAgICAgICAgICAgbGVmdDogZ2V0U2NhbGVkU2l6ZShwb3NpdGlvblBvcnRhaXRYKCkpXG4gICAgICAgICAgfVxuICAgICAgICB9fVxuICAgICAgICB1aUJhY2tncm91bmQ9e3tcbiAgICAgICAgICB0ZXh0dXJlTW9kZTogJ3N0cmV0Y2gnLFxuICAgICAgICAgIHRleHR1cmU6IHtcbiAgICAgICAgICAgIHNyYzogZ2V0UG9ydHJhaXQoKVxuICAgICAgICAgIH1cbiAgICAgICAgICAvLyB1dnM6IGdldEltYWdlQXRsYXNNYXBwaW5nKHNraXBCdXR0b25TZWN0aW9uKSxcbiAgICAgICAgfX1cbiAgICAgIC8+XG5cbiAgICAgIDxVaUVudGl0eVxuICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgIGRpc3BsYXk6IGRpc3BsYXlJbWFnZSgpID8gJ2ZsZXgnIDogJ25vbmUnLFxuICAgICAgICAgIHdpZHRoOiBnZXRTY2FsZWRTaXplKGltYWdlV2lkdGgoKSksXG4gICAgICAgICAgaGVpZ2h0OiBnZXRTY2FsZWRTaXplKGltYWdlSGVpZ2h0KCkpLFxuICAgICAgICAgIHBvc2l0aW9uVHlwZTogJ2Fic29sdXRlJyxcbiAgICAgICAgICBwb3NpdGlvbjogeyBib3R0b206IHBvc2l0aW9uSW1hZ2VZKCksIHJpZ2h0OiBwb3NpdGlvbkltYWdlWCgpIH1cbiAgICAgICAgfX1cbiAgICAgICAgdWlCYWNrZ3JvdW5kPXt7XG4gICAgICAgICAgdGV4dHVyZU1vZGU6ICdzdHJldGNoJyxcbiAgICAgICAgICB0ZXh0dXJlOiB7XG4gICAgICAgICAgICBzcmM6IGdldEltYWdlKClcbiAgICAgICAgICB9XG4gICAgICAgICAgLy8gdXZzOiBnZXRJbWFnZUF0bGFzTWFwcGluZyhza2lwQnV0dG9uU2VjdGlvbiksXG4gICAgICAgIH19XG4gICAgICAvPlxuXG4gICAgICA8VWlFbnRpdHlcbiAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICBkaXNwbGF5OiBkaXNwbGF5U2tpcGFibGUoKSA/ICdmbGV4JyA6ICdub25lJyxcbiAgICAgICAgICB3aWR0aDogZ2V0U2NhbGVkU2l6ZSgxNSksXG4gICAgICAgICAgaGVpZ2h0OiBnZXRTY2FsZWRTaXplKDE1KSxcbiAgICAgICAgICBwb3NpdGlvblR5cGU6ICdhYnNvbHV0ZScsXG4gICAgICAgICAgcG9zaXRpb246IHsgYm90dG9tOiAnNyUnLCBsZWZ0OiAnMjUlJyB9XG4gICAgICAgIH19XG4gICAgICAgIHVpQmFja2dyb3VuZD17e1xuICAgICAgICAgIHRleHR1cmVNb2RlOiAnc3RyZXRjaCcsXG4gICAgICAgICAgdGV4dHVyZToge1xuICAgICAgICAgICAgc3JjOiBnZXRUaGVtZSgpXG4gICAgICAgICAgfSxcbiAgICAgICAgICB1dnM6IGdldEltYWdlQXRsYXNNYXBwaW5nKGdldFNraXBhYmxlVGhlbWUoKSlcbiAgICAgICAgfX1cbiAgICAgICAgb25Nb3VzZURvd249eygpID0+IHtcbiAgICAgICAgICBza2lwRGlhbG9ncyhhY3RpdmVOUEMpXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxVaUVudGl0eVxuICAgICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICAgICAgICBwb3NpdGlvblR5cGU6ICdhYnNvbHV0ZScsXG4gICAgICAgICAgICBwb3NpdGlvbjogeyBsZWZ0OiAnMjE1JScgfVxuICAgICAgICAgIH19XG4gICAgICAgICAgdWlUZXh0PXt7XG4gICAgICAgICAgICB2YWx1ZTogJ1NraXAnLFxuICAgICAgICAgICAgY29sb3I6IGdldFRleHRDb2xvcigpLFxuICAgICAgICAgICAgZm9udFNpemU6IGdldFNjYWxlZEZvbnRTaXplKDEyKVxuICAgICAgICAgIH19XG4gICAgICAgIC8+XG4gICAgICA8L1VpRW50aXR5PlxuXG4gICAgICA8VWlFbnRpdHlcbiAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICAgICAgd2lkdGg6IGdldFNjYWxlZFNpemUoMjQpLFxuICAgICAgICAgIGhlaWdodDogZ2V0U2NhbGVkU2l6ZSgzNiksXG4gICAgICAgICAgcG9zaXRpb25UeXBlOiAnYWJzb2x1dGUnLFxuICAgICAgICAgIHBvc2l0aW9uOiB7IGJvdHRvbTogJzUlJywgcmlnaHQ6ICcyJScgfVxuICAgICAgICB9fVxuICAgICAgICB1aUJhY2tncm91bmQ9e3tcbiAgICAgICAgICB0ZXh0dXJlTW9kZTogJ3N0cmV0Y2gnLFxuICAgICAgICAgIHRleHR1cmU6IHtcbiAgICAgICAgICAgIHNyYzogZ2V0VGhlbWUoKVxuICAgICAgICAgIH0sXG4gICAgICAgICAgdXZzOiBnZXRJbWFnZUF0bGFzTWFwcGluZyhnZXRMZWZ0Q2xpY2tUaGVtZSgpKVxuICAgICAgICB9fVxuICAgICAgLz5cblxuICAgICAgPFVpRW50aXR5XG4gICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgYWxpZ25TZWxmOiAnZmxleC1zdGFydCcsXG4gICAgICAgICAgYWxpZ25JdGVtczogJ2ZsZXgtc3RhcnQnLFxuICAgICAgICAgIGp1c3RpZnlDb250ZW50OiAnZmxleC1zdGFydCcsXG4gICAgICAgICAgZmxleERpcmVjdGlvbjogJ3JvdycsXG4gICAgICAgICAgcG9zaXRpb246IGdldFRleHRQb3NpdGlvbigpXG4gICAgICAgIH19XG4gICAgICAgIHVpVGV4dD17e1xuICAgICAgICAgIHZhbHVlOiBnZXRUZXh0KCksXG4gICAgICAgICAgY29sb3I6IGdldFRleHRDb2xvcigpLFxuICAgICAgICAgIGZvbnRTaXplOiBnZXRTY2FsZWRGb250U2l6ZShnZXRGb250U2l6ZSgpKSxcbiAgICAgICAgICB0ZXh0QWxpZ246ICdtaWRkbGUtbGVmdCdcbiAgICAgICAgfX1cbiAgICAgID48L1VpRW50aXR5PlxuXG4gICAgICA8VWlFbnRpdHlcbiAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICB3aWR0aDogZ2V0U2NhbGVkU2l6ZSgzMDApLFxuICAgICAgICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICAgICAgICAgIGZsZXhEaXJlY3Rpb246ICdyb3cnLFxuICAgICAgICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXG4gICAgICAgICAgZGlzcGxheTogZGlzcGxheUZpcnN0QnV0dG9uQ29udGFpbmVyKCkgPyAnZmxleCcgOiAnbm9uZScsXG4gICAgICAgICAgcG9zaXRpb246IHsgdG9wOiAnMjAlJyB9XG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIHsvKiBCdXR0b24xIChUb3AtTGVmdCkgKi99XG4gICAgICAgIDxVaUVudGl0eVxuICAgICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgICB3aWR0aDogZ2V0U2NhbGVkU2l6ZSgxNTApLFxuICAgICAgICAgICAgaGVpZ2h0OiBnZXRTY2FsZWRTaXplKDQ1KSxcbiAgICAgICAgICAgIG1hcmdpbjogeyByaWdodDogJzUlJyB9LFxuICAgICAgICAgICAgZmxleERpcmVjdGlvbjogJ3JvdycsXG4gICAgICAgICAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcbiAgICAgICAgICAgIGp1c3RpZnlDb250ZW50OiAnZmxleC1zdGFydCcsXG4gICAgICAgICAgICBhbGlnbkNvbnRlbnQ6ICdmbGV4LXN0YXJ0JyxcbiAgICAgICAgICAgIGRpc3BsYXk6IGRpc3BsYXlCdXR0b24oMSkgPyAnZmxleCcgOiAnbm9uZSdcbiAgICAgICAgICB9fVxuICAgICAgICAgIHVpQmFja2dyb3VuZD17e1xuICAgICAgICAgICAgdGV4dHVyZU1vZGU6ICdzdHJldGNoJyxcbiAgICAgICAgICAgIHRleHR1cmU6IHtcbiAgICAgICAgICAgICAgc3JjOiBnZXRUaGVtZSgpXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgdXZzOiBnZXRJbWFnZUF0bGFzTWFwcGluZyhkYXJrQnV0dG9uU2VjdGlvbilcbiAgICAgICAgICB9fVxuICAgICAgICAgIHVpVGV4dD17eyB2YWx1ZTogZ2V0QnV0dG9uVGV4dCgwKSwgZm9udFNpemU6IGdldFNjYWxlZEZvbnRTaXplKDE2KSB9fVxuICAgICAgICAgIG9uTW91c2VEb3duPXsoKSA9PiB7XG4gICAgICAgICAgICBidXR0b25DbGljaygwKVxuICAgICAgICAgIH19XG4gICAgICAgID5cbiAgICAgICAgICA8VWlFbnRpdHlcbiAgICAgICAgICAgIHVpVHJhbnNmb3JtPXt7XG4gICAgICAgICAgICAgIHdpZHRoOiBnZXRTY2FsZWRTaXplKDI1KSxcbiAgICAgICAgICAgICAgaGVpZ2h0OiBnZXRTY2FsZWRTaXplKDI1KSxcbiAgICAgICAgICAgICAgcG9zaXRpb246IHsgbGVmdDogZ2V0U2NhbGVkU2l6ZSg1KSB9XG4gICAgICAgICAgICB9fVxuICAgICAgICAgICAgdWlCYWNrZ3JvdW5kPXt7XG4gICAgICAgICAgICAgIHRleHR1cmVNb2RlOiAnc3RyZXRjaCcsXG4gICAgICAgICAgICAgIHRleHR1cmU6IHtcbiAgICAgICAgICAgICAgICBzcmM6IGdldFRoZW1lKClcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgdXZzOiBnZXRJbWFnZUF0bGFzTWFwcGluZyhzZWNvbmRhcnlCdXR0b25TZWN0aW9uKVxuICAgICAgICAgICAgfX1cbiAgICAgICAgICA+PC9VaUVudGl0eT5cbiAgICAgICAgPC9VaUVudGl0eT5cblxuICAgICAgICB7LyogQnV0dG9uMiAoVG9wLVJpZ2h0KSAqL31cbiAgICAgICAgPFVpRW50aXR5XG4gICAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICAgIHdpZHRoOiBnZXRTY2FsZWRTaXplKDE1MCksXG4gICAgICAgICAgICBoZWlnaHQ6IGdldFNjYWxlZFNpemUoNDUpLFxuICAgICAgICAgICAgZmxleERpcmVjdGlvbjogJ3JvdycsXG4gICAgICAgICAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcbiAgICAgICAgICAgIGp1c3RpZnlDb250ZW50OiAnZmxleC1zdGFydCcsXG4gICAgICAgICAgICBhbGlnbkNvbnRlbnQ6ICdmbGV4LXN0YXJ0JyxcbiAgICAgICAgICAgIGRpc3BsYXk6IGRpc3BsYXlCdXR0b24oMikgPyAnZmxleCcgOiAnbm9uZSdcbiAgICAgICAgICB9fVxuICAgICAgICAgIHVpQmFja2dyb3VuZD17e1xuICAgICAgICAgICAgdGV4dHVyZU1vZGU6ICdzdHJldGNoJyxcbiAgICAgICAgICAgIHRleHR1cmU6IHtcbiAgICAgICAgICAgICAgc3JjOiBnZXRUaGVtZSgpXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgdXZzOiBnZXRJbWFnZUF0bGFzTWFwcGluZyhyZWRCdXR0b25TZWN0aW9uKVxuICAgICAgICAgIH19XG4gICAgICAgICAgdWlUZXh0PXt7IHZhbHVlOiBnZXRCdXR0b25UZXh0KDEpLCBmb250U2l6ZTogZ2V0U2NhbGVkRm9udFNpemUoMTYpIH19XG4gICAgICAgICAgb25Nb3VzZURvd249eygpID0+IHtcbiAgICAgICAgICAgIGJ1dHRvbkNsaWNrKDEpXG4gICAgICAgICAgfX1cbiAgICAgICAgPlxuICAgICAgICAgIDxVaUVudGl0eVxuICAgICAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICAgICAgd2lkdGg6IGdldFNjYWxlZFNpemUoMjUpLFxuICAgICAgICAgICAgICBoZWlnaHQ6IGdldFNjYWxlZFNpemUoMjUpLFxuICAgICAgICAgICAgICBwb3NpdGlvbjogeyBsZWZ0OiBnZXRTY2FsZWRTaXplKDUpIH1cbiAgICAgICAgICAgIH19XG4gICAgICAgICAgICB1aUJhY2tncm91bmQ9e3tcbiAgICAgICAgICAgICAgdGV4dHVyZU1vZGU6ICdzdHJldGNoJyxcbiAgICAgICAgICAgICAgdGV4dHVyZToge1xuICAgICAgICAgICAgICAgIHNyYzogZ2V0VGhlbWUoKVxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB1dnM6IGdldEltYWdlQXRsYXNNYXBwaW5nKHByaW1hcnlCdXR0b25TZWN0aW9uKVxuICAgICAgICAgICAgfX1cbiAgICAgICAgICA+PC9VaUVudGl0eT5cbiAgICAgICAgPC9VaUVudGl0eT5cbiAgICAgIDwvVWlFbnRpdHk+XG5cbiAgICAgIHsvKiBTZWNvbmQgcm93IG9mIGJ1dHRvbnMgKi99XG4gICAgICA8VWlFbnRpdHlcbiAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICB3aWR0aDogZ2V0U2NhbGVkU2l6ZSgzMDApLFxuICAgICAgICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICAgICAgICAgIGZsZXhEaXJlY3Rpb246ICdyb3cnLFxuICAgICAgICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXG4gICAgICAgICAgbWFyZ2luOiB7IHRvcDogZ2V0U2NhbGVkU2l6ZSgyMCkgfSxcbiAgICAgICAgICBkaXNwbGF5OiBkaXNwbGF5U2Vjb25kQnV0dG9uQ29udGFpbmVyKCkgPyAnZmxleCcgOiAnbm9uZScsXG4gICAgICAgICAgcG9zaXRpb246IHsgdG9wOiAnMTUlJyB9XG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIHsvKiBCdXR0b24zICovfVxuICAgICAgICA8VWlFbnRpdHlcbiAgICAgICAgICB1aVRyYW5zZm9ybT17e1xuICAgICAgICAgICAgd2lkdGg6IGdldFNjYWxlZFNpemUoMTUwKSxcbiAgICAgICAgICAgIGhlaWdodDogZ2V0U2NhbGVkU2l6ZSg0NSksXG4gICAgICAgICAgICBtYXJnaW46IHsgcmlnaHQ6ICc1JScgfSxcbiAgICAgICAgICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxuICAgICAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdjZW50ZXInLFxuICAgICAgICAgICAgYWxpZ25Db250ZW50OiAnZmxleC1zdGFydCcsXG4gICAgICAgICAgICBkaXNwbGF5OiBkaXNwbGF5QnV0dG9uKDMpID8gJ2ZsZXgnIDogJ25vbmUnXG4gICAgICAgICAgfX1cbiAgICAgICAgICB1aUJhY2tncm91bmQ9e3tcbiAgICAgICAgICAgIHRleHR1cmVNb2RlOiAnc3RyZXRjaCcsXG4gICAgICAgICAgICB0ZXh0dXJlOiB7XG4gICAgICAgICAgICAgIHNyYzogZ2V0VGhlbWUoKVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHV2czogZ2V0SW1hZ2VBdGxhc01hcHBpbmcoZGFya0J1dHRvblNlY3Rpb24pXG4gICAgICAgICAgfX1cbiAgICAgICAgICB1aVRleHQ9e3sgdmFsdWU6IGdldEJ1dHRvblRleHQoMiksIGZvbnRTaXplOiBnZXRTY2FsZWRGb250U2l6ZSgxNikgfX1cbiAgICAgICAgICBvbk1vdXNlRG93bj17KCkgPT4ge1xuICAgICAgICAgICAgYnV0dG9uQ2xpY2soMylcbiAgICAgICAgICB9fVxuICAgICAgICA+PC9VaUVudGl0eT5cblxuICAgICAgICB7LyogQnV0dG9uNCAqL31cbiAgICAgICAgPFVpRW50aXR5XG4gICAgICAgICAgdWlUcmFuc2Zvcm09e3tcbiAgICAgICAgICAgIHdpZHRoOiBnZXRTY2FsZWRTaXplKDE1MCksXG4gICAgICAgICAgICBoZWlnaHQ6IGdldFNjYWxlZFNpemUoNDUpLFxuICAgICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICAgICAgICBqdXN0aWZ5Q29udGVudDogJ2NlbnRlcicsXG4gICAgICAgICAgICBhbGlnbkNvbnRlbnQ6ICdmbGV4LXN0YXJ0JyxcbiAgICAgICAgICAgIGRpc3BsYXk6IGRpc3BsYXlCdXR0b24oNCkgPyAnZmxleCcgOiAnbm9uZSdcbiAgICAgICAgICB9fVxuICAgICAgICAgIHVpQmFja2dyb3VuZD17e1xuICAgICAgICAgICAgdGV4dHVyZU1vZGU6ICdzdHJldGNoJyxcbiAgICAgICAgICAgIHRleHR1cmU6IHtcbiAgICAgICAgICAgICAgc3JjOiBnZXRUaGVtZSgpXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgdXZzOiBnZXRJbWFnZUF0bGFzTWFwcGluZyhkYXJrQnV0dG9uU2VjdGlvbilcbiAgICAgICAgICB9fVxuICAgICAgICAgIHVpVGV4dD17eyB2YWx1ZTogZ2V0QnV0dG9uVGV4dCgzKSwgZm9udFNpemU6IGdldFNjYWxlZEZvbnRTaXplKDE2KSB9fVxuICAgICAgICAgIG9uTW91c2VEb3duPXsoKSA9PiB7XG4gICAgICAgICAgICBidXR0b25DbGljayg0KVxuICAgICAgICAgIH19XG4gICAgICAgID48L1VpRW50aXR5PlxuICAgICAgPC9VaUVudGl0eT5cbiAgICA8L1VpRW50aXR5PlxuICApXG59XG4iXX0=
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dcl-npc-toolkit",
|
|
3
|
-
"version": "1.1.4-
|
|
3
|
+
"version": "1.1.4-20230620173040.commit-0c1ebfe",
|
|
4
4
|
"description": "A collection of tools for creating Non-Player-Characters (NPCs). These are capable of having conversations with the player, and play different animations.",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"typings": "./dist/index.d.ts",
|
|
@@ -33,5 +33,5 @@
|
|
|
33
33
|
"files": [
|
|
34
34
|
"dist"
|
|
35
35
|
],
|
|
36
|
-
"commit": "
|
|
36
|
+
"commit": "0c1ebfe9c331a4944d32d1f3f14e2ab6a958fa52"
|
|
37
37
|
}
|