-
Notifications
You must be signed in to change notification settings - Fork 0
/
code.js
181 lines (181 loc) · 52.3 KB
/
code.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
// This is a counter widget with buttons to increment and decrement the number.
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
const { widget } = figma;
const { useSyncedState, usePropertyMenu, AutoLayout, Text, SVG, Frame } = widget;
const resetSVG = `<svg width="15" height="15" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1 1L13.5 13.5" stroke="white" stroke-width="2"/>
<path d="M13.5 1L1 13.5" stroke="white" stroke-width="2"/>
</svg>`;
const flipSVG = `<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="12.5" cy="12.5" r="12.5" fill="black" fill-opacity="0.3"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M13.2669 7.24079C13.5141 7.27889 13.7593 7.33552 14.0006 7.41074L14.0054 7.41223C15.0636 7.74322 15.9908 8.41425 16.6507 9.32674L16.6558 9.33377C17.2126 10.1063 17.5534 11.0169 17.6465 11.9671L15.122 10.2368L14.476 11.2177L17.9244 13.5814L18.3685 13.8858L18.701 13.4583L21 10.5037L20.0927 9.76896L18.7467 11.4988C18.7376 11.4384 18.7276 11.3782 18.7168 11.3182C18.5431 10.3527 18.158 9.4349 17.5845 8.63704L17.5794 8.63001C16.7734 7.5117 15.6396 6.68899 14.3447 6.28287L14.34 6.28137C14.0438 6.18872 13.7427 6.11899 13.4392 6.07212C12.4143 5.91382 11.3623 6.01634 10.3772 6.37739L10.3718 6.37935C9.46319 6.71331 8.64596 7.25474 7.97849 7.95694C7.73074 8.21759 7.50362 8.50039 7.30012 8.80294C7.28287 8.8286 7.26579 8.85438 7.24888 8.88031L8.2038 9.53855L8.20839 9.53153C8.22071 9.51269 8.23315 9.49394 8.2457 9.47528C8.86162 8.55954 9.742 7.86506 10.7632 7.49078L10.7685 7.48883C11.0835 7.37379 11.4068 7.29104 11.7338 7.24069C12.2416 7.1625 12.7583 7.1624 13.2669 7.24079ZM6.29895 11.5417L4 14.4963L4.9073 15.2311L6.25332 13.5012C6.26248 13.5616 6.27246 13.6218 6.28326 13.6818C6.4569 14.6473 6.84205 15.5652 7.41549 16.363L7.42056 16.37C8.22659 17.4883 9.36046 18.311 10.6553 18.7171L10.66 18.7186C10.9564 18.8113 11.2575 18.8811 11.5611 18.9279C12.5859 19.0862 13.6379 18.9836 14.6229 18.6227L14.6282 18.6207C15.5369 18.2867 16.3541 17.7453 17.0216 17.0431C17.2693 16.7825 17.4964 16.4997 17.6999 16.1971C17.7171 16.1715 17.7342 16.1456 17.7511 16.1197L16.7962 15.4615L16.7917 15.4685C16.7793 15.4873 16.7668 15.5061 16.7543 15.5249C16.1383 16.4405 15.258 17.1349 14.2369 17.5093L14.2315 17.5112C13.9165 17.6263 13.5933 17.7089 13.2662 17.7593C12.7584 17.8376 12.2417 17.8376 11.7331 17.7592C11.486 17.7212 11.2407 17.6645 10.9994 17.5893L10.9946 17.5878C9.93638 17.2568 9.00927 16.5857 8.34933 15.6733L8.34425 15.6663C7.78741 14.8937 7.44668 13.9832 7.3536 13.0329L9.87802 14.7632L10.5241 13.7823L7.07562 11.4186L6.63157 11.1143L6.29895 11.5417Z" fill="white"/>
</svg>`;
function Widget() {
const [side, setSide] = useSyncedState('side', 'front');
const [front, setFront] = useSyncedState('front', '');
const [back, setBack] = useSyncedState('back', '');
const [frontWidth, setFrontWidth] = useSyncedState('frontWidth', 160);
const [frontHeight, setFrontHeight] = useSyncedState('frontHeight', 175);
const [backWidth, setBackWidth] = useSyncedState('backWidth', 160);
const [backHeight, setBackHeight] = useSyncedState('backHeight', 175);
if (side === 'front' && front.length > 0 || side === 'back' && back.length > 0) {
usePropertyMenu([
{
itemType: 'action',
propertyName: 'reset',
tooltip: 'Reset this side',
icon: resetSVG,
},
], () => {
if (side === 'front') {
setFront('');
setFrontWidth(160);
setFrontHeight(175);
}
else if (side === 'back') {
setBack('');
setBackWidth(160);
setBackHeight(175);
}
});
}
function width() {
if (side === 'front') {
return frontWidth;
}
else if (side === 'back') {
return backWidth;
}
}
function height() {
if (side === 'front') {
return frontHeight;
}
else if (side === 'back') {
return backHeight;
}
}
function content() {
const placeholder = `<svg width="160" height="176" viewBox="0 0 160 176" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="160" height="175.158" rx="16" fill="white"/>
<g filter="url(#filter0_i_38_215)">
<path d="M84.5714 59.4286C84.0191 59.4286 83.5714 58.9809 83.5714 58.4286V39C83.5714 38.4477 83.1237 38 82.5714 38H77.4286C76.8763 38 76.4286 38.4477 76.4286 39V58.4286C76.4286 58.9809 75.9809 59.4286 75.4286 59.4286H56C55.4477 59.4286 55 59.8763 55 60.4286V65.5714C55 66.1237 55.4477 66.5714 56 66.5714H75.4286C75.9809 66.5714 76.4286 67.0191 76.4286 67.5714V87C76.4286 87.5523 76.8763 88 77.4286 88H82.5714C83.1237 88 83.5714 87.5523 83.5714 87V67.5714C83.5714 67.0191 84.0191 66.5714 84.5714 66.5714H104C104.552 66.5714 105 66.1237 105 65.5714V60.4286C105 59.8763 104.552 59.4286 104 59.4286H84.5714Z" fill="url(#paint0_linear_38_215)"/>
</g>
<path d="M24.7683 108.144C24.2163 108.144 23.7043 108.04 23.2323 107.832C22.7603 107.624 22.3523 107.34 22.0083 106.98L22.6083 106.284C22.8883 106.58 23.2163 106.82 23.5923 107.004C23.9763 107.18 24.3723 107.268 24.7803 107.268C25.3003 107.268 25.7043 107.152 25.9923 106.92C26.2803 106.68 26.4243 106.368 26.4243 105.984C26.4243 105.784 26.3883 105.616 26.3163 105.48C26.2523 105.336 26.1603 105.216 26.0403 105.12C25.9283 105.016 25.7923 104.924 25.6323 104.844C25.4723 104.764 25.3003 104.68 25.1163 104.592L23.9883 104.1C23.8043 104.02 23.6163 103.924 23.4243 103.812C23.2323 103.7 23.0603 103.564 22.9083 103.404C22.7563 103.244 22.6323 103.056 22.5363 102.84C22.4403 102.616 22.3923 102.36 22.3923 102.072C22.3923 101.776 22.4523 101.5 22.5723 101.244C22.7003 100.988 22.8723 100.768 23.0883 100.584C23.3123 100.392 23.5723 100.244 23.8683 100.14C24.1723 100.036 24.5043 99.984 24.8643 99.984C25.3363 99.984 25.7723 100.076 26.1723 100.26C26.5723 100.436 26.9123 100.668 27.1923 100.956L26.6523 101.604C26.4123 101.372 26.1443 101.192 25.8483 101.064C25.5603 100.928 25.2323 100.86 24.8643 100.86C24.4243 100.86 24.0683 100.964 23.7963 101.172C23.5323 101.372 23.4003 101.652 23.4003 102.012C23.4003 102.204 23.4363 102.368 23.5083 102.504C23.5883 102.632 23.6923 102.748 23.8203 102.852C23.9483 102.948 24.0883 103.036 24.2403 103.116C24.3923 103.188 24.5483 103.256 24.7083 103.32L25.8243 103.8C26.0483 103.896 26.2603 104.008 26.4603 104.136C26.6603 104.256 26.8323 104.4 26.9763 104.568C27.1203 104.728 27.2323 104.92 27.3123 105.144C27.4003 105.36 27.4443 105.612 27.4443 105.9C27.4443 106.212 27.3803 106.504 27.2523 106.776C27.1323 107.048 26.9563 107.288 26.7243 107.496C26.4923 107.696 26.2123 107.856 25.8843 107.976C25.5563 108.088 25.1843 108.144 24.7683 108.144ZM31.2624 108.144C30.8704 108.144 30.5024 108.076 30.1584 107.94C29.8224 107.796 29.5264 107.596 29.2704 107.34C29.0224 107.076 28.8264 106.756 28.6824 106.38C28.5384 106.004 28.4664 105.576 28.4664 105.096C28.4664 104.616 28.5384 104.188 28.6824 103.812C28.8344 103.428 29.0304 103.104 29.2704 102.84C29.5184 102.576 29.7984 102.376 30.1104 102.24C30.4224 102.096 30.7464 102.024 31.0824 102.024C31.4504 102.024 31.7784 102.088 32.0664 102.216C32.3624 102.344 32.6064 102.528 32.7984 102.768C32.9984 103.008 33.1504 103.296 33.2544 103.632C33.3584 103.968 33.4104 104.344 33.4104 104.76C33.4104 104.864 33.4064 104.968 33.3984 105.072C33.3984 105.168 33.3904 105.252 33.3744 105.324H29.4384C29.4784 105.948 29.6704 106.444 30.0144 106.812C30.3664 107.172 30.8224 107.352 31.3824 107.352C31.6624 107.352 31.9184 107.312 32.1504 107.232C32.3904 107.144 32.6184 107.032 32.8344 106.896L33.1824 107.544C32.9264 107.704 32.6424 107.844 32.3304 107.964C32.0184 108.084 31.6624 108.144 31.2624 108.144ZM29.4264 104.616H32.5464C32.5464 104.024 32.4184 103.576 32.1624 103.272C31.9144 102.96 31.5624 102.804 31.1064 102.804C30.8984 102.804 30.6984 102.844 30.5064 102.924C30.3224 103.004 30.1544 103.124 30.0024 103.284C29.8504 103.436 29.7224 103.624 29.6184 103.848C29.5224 104.072 29.4584 104.328 29.4264 104.616ZM35.8956 108.144C35.5196 108.144 35.2516 108.032 35.0916 107.808C34.9316 107.584 34.8516 107.256 34.8516 106.824V99.456H35.8356V106.896C35.8356 107.056 35.8636 107.168 35.9196 107.232C35.9756 107.296 36.0396 107.328 36.1116 107.328C36.1436 107.328 36.1716 107.328 36.1956 107.328C36.2276 107.328 36.2716 107.32 36.3276 107.304L36.4596 108.048C36.3956 108.08 36.3196 108.104 36.2316 108.12C36.1436 108.136 36.0316 108.144 35.8956 108.144ZM40.2742 108.144C39.8822 108.144 39.5142 108.076 39.1702 107.94C38.8342 107.796 38.5382 107.596 38.2822 107.34C38.0342 107.076 37.8382 106.756 37.6942 106.38C37.5502 106.004 37.4782 105.576 37.4782 105.096C37.4782 104.616 37.5502 104.188 37.6942 103.812C37.8462 103.428 38.0422 103.104 38.2822 102.84C38.5302 102.576 38.8102 102.376 39.1222 102.24C39.4342 102.096 39.7582 102.024 40.0942 102.024C40.4622 102.024 40.7902 102.088 41.0782 102.216C41.3742 102.344 41.6182 102.528 41.8102 102.768C42.0102 103.008 42.1622 103.296 42.2662 103.632C42.3702 103.968 42.4222 104.344 42.4222 104.76C42.4222 104.864 42.4182 104.968 42.4102 105.072C42.4102 105.168 42.4022 105.252 42.3862 105.324H38.4502C38.4902 105.948 38.6822 106.444 39.0262 106.812C39.3782 107.172 39.8342 107.352 40.3942 107.352C40.6742 107.352 40.9302 107.312 41.1622 107.232C41.4022 107.144 41.6302 107.032 41.8462 106.896L42.1942 107.544C41.9382 107.704 41.6542 107.844 41.3422 107.964C41.0302 108.084 40.6742 108.144 40.2742 108.144ZM38.4382 104.616H41.5582C41.5582 104.024 41.4302 103.576 41.1742 103.272C40.9262 102.96 40.5742 102.804 40.1182 102.804C39.9102 102.804 39.7102 102.844 39.5182 102.924C39.3342 103.004 39.1662 103.124 39.0142 103.284C38.8622 103.436 38.7342 103.624 38.6302 103.848C38.5342 104.072 38.4702 104.328 38.4382 104.616ZM46.1673 108.144C45.7833 108.144 45.4233 108.076 45.0873 107.94C44.7513 107.804 44.4593 107.608 44.2113 107.352C43.9713 107.088 43.7793 106.768 43.6353 106.392C43.4993 106.008 43.4313 105.576 43.4313 105.096C43.4313 104.608 43.5073 104.176 43.6593 103.8C43.8113 103.416 44.0153 103.092 44.2713 102.828C44.5273 102.564 44.8233 102.364 45.1593 102.228C45.5033 102.092 45.8633 102.024 46.2393 102.024C46.6233 102.024 46.9513 102.092 47.2233 102.228C47.4953 102.364 47.7353 102.524 47.9433 102.708L47.4393 103.356C47.2713 103.204 47.0913 103.08 46.8993 102.984C46.7153 102.888 46.5073 102.84 46.2753 102.84C46.0113 102.84 45.7673 102.896 45.5433 103.008C45.3193 103.112 45.1273 103.264 44.9673 103.464C44.8073 103.664 44.6793 103.904 44.5833 104.184C44.4953 104.456 44.4513 104.76 44.4513 105.096C44.4513 105.432 44.4953 105.736 44.5833 106.008C44.6713 106.28 44.7913 106.516 44.9433 106.716C45.1033 106.908 45.2953 107.06 45.5193 107.172C45.7433 107.276 45.9873 107.328 46.2513 107.328C46.5233 107.328 46.7713 107.272 46.9953 107.16C47.2273 107.04 47.4353 106.9 47.6193 106.74L48.0513 107.4C47.7873 107.632 47.4953 107.816 47.1753 107.952C46.8553 108.08 46.5193 108.144 46.1673 108.144ZM51.0548 108.144C50.7428 108.144 50.4788 108.096 50.2628 108C50.0548 107.904 49.8828 107.772 49.7468 107.604C49.6188 107.436 49.5268 107.232 49.4708 106.992C49.4148 106.752 49.3868 106.488 49.3868 106.2V102.972H48.5228V102.228L49.4348 102.168L49.5548 100.536H50.3828V102.168H51.9548V102.972H50.3828V106.212C50.3828 106.572 50.4468 106.852 50.5748 107.052C50.7108 107.244 50.9468 107.34 51.2828 107.34C51.3868 107.34 51.4988 107.324 51.6188 107.292C51.7388 107.26 51.8468 107.224 51.9428 107.184L52.1348 107.928C51.9748 107.984 51.7988 108.032 51.6068 108.072C51.4228 108.12 51.2388 108.144 51.0548 108.144ZM57.5118 108.144C57.1998 108.144 56.9358 108.096 56.7198 108C56.5118 107.904 56.3398 107.772 56.2038 107.604C56.0758 107.436 55.9838 107.232 55.9278 106.992C55.8718 106.752 55.8438 106.488 55.8438 106.2V102.972H54.9798V102.228L55.8918 102.168L56.0118 100.536H56.8398V102.168H58.4118V102.972H56.8398V106.212C56.8398 106.572 56.9038 106.852 57.0318 107.052C57.1678 107.244 57.4038 107.34 57.7398 107.34C57.8438 107.34 57.9558 107.324 58.0758 107.292C58.1958 107.26 58.3038 107.224 58.3998 107.184L58.5918 107.928C58.4318 107.984 58.2558 108.032 58.0638 108.072C57.8798 108.12 57.6958 108.144 57.5118 108.144ZM59.7305 108V99.456H60.7145V101.784L60.6785 102.984C60.9585 102.72 61.2505 102.496 61.5545 102.312C61.8585 102.12 62.2145 102.024 62.6225 102.024C63.2385 102.024 63.6865 102.216 63.9665 102.6C64.2545 102.984 64.3985 103.552 64.3985 104.304V108H63.4145V104.436C63.4145 103.884 63.3265 103.488 63.1505 103.248C62.9745 103 62.6945 102.876 62.3105 102.876C62.0065 102.876 61.7385 102.952 61.5065 103.104C61.2745 103.256 61.0105 103.48 60.7145 103.776V108H59.7305ZM68.6218 108.144C68.2298 108.144 67.8618 108.076 67.5178 107.94C67.1818 107.796 66.8858 107.596 66.6298 107.34C66.3818 107.076 66.1858 106.756 66.0418 106.38C65.8978 106.004 65.8258 105.576 65.8258 105.096C65.8258 104.616 65.8978 104.188 66.0418 103.812C66.1938 103.428 66.3898 103.104 66.6298 102.84C66.8778 102.576 67.1578 102.376 67.4698 102.24C67.7818 102.096 68.1058 102.024 68.4418 102.024C68.8098 102.024 69.1378 102.088 69.4258 102.216C69.7218 102.344 69.9658 102.528 70.1578 102.768C70.3578 103.008 70.5098 103.296 70.6138 103.632C70.7178 103.968 70.7698 104.344 70.7698 104.76C70.7698 104.864 70.7658 104.968 70.7578 105.072C70.7578 105.168 70.7498 105.252 70.7338 105.324H66.7978C66.8378 105.948 67.0298 106.444 67.3738 106.812C67.7258 107.172 68.1818 107.352 68.7418 107.352C69.0218 107.352 69.2778 107.312 69.5098 107.232C69.7498 107.144 69.9778 107.032 70.1938 106.896L70.5418 107.544C70.2858 107.704 70.0018 107.844 69.6898 107.964C69.3778 108.084 69.0218 108.144 68.6218 108.144ZM66.7858 104.616H69.9058C69.9058 104.024 69.7778 103.576 69.5218 103.272C69.2738 102.96 68.9218 102.804 68.4658 102.804C68.2578 102.804 68.0578 102.844 67.8658 102.924C67.6818 103.004 67.5138 103.124 67.3618 103.284C67.2098 103.436 67.0818 103.624 66.9778 103.848C66.8818 104.072 66.8178 104.328 66.7858 104.616ZM74.7813 108V102.972H73.9893V102.228L74.7813 102.168V101.244C74.7813 100.644 74.9173 100.172 75.1893 99.828C75.4693 99.484 75.9013 99.312 76.4853 99.312C76.6693 99.312 76.8413 99.332 77.0013 99.372C77.1693 99.404 77.3213 99.448 77.4573 99.504L77.2413 100.26C77.0253 100.164 76.8053 100.116 76.5813 100.116C76.0373 100.116 75.7653 100.492 75.7653 101.244V102.168H77.0013V102.972H75.7653V108H74.7813ZM78.1172 108V102.168H78.9332L79.0172 103.224H79.0532C79.2532 102.856 79.4932 102.564 79.7732 102.348C80.0612 102.132 80.3732 102.024 80.7092 102.024C80.9412 102.024 81.1492 102.064 81.3332 102.144L81.1412 103.008C81.0452 102.976 80.9572 102.952 80.8772 102.936C80.7972 102.92 80.6972 102.912 80.5772 102.912C80.3292 102.912 80.0692 103.012 79.7972 103.212C79.5332 103.412 79.3012 103.76 79.1012 104.256V108H78.1172ZM84.4282 108.144C84.0682 108.144 83.7242 108.076 83.3962 107.94C83.0762 107.804 82.7922 107.608 82.5442 107.352C82.2962 107.088 82.0962 106.768 81.9442 106.392C81.8002 106.008 81.7282 105.576 81.7282 105.096C81.7282 104.608 81.8002 104.176 81.9442 103.8C82.0962 103.416 82.2962 103.092 82.5442 102.828C82.7922 102.564 83.0762 102.364 83.3962 102.228C83.7242 102.092 84.0682 102.024 84.4282 102.024C84.7882 102.024 85.1282 102.092 85.4482 102.228C85.7762 102.364 86.0642 102.564 86.3122 102.828C86.5602 103.092 86.7562 103.416 86.9002 103.8C87.0522 104.176 87.1282 104.608 87.1282 105.096C87.1282 105.576 87.0522 106.008 86.9002 106.392C86.7562 106.768 86.5602 107.088 86.3122 107.352C86.0642 107.608 85.7762 107.804 85.4482 107.94C85.1282 108.076 84.7882 108.144 84.4282 108.144ZM84.4282 107.328C84.6762 107.328 84.9042 107.276 85.1122 107.172C85.3202 107.06 85.4962 106.908 85.6402 106.716C85.7922 106.516 85.9082 106.28 85.9882 106.008C86.0682 105.736 86.1082 105.432 86.1082 105.096C86.1082 104.76 86.0682 104.456 85.9882 104.184C85.9082 103.904 85.7922 103.664 85.6402 103.464C85.4962 103.264 85.3202 103.112 85.1122 103.008C84.9042 102.896 84.6762 102.84 84.4282 102.84C84.1802 102.84 83.9522 102.896 83.7442 103.008C83.5362 103.112 83.3562 103.264 83.2042 103.464C83.0602 103.664 82.9482 103.904 82.8682 104.184C82.7882 104.456 82.7482 104.76 82.7482 105.096C82.7482 105.432 82.7882 105.736 82.8682 106.008C82.9482 106.28 83.0602 106.516 83.2042 106.716C83.3562 106.908 83.5362 107.06 83.7442 107.172C83.9522 107.276 84.1802 107.328 84.4282 107.328ZM88.6641 108V102.168H89.4801L89.5641 103.008H89.6001C89.8801 102.728 90.1721 102.496 90.4761 102.312C90.7881 102.12 91.1481 102.024 91.5561 102.024C92.1721 102.024 92.6201 102.216 92.9001 102.6C93.1881 102.984 93.3321 103.552 93.3321 104.304V108H92.3481V104.436C92.3481 103.884 92.2601 103.488 92.0841 103.248C91.9081 103 91.6281 102.876 91.2441 102.876C90.9401 102.876 90.6721 102.952 90.4401 103.104C90.2081 103.256 89.9441 103.48 89.6481 103.776V108H88.6641ZM97.0626 108.144C96.7506 108.144 96.4866 108.096 96.2706 108C96.0626 107.904 95.8906 107.772 95.7546 107.604C95.6266 107.436 95.5346 107.232 95.4786 106.992C95.4226 106.752 95.3946 106.488 95.3946 106.2V102.972H94.5306V102.228L95.4426 102.168L95.5626 100.536H96.3906V102.168H97.9626V102.972H96.3906V106.212C96.3906 106.572 96.4546 106.852 96.5826 107.052C96.7186 107.244 96.9546 107.34 97.2906 107.34C97.3946 107.34 97.5066 107.324 97.6266 107.292C97.7466 107.26 97.8546 107.224 97.9506 107.184L98.1426 107.928C97.9826 107.984 97.8066 108.032 97.6146 108.072C97.4306 108.12 97.2466 108.144 97.0626 108.144ZM103.952 108.144C103.592 108.144 103.248 108.076 102.92 107.94C102.6 107.804 102.316 107.608 102.068 107.352C101.82 107.088 101.62 106.768 101.468 106.392C101.324 106.008 101.252 105.576 101.252 105.096C101.252 104.608 101.324 104.176 101.468 103.8C101.62 103.416 101.82 103.092 102.068 102.828C102.316 102.564 102.6 102.364 102.92 102.228C103.248 102.092 103.592 102.024 103.952 102.024C104.312 102.024 104.652 102.092 104.972 102.228C105.3 102.364 105.588 102.564 105.836 102.828C106.084 103.092 106.28 103.416 106.424 103.8C106.576 104.176 106.652 104.608 106.652 105.096C106.652 105.576 106.576 106.008 106.424 106.392C106.28 106.768 106.084 107.088 105.836 107.352C105.588 107.608 105.3 107.804 104.972 107.94C104.652 108.076 104.312 108.144 103.952 108.144ZM103.952 107.328C104.2 107.328 104.428 107.276 104.636 107.172C104.844 107.06 105.02 106.908 105.164 106.716C105.316 106.516 105.432 106.28 105.512 106.008C105.592 105.736 105.632 105.432 105.632 105.096C105.632 104.76 105.592 104.456 105.512 104.184C105.432 103.904 105.316 103.664 105.164 103.464C105.02 103.264 104.844 103.112 104.636 103.008C104.428 102.896 104.2 102.84 103.952 102.84C103.704 102.84 103.476 102.896 103.268 103.008C103.06 103.112 102.88 103.264 102.728 103.464C102.584 103.664 102.472 103.904 102.392 104.184C102.312 104.456 102.272 104.76 102.272 105.096C102.272 105.432 102.312 105.736 102.392 106.008C102.472 106.28 102.584 106.516 102.728 106.716C102.88 106.908 103.06 107.06 103.268 107.172C103.476 107.276 103.704 107.328 103.952 107.328ZM108.188 108V102.168H109.004L109.088 103.224H109.124C109.324 102.856 109.564 102.564 109.844 102.348C110.132 102.132 110.444 102.024 110.78 102.024C111.012 102.024 111.22 102.064 111.404 102.144L111.212 103.008C111.116 102.976 111.028 102.952 110.948 102.936C110.868 102.92 110.768 102.912 110.648 102.912C110.4 102.912 110.14 103.012 109.868 103.212C109.604 103.412 109.372 103.76 109.172 104.256V108H108.188ZM117.33 108.144C117.058 108.144 116.774 108.08 116.478 107.952C116.19 107.816 115.918 107.632 115.662 107.4H115.626L115.542 108H114.75V99.456H115.734V101.784L115.71 102.84C115.974 102.608 116.262 102.416 116.574 102.264C116.886 102.104 117.206 102.024 117.534 102.024C117.91 102.024 118.242 102.096 118.53 102.24C118.818 102.376 119.058 102.576 119.25 102.84C119.45 103.096 119.598 103.408 119.694 103.776C119.798 104.136 119.85 104.54 119.85 104.988C119.85 105.484 119.782 105.928 119.646 106.32C119.51 106.712 119.326 107.044 119.094 107.316C118.862 107.588 118.594 107.796 118.29 107.94C117.986 108.076 117.666 108.144 117.33 108.144ZM117.162 107.316C117.402 107.316 117.622 107.264 117.822 107.16C118.03 107.048 118.206 106.896 118.35 106.704C118.502 106.504 118.618 106.26 118.698 105.972C118.786 105.684 118.83 105.36 118.83 105C118.83 104.68 118.802 104.388 118.746 104.124C118.69 103.86 118.598 103.636 118.47 103.452C118.35 103.26 118.19 103.112 117.99 103.008C117.798 102.904 117.566 102.852 117.294 102.852C116.822 102.852 116.302 103.116 115.734 103.644V106.704C115.99 106.928 116.242 107.088 116.49 107.184C116.746 107.272 116.97 107.316 117.162 107.316ZM122.563 108.144C122.075 108.144 121.667 108 121.339 107.712C121.019 107.424 120.859 107.016 120.859 106.488C120.859 105.848 121.143 105.36 121.711 105.024C122.279 104.68 123.187 104.44 124.435 104.304C124.435 104.12 124.415 103.94 124.375 103.764C124.343 103.588 124.283 103.432 124.195 103.296C124.107 103.16 123.983 103.052 123.823 102.972C123.671 102.884 123.475 102.84 123.235 102.84C122.899 102.84 122.583 102.904 122.287 103.032C121.991 103.16 121.727 103.304 121.495 103.464L121.111 102.78C121.383 102.604 121.715 102.436 122.107 102.276C122.499 102.108 122.931 102.024 123.403 102.024C124.115 102.024 124.631 102.244 124.951 102.684C125.271 103.116 125.431 103.696 125.431 104.424V108H124.615L124.531 107.304H124.495C124.215 107.536 123.915 107.736 123.595 107.904C123.275 108.064 122.931 108.144 122.563 108.144ZM122.851 107.352C123.131 107.352 123.395 107.288 123.643 107.16C123.891 107.024 124.155 106.828 124.435 106.572V104.952C123.947 105.016 123.535 105.092 123.199 105.18C122.871 105.268 122.603 105.372 122.395 105.492C122.195 105.612 122.047 105.752 121.951 105.912C121.863 106.064 121.819 106.232 121.819 106.416C121.819 106.752 121.919 106.992 122.119 107.136C122.319 107.28 122.563 107.352 122.851 107.352ZM129.57 108.144C129.186 108.144 128.826 108.076 128.49 107.94C128.154 107.804 127.862 107.608 127.614 107.352C127.374 107.088 127.182 106.768 127.038 106.392C126.902 106.008 126.834 105.576 126.834 105.096C126.834 104.608 126.91 104.176 127.062 103.8C127.214 103.416 127.418 103.092 127.674 102.828C127.93 102.564 128.226 102.364 128.562 102.228C128.906 102.092 129.266 102.024 129.642 102.024C130.026 102.024 130.354 102.092 130.626 102.228C130.898 102.364 131.138 102.524 131.346 102.708L130.842 103.356C130.674 103.204 130.494 103.08 130.302 102.984C130.118 102.888 129.91 102.84 129.678 102.84C129.414 102.84 129.17 102.896 128.946 103.008C128.722 103.112 128.53 103.264 128.37 103.464C128.21 103.664 128.082 103.904 127.986 104.184C127.898 104.456 127.854 104.76 127.854 105.096C127.854 105.432 127.898 105.736 127.986 106.008C128.074 106.28 128.194 106.516 128.346 106.716C128.506 106.908 128.698 107.06 128.922 107.172C129.146 107.276 129.39 107.328 129.654 107.328C129.926 107.328 130.174 107.272 130.398 107.16C130.63 107.04 130.838 106.9 131.022 106.74L131.454 107.4C131.19 107.632 130.898 107.816 130.578 107.952C130.258 108.08 129.922 108.144 129.57 108.144ZM132.738 108V99.456H133.71V105.24H133.746L136.23 102.168H137.322L135.366 104.508L137.586 108H136.506L134.802 105.192L133.71 106.464V108H132.738ZM26.5377 123.144C26.1217 123.144 25.7257 123.068 25.3497 122.916C24.9737 122.764 24.6457 122.572 24.3657 122.34L24.8577 121.68C25.1137 121.888 25.3737 122.056 25.6377 122.184C25.9097 122.312 26.2217 122.376 26.5737 122.376C26.9577 122.376 27.2457 122.288 27.4377 122.112C27.6297 121.936 27.7257 121.72 27.7257 121.464C27.7257 121.312 27.6857 121.18 27.6057 121.068C27.5257 120.956 27.4217 120.86 27.2937 120.78C27.1737 120.692 27.0337 120.616 26.8737 120.552C26.7137 120.488 26.5537 120.424 26.3937 120.36C26.1857 120.288 25.9777 120.208 25.7697 120.12C25.5617 120.024 25.3737 119.912 25.2057 119.784C25.0457 119.648 24.9137 119.492 24.8097 119.316C24.7057 119.14 24.6537 118.928 24.6537 118.68C24.6537 118.448 24.6977 118.232 24.7857 118.032C24.8817 117.824 25.0137 117.648 25.1817 117.504C25.3577 117.352 25.5697 117.236 25.8177 117.156C26.0657 117.068 26.3457 117.024 26.6577 117.024C27.0257 117.024 27.3617 117.088 27.6657 117.216C27.9777 117.344 28.2457 117.5 28.4697 117.684L28.0017 118.308C27.8017 118.156 27.5937 118.032 27.3777 117.936C27.1617 117.84 26.9257 117.792 26.6697 117.792C26.3017 117.792 26.0297 117.876 25.8537 118.044C25.6857 118.212 25.6017 118.408 25.6017 118.632C25.6017 118.768 25.6377 118.888 25.7097 118.992C25.7817 119.088 25.8777 119.176 25.9977 119.256C26.1177 119.328 26.2537 119.396 26.4057 119.46C26.5657 119.516 26.7297 119.576 26.8977 119.64C27.1057 119.72 27.3137 119.804 27.5217 119.892C27.7377 119.98 27.9297 120.092 28.0977 120.228C28.2657 120.356 28.4017 120.516 28.5057 120.708C28.6177 120.9 28.6737 121.132 28.6737 121.404C28.6737 121.644 28.6257 121.868 28.5297 122.076C28.4417 122.284 28.3057 122.468 28.1217 122.628C27.9457 122.788 27.7217 122.912 27.4497 123C27.1857 123.096 26.8817 123.144 26.5377 123.144ZM30.041 123V117.168H31.025V123H30.041ZM30.545 115.968C30.353 115.968 30.189 115.908 30.053 115.788C29.925 115.668 29.861 115.516 29.861 115.332C29.861 115.14 29.925 114.988 30.053 114.876C30.189 114.756 30.353 114.696 30.545 114.696C30.737 114.696 30.897 114.756 31.025 114.876C31.161 114.988 31.229 115.14 31.229 115.332C31.229 115.516 31.161 115.668 31.025 115.788C30.897 115.908 30.737 115.968 30.545 115.968ZM34.9861 123.144C34.2501 123.144 33.6621 122.88 33.2221 122.352C32.7901 121.824 32.5741 121.072 32.5741 120.096C32.5741 119.624 32.6421 119.2 32.7781 118.824C32.9221 118.44 33.1101 118.116 33.3421 117.852C33.5741 117.588 33.8421 117.384 34.1461 117.24C34.4501 117.096 34.7701 117.024 35.1061 117.024C35.4421 117.024 35.7341 117.084 35.9821 117.204C36.2301 117.324 36.4821 117.488 36.7381 117.696L36.6901 116.7V114.456H37.6861V123H36.8701L36.7861 122.316H36.7501C36.5181 122.54 36.2501 122.736 35.9461 122.904C35.6501 123.064 35.3301 123.144 34.9861 123.144ZM35.2021 122.316C35.4741 122.316 35.7301 122.252 35.9701 122.124C36.2101 121.988 36.4501 121.784 36.6901 121.512V118.464C36.4421 118.24 36.2021 118.084 35.9701 117.996C35.7461 117.9 35.5141 117.852 35.2741 117.852C35.0421 117.852 34.8221 117.908 34.6141 118.02C34.4141 118.124 34.2381 118.276 34.0861 118.476C33.9341 118.668 33.8141 118.9 33.7261 119.172C33.6381 119.444 33.5941 119.748 33.5941 120.084C33.5941 120.788 33.7341 121.336 34.0141 121.728C34.2941 122.12 34.6901 122.316 35.2021 122.316ZM42.0144 123.144C41.6224 123.144 41.2544 123.076 40.9104 122.94C40.5744 122.796 40.2784 122.596 40.0224 122.34C39.7744 122.076 39.5784 121.756 39.4344 121.38C39.2904 121.004 39.2184 120.576 39.2184 120.096C39.2184 119.616 39.2904 119.188 39.4344 118.812C39.5864 118.428 39.7824 118.104 40.0224 117.84C40.2704 117.576 40.5504 117.376 40.8624 117.24C41.1744 117.096 41.4984 117.024 41.8344 117.024C42.2024 117.024 42.5304 117.088 42.8184 117.216C43.1144 117.344 43.3584 117.528 43.5504 117.768C43.7504 118.008 43.9024 118.296 44.0064 118.632C44.1104 118.968 44.1624 119.344 44.1624 119.76C44.1624 119.864 44.1584 119.968 44.1504 120.072C44.1504 120.168 44.1424 120.252 44.1264 120.324H40.1904C40.2304 120.948 40.4224 121.444 40.7664 121.812C41.1184 122.172 41.5744 122.352 42.1344 122.352C42.4144 122.352 42.6704 122.312 42.9024 122.232C43.1424 122.144 43.3704 122.032 43.5864 121.896L43.9344 122.544C43.6784 122.704 43.3944 122.844 43.0824 122.964C42.7704 123.084 42.4144 123.144 42.0144 123.144ZM40.1784 119.616H43.2984C43.2984 119.024 43.1704 118.576 42.9144 118.272C42.6664 117.96 42.3144 117.804 41.8584 117.804C41.6504 117.804 41.4504 117.844 41.2584 117.924C41.0744 118.004 40.9064 118.124 40.7544 118.284C40.6024 118.436 40.4744 118.624 40.3704 118.848C40.2744 119.072 40.2104 119.328 40.1784 119.616ZM50.2739 123.144C49.9139 123.144 49.5699 123.076 49.2419 122.94C48.9219 122.804 48.6379 122.608 48.3899 122.352C48.1419 122.088 47.9419 121.768 47.7899 121.392C47.6459 121.008 47.5739 120.576 47.5739 120.096C47.5739 119.608 47.6459 119.176 47.7899 118.8C47.9419 118.416 48.1419 118.092 48.3899 117.828C48.6379 117.564 48.9219 117.364 49.2419 117.228C49.5699 117.092 49.9139 117.024 50.2739 117.024C50.6339 117.024 50.9739 117.092 51.2939 117.228C51.6219 117.364 51.9099 117.564 52.1579 117.828C52.4059 118.092 52.6019 118.416 52.7459 118.8C52.8979 119.176 52.9739 119.608 52.9739 120.096C52.9739 120.576 52.8979 121.008 52.7459 121.392C52.6019 121.768 52.4059 122.088 52.1579 122.352C51.9099 122.608 51.6219 122.804 51.2939 122.94C50.9739 123.076 50.6339 123.144 50.2739 123.144ZM50.2739 122.328C50.5219 122.328 50.7499 122.276 50.9579 122.172C51.1659 122.06 51.3419 121.908 51.4859 121.716C51.6379 121.516 51.7539 121.28 51.8339 121.008C51.9139 120.736 51.9539 120.432 51.9539 120.096C51.9539 119.76 51.9139 119.456 51.8339 119.184C51.7539 118.904 51.6379 118.664 51.4859 118.464C51.3419 118.264 51.1659 118.112 50.9579 118.008C50.7499 117.896 50.5219 117.84 50.2739 117.84C50.0259 117.84 49.7979 117.896 49.5899 118.008C49.3819 118.112 49.2019 118.264 49.0499 118.464C48.9059 118.664 48.7939 118.904 48.7139 119.184C48.6339 119.456 48.5939 119.76 48.5939 120.096C48.5939 120.432 48.6339 120.736 48.7139 121.008C48.7939 121.28 48.9059 121.516 49.0499 121.716C49.2019 121.908 49.3819 122.06 49.5899 122.172C49.7979 122.276 50.0259 122.328 50.2739 122.328ZM54.6778 123V117.972H53.8858V117.228L54.6778 117.168V116.244C54.6778 115.644 54.8138 115.172 55.0858 114.828C55.3658 114.484 55.7978 114.312 56.3818 114.312C56.5658 114.312 56.7378 114.332 56.8978 114.372C57.0658 114.404 57.2178 114.448 57.3538 114.504L57.1378 115.26C56.9218 115.164 56.7018 115.116 56.4778 115.116C55.9338 115.116 55.6618 115.492 55.6618 116.244V117.168H56.8978V117.972H55.6618V123H54.6778ZM60.512 125.508C60.376 125.508 60.252 125.496 60.14 125.472C60.028 125.456 59.924 125.428 59.828 125.388L60.02 124.608C60.084 124.624 60.156 124.64 60.236 124.656C60.316 124.68 60.392 124.692 60.464 124.692C60.8 124.692 61.072 124.572 61.28 124.332C61.496 124.1 61.664 123.804 61.784 123.444L61.916 123.012L59.576 117.168H60.596L61.784 120.396C61.872 120.652 61.964 120.924 62.06 121.212C62.164 121.492 62.26 121.768 62.348 122.04H62.396C62.484 121.776 62.568 121.5 62.648 121.212C62.728 120.924 62.808 120.652 62.888 120.396L63.932 117.168H64.892L62.696 123.48C62.592 123.768 62.476 124.036 62.348 124.284C62.22 124.532 62.068 124.744 61.892 124.92C61.716 125.104 61.516 125.248 61.292 125.352C61.068 125.456 60.808 125.508 60.512 125.508ZM68.2387 123.144C67.8787 123.144 67.5347 123.076 67.2067 122.94C66.8867 122.804 66.6027 122.608 66.3547 122.352C66.1067 122.088 65.9067 121.768 65.7547 121.392C65.6107 121.008 65.5387 120.576 65.5387 120.096C65.5387 119.608 65.6107 119.176 65.7547 118.8C65.9067 118.416 66.1067 118.092 66.3547 117.828C66.6027 117.564 66.8867 117.364 67.2067 117.228C67.5347 117.092 67.8787 117.024 68.2387 117.024C68.5987 117.024 68.9387 117.092 69.2587 117.228C69.5867 117.364 69.8747 117.564 70.1227 117.828C70.3707 118.092 70.5667 118.416 70.7107 118.8C70.8627 119.176 70.9387 119.608 70.9387 120.096C70.9387 120.576 70.8627 121.008 70.7107 121.392C70.5667 121.768 70.3707 122.088 70.1227 122.352C69.8747 122.608 69.5867 122.804 69.2587 122.94C68.9387 123.076 68.5987 123.144 68.2387 123.144ZM68.2387 122.328C68.4867 122.328 68.7147 122.276 68.9227 122.172C69.1307 122.06 69.3067 121.908 69.4507 121.716C69.6027 121.516 69.7187 121.28 69.7987 121.008C69.8787 120.736 69.9187 120.432 69.9187 120.096C69.9187 119.76 69.8787 119.456 69.7987 119.184C69.7187 118.904 69.6027 118.664 69.4507 118.464C69.3067 118.264 69.1307 118.112 68.9227 118.008C68.7147 117.896 68.4867 117.84 68.2387 117.84C67.9907 117.84 67.7627 117.896 67.5547 118.008C67.3467 118.112 67.1667 118.264 67.0147 118.464C66.8707 118.664 66.7587 118.904 66.6787 119.184C66.5987 119.456 66.5587 119.76 66.5587 120.096C66.5587 120.432 66.5987 120.736 66.6787 121.008C66.7587 121.28 66.8707 121.516 67.0147 121.716C67.1667 121.908 67.3467 122.06 67.5547 122.172C67.7627 122.276 67.9907 122.328 68.2387 122.328ZM74.1786 123.144C73.5546 123.144 73.0986 122.952 72.8106 122.568C72.5306 122.184 72.3906 121.616 72.3906 120.864V117.168H73.3866V120.732C73.3866 121.284 73.4706 121.684 73.6386 121.932C73.8146 122.172 74.0946 122.292 74.4786 122.292C74.7826 122.292 75.0506 122.216 75.2826 122.064C75.5146 121.904 75.7706 121.652 76.0506 121.308V117.168H77.0346V123H76.2186L76.1346 122.088H76.0986C75.8266 122.408 75.5386 122.664 75.2346 122.856C74.9386 123.048 74.5866 123.144 74.1786 123.144ZM79.002 123V117.168H79.818L79.902 118.224H79.938C80.138 117.856 80.378 117.564 80.658 117.348C80.946 117.132 81.258 117.024 81.594 117.024C81.826 117.024 82.034 117.064 82.218 117.144L82.026 118.008C81.93 117.976 81.842 117.952 81.762 117.936C81.682 117.92 81.582 117.912 81.462 117.912C81.214 117.912 80.954 118.012 80.682 118.212C80.418 118.412 80.186 118.76 79.986 119.256V123H79.002ZM87.8685 123.144C87.4845 123.144 87.1245 123.076 86.7885 122.94C86.4525 122.804 86.1605 122.608 85.9125 122.352C85.6725 122.088 85.4805 121.768 85.3365 121.392C85.2005 121.008 85.1325 120.576 85.1325 120.096C85.1325 119.608 85.2085 119.176 85.3605 118.8C85.5125 118.416 85.7165 118.092 85.9725 117.828C86.2285 117.564 86.5245 117.364 86.8605 117.228C87.2045 117.092 87.5645 117.024 87.9405 117.024C88.3245 117.024 88.6525 117.092 88.9245 117.228C89.1965 117.364 89.4365 117.524 89.6445 117.708L89.1405 118.356C88.9725 118.204 88.7925 118.08 88.6005 117.984C88.4165 117.888 88.2085 117.84 87.9765 117.84C87.7125 117.84 87.4685 117.896 87.2445 118.008C87.0205 118.112 86.8285 118.264 86.6685 118.464C86.5085 118.664 86.3805 118.904 86.2845 119.184C86.1965 119.456 86.1525 119.76 86.1525 120.096C86.1525 120.432 86.1965 120.736 86.2845 121.008C86.3725 121.28 86.4925 121.516 86.6445 121.716C86.8045 121.908 86.9965 122.06 87.2205 122.172C87.4445 122.276 87.6885 122.328 87.9525 122.328C88.2245 122.328 88.4725 122.272 88.6965 122.16C88.9285 122.04 89.1365 121.9 89.3205 121.74L89.7525 122.4C89.4885 122.632 89.1965 122.816 88.8765 122.952C88.5565 123.08 88.2205 123.144 87.8685 123.144ZM92.2639 123.144C91.7759 123.144 91.3679 123 91.0399 122.712C90.7199 122.424 90.5599 122.016 90.5599 121.488C90.5599 120.848 90.8439 120.36 91.4119 120.024C91.9799 119.68 92.8879 119.44 94.1359 119.304C94.1359 119.12 94.1159 118.94 94.0759 118.764C94.0439 118.588 93.9839 118.432 93.8959 118.296C93.8079 118.16 93.6839 118.052 93.5239 117.972C93.3719 117.884 93.1759 117.84 92.9359 117.84C92.5999 117.84 92.2839 117.904 91.9879 118.032C91.6919 118.16 91.4279 118.304 91.1959 118.464L90.8119 117.78C91.0839 117.604 91.4159 117.436 91.8079 117.276C92.1999 117.108 92.6319 117.024 93.1039 117.024C93.8159 117.024 94.3319 117.244 94.6519 117.684C94.9719 118.116 95.1319 118.696 95.1319 119.424V123H94.3159L94.2319 122.304H94.1959C93.9159 122.536 93.6159 122.736 93.2959 122.904C92.9759 123.064 92.6319 123.144 92.2639 123.144ZM92.5519 122.352C92.8319 122.352 93.0959 122.288 93.3439 122.16C93.5919 122.024 93.8559 121.828 94.1359 121.572V119.952C93.6479 120.016 93.2359 120.092 92.8999 120.18C92.5719 120.268 92.3039 120.372 92.0959 120.492C91.8959 120.612 91.7479 120.752 91.6519 120.912C91.5639 121.064 91.5199 121.232 91.5199 121.416C91.5199 121.752 91.6199 121.992 91.8199 122.136C92.0199 122.28 92.2639 122.352 92.5519 122.352ZM96.9668 123V117.168H97.7828L97.8668 118.224H97.9028C98.1028 117.856 98.3428 117.564 98.6228 117.348C98.9108 117.132 99.2228 117.024 99.5588 117.024C99.7908 117.024 99.9988 117.064 100.183 117.144L99.9908 118.008C99.8948 117.976 99.8068 117.952 99.7268 117.936C99.6468 117.92 99.5468 117.912 99.4268 117.912C99.1788 117.912 98.9188 118.012 98.6468 118.212C98.3828 118.412 98.1508 118.76 97.9508 119.256V123H96.9668ZM103.002 123.144C102.266 123.144 101.678 122.88 101.238 122.352C100.806 121.824 100.59 121.072 100.59 120.096C100.59 119.624 100.658 119.2 100.794 118.824C100.938 118.44 101.126 118.116 101.358 117.852C101.59 117.588 101.858 117.384 102.162 117.24C102.466 117.096 102.786 117.024 103.122 117.024C103.458 117.024 103.75 117.084 103.998 117.204C104.246 117.324 104.498 117.488 104.754 117.696L104.706 116.7V114.456H105.702V123H104.886L104.802 122.316H104.766C104.534 122.54 104.266 122.736 103.962 122.904C103.666 123.064 103.346 123.144 103.002 123.144ZM103.218 122.316C103.49 122.316 103.746 122.252 103.986 122.124C104.226 121.988 104.466 121.784 104.706 121.512V118.464C104.458 118.24 104.218 118.084 103.986 117.996C103.762 117.9 103.53 117.852 103.29 117.852C103.058 117.852 102.838 117.908 102.63 118.02C102.43 118.124 102.254 118.276 102.102 118.476C101.95 118.668 101.83 118.9 101.742 119.172C101.654 119.444 101.61 119.748 101.61 120.084C101.61 120.788 101.75 121.336 102.03 121.728C102.31 122.12 102.706 122.316 103.218 122.316ZM107.486 125.04L107.246 124.464C107.59 124.312 107.858 124.108 108.05 123.852C108.242 123.604 108.334 123.32 108.326 123C108.302 123.008 108.262 123.012 108.206 123.012C108.014 123.012 107.846 122.956 107.702 122.844C107.566 122.724 107.498 122.552 107.498 122.328C107.498 122.112 107.57 121.944 107.714 121.824C107.858 121.696 108.03 121.632 108.23 121.632C108.486 121.632 108.686 121.736 108.83 121.944C108.982 122.152 109.058 122.436 109.058 122.796C109.058 123.316 108.918 123.768 108.638 124.152C108.358 124.536 107.974 124.832 107.486 125.04ZM114.893 123.144C114.581 123.144 114.317 123.096 114.101 123C113.893 122.904 113.721 122.772 113.585 122.604C113.457 122.436 113.365 122.232 113.309 121.992C113.253 121.752 113.225 121.488 113.225 121.2V117.972H112.361V117.228L113.273 117.168L113.393 115.536H114.221V117.168H115.793V117.972H114.221V121.212C114.221 121.572 114.285 121.852 114.413 122.052C114.549 122.244 114.785 122.34 115.121 122.34C115.225 122.34 115.337 122.324 115.457 122.292C115.577 122.26 115.685 122.224 115.781 122.184L115.973 122.928C115.813 122.984 115.637 123.032 115.445 123.072C115.261 123.12 115.077 123.144 114.893 123.144ZM117.111 123V114.456H118.095V116.784L118.059 117.984C118.339 117.72 118.631 117.496 118.935 117.312C119.239 117.12 119.595 117.024 120.003 117.024C120.619 117.024 121.067 117.216 121.347 117.6C121.635 117.984 121.779 118.552 121.779 119.304V123H120.795V119.436C120.795 118.884 120.707 118.488 120.531 118.248C120.355 118 120.075 117.876 119.691 117.876C119.387 117.876 119.119 117.952 118.887 118.104C118.655 118.256 118.391 118.48 118.095 118.776V123H117.111ZM126.003 123.144C125.611 123.144 125.243 123.076 124.899 122.94C124.563 122.796 124.267 122.596 124.011 122.34C123.763 122.076 123.567 121.756 123.423 121.38C123.279 121.004 123.207 120.576 123.207 120.096C123.207 119.616 123.279 119.188 123.423 118.812C123.575 118.428 123.771 118.104 124.011 117.84C124.259 117.576 124.539 117.376 124.851 117.24C125.163 117.096 125.487 117.024 125.823 117.024C126.191 117.024 126.519 117.088 126.807 117.216C127.103 117.344 127.347 117.528 127.539 117.768C127.739 118.008 127.891 118.296 127.995 118.632C128.099 118.968 128.151 119.344 128.151 119.76C128.151 119.864 128.147 119.968 128.139 120.072C128.139 120.168 128.131 120.252 128.115 120.324H124.179C124.219 120.948 124.411 121.444 124.755 121.812C125.107 122.172 125.563 122.352 126.123 122.352C126.403 122.352 126.659 122.312 126.891 122.232C127.131 122.144 127.359 122.032 127.575 121.896L127.923 122.544C127.667 122.704 127.383 122.844 127.071 122.964C126.759 123.084 126.403 123.144 126.003 123.144ZM124.167 119.616H127.287C127.287 119.024 127.159 118.576 126.903 118.272C126.655 117.96 126.303 117.804 125.847 117.804C125.639 117.804 125.439 117.844 125.247 117.924C125.063 118.004 124.895 118.124 124.743 118.284C124.591 118.436 124.463 118.624 124.359 118.848C124.263 119.072 124.199 119.328 124.167 119.616ZM129.592 123V117.168H130.408L130.492 118.008H130.528C130.808 117.728 131.1 117.496 131.404 117.312C131.716 117.12 132.076 117.024 132.484 117.024C133.1 117.024 133.548 117.216 133.828 117.6C134.116 117.984 134.26 118.552 134.26 119.304V123H133.276V119.436C133.276 118.884 133.188 118.488 133.012 118.248C132.836 118 132.556 117.876 132.172 117.876C131.868 117.876 131.6 117.952 131.368 118.104C131.136 118.256 130.872 118.48 130.576 118.776V123H129.592ZM57.5052 138.144C57.1212 138.144 56.7612 138.076 56.4252 137.94C56.0892 137.804 55.7972 137.608 55.5492 137.352C55.3092 137.088 55.1172 136.768 54.9732 136.392C54.8372 136.008 54.7692 135.576 54.7692 135.096C54.7692 134.608 54.8452 134.176 54.9972 133.8C55.1492 133.416 55.3532 133.092 55.6092 132.828C55.8652 132.564 56.1612 132.364 56.4972 132.228C56.8412 132.092 57.2012 132.024 57.5772 132.024C57.9612 132.024 58.2892 132.092 58.5612 132.228C58.8332 132.364 59.0732 132.524 59.2812 132.708L58.7772 133.356C58.6092 133.204 58.4292 133.08 58.2372 132.984C58.0532 132.888 57.8452 132.84 57.6132 132.84C57.3492 132.84 57.1052 132.896 56.8812 133.008C56.6572 133.112 56.4652 133.264 56.3052 133.464C56.1452 133.664 56.0172 133.904 55.9212 134.184C55.8332 134.456 55.7892 134.76 55.7892 135.096C55.7892 135.432 55.8332 135.736 55.9212 136.008C56.0092 136.28 56.1292 136.516 56.2812 136.716C56.4412 136.908 56.6332 137.06 56.8572 137.172C57.0812 137.276 57.3252 137.328 57.5892 137.328C57.8612 137.328 58.1092 137.272 58.3332 137.16C58.5652 137.04 58.7732 136.9 58.9572 136.74L59.3892 137.4C59.1252 137.632 58.8332 137.816 58.5132 137.952C58.1932 138.08 57.8572 138.144 57.5052 138.144ZM61.7178 138.144C61.3418 138.144 61.0738 138.032 60.9138 137.808C60.7538 137.584 60.6738 137.256 60.6738 136.824V129.456H61.6578V136.896C61.6578 137.056 61.6858 137.168 61.7418 137.232C61.7978 137.296 61.8618 137.328 61.9338 137.328C61.9658 137.328 61.9938 137.328 62.0178 137.328C62.0498 137.328 62.0938 137.32 62.1498 137.304L62.2818 138.048C62.2178 138.08 62.1418 138.104 62.0538 138.12C61.9658 138.136 61.8538 138.144 61.7178 138.144ZM63.7324 138V132.168H64.7164V138H63.7324ZM64.2364 130.968C64.0444 130.968 63.8804 130.908 63.7444 130.788C63.6164 130.668 63.5524 130.516 63.5524 130.332C63.5524 130.14 63.6164 129.988 63.7444 129.876C63.8804 129.756 64.0444 129.696 64.2364 129.696C64.4284 129.696 64.5884 129.756 64.7164 129.876C64.8524 129.988 64.9204 130.14 64.9204 130.332C64.9204 130.516 64.8524 130.668 64.7164 130.788C64.5884 130.908 64.4284 130.968 64.2364 130.968ZM68.9895 138.144C68.6055 138.144 68.2455 138.076 67.9095 137.94C67.5735 137.804 67.2815 137.608 67.0335 137.352C66.7935 137.088 66.6015 136.768 66.4575 136.392C66.3215 136.008 66.2535 135.576 66.2535 135.096C66.2535 134.608 66.3295 134.176 66.4815 133.8C66.6335 133.416 66.8375 133.092 67.0935 132.828C67.3495 132.564 67.6455 132.364 67.9815 132.228C68.3255 132.092 68.6855 132.024 69.0615 132.024C69.4455 132.024 69.7735 132.092 70.0455 132.228C70.3175 132.364 70.5575 132.524 70.7655 132.708L70.2615 133.356C70.0935 133.204 69.9135 133.08 69.7215 132.984C69.5375 132.888 69.3295 132.84 69.0975 132.84C68.8335 132.84 68.5895 132.896 68.3655 133.008C68.1415 133.112 67.9495 133.264 67.7895 133.464C67.6295 133.664 67.5015 133.904 67.4055 134.184C67.3175 134.456 67.2735 134.76 67.2735 135.096C67.2735 135.432 67.3175 135.736 67.4055 136.008C67.4935 136.28 67.6135 136.516 67.7655 136.716C67.9255 136.908 68.1175 137.06 68.3415 137.172C68.5655 137.276 68.8095 137.328 69.0735 137.328C69.3455 137.328 69.5935 137.272 69.8175 137.16C70.0495 137.04 70.2575 136.9 70.4415 136.74L70.8735 137.4C70.6095 137.632 70.3175 137.816 69.9975 137.952C69.6775 138.08 69.3415 138.144 68.9895 138.144ZM72.1582 138V129.456H73.1302V135.24H73.1662L75.6502 132.168H76.7422L74.7862 134.508L77.0062 138H75.9262L74.2222 135.192L73.1302 136.464V138H72.1582ZM80.502 138V129.456H81.486V131.784L81.45 132.984C81.73 132.72 82.022 132.496 82.326 132.312C82.63 132.12 82.986 132.024 83.394 132.024C84.01 132.024 84.458 132.216 84.738 132.6C85.026 132.984 85.17 133.552 85.17 134.304V138H84.186V134.436C84.186 133.884 84.098 133.488 83.922 133.248C83.746 133 83.466 132.876 83.082 132.876C82.778 132.876 82.51 132.952 82.278 133.104C82.046 133.256 81.782 133.48 81.486 133.776V138H80.502ZM89.3933 138.144C89.0013 138.144 88.6333 138.076 88.2893 137.94C87.9533 137.796 87.6573 137.596 87.4013 137.34C87.1533 137.076 86.9573 136.756 86.8133 136.38C86.6693 136.004 86.5973 135.576 86.5973 135.096C86.5973 134.616 86.6693 134.188 86.8133 133.812C86.9653 133.428 87.1613 133.104 87.4013 132.84C87.6493 132.576 87.9293 132.376 88.2413 132.24C88.5533 132.096 88.8773 132.024 89.2133 132.024C89.5813 132.024 89.9093 132.088 90.1973 132.216C90.4933 132.344 90.7373 132.528 90.9293 132.768C91.1293 133.008 91.2813 133.296 91.3853 133.632C91.4893 133.968 91.5413 134.344 91.5413 134.76C91.5413 134.864 91.5373 134.968 91.5293 135.072C91.5293 135.168 91.5213 135.252 91.5053 135.324H87.5693C87.6093 135.948 87.8013 136.444 88.1453 136.812C88.4973 137.172 88.9533 137.352 89.5133 137.352C89.7933 137.352 90.0493 137.312 90.2813 137.232C90.5213 137.144 90.7493 137.032 90.9653 136.896L91.3133 137.544C91.0573 137.704 90.7733 137.844 90.4613 137.964C90.1493 138.084 89.7933 138.144 89.3933 138.144ZM87.5573 134.616H90.6773C90.6773 134.024 90.5493 133.576 90.2933 133.272C90.0453 132.96 89.6933 132.804 89.2373 132.804C89.0293 132.804 88.8293 132.844 88.6373 132.924C88.4533 133.004 88.2853 133.124 88.1333 133.284C87.9813 133.436 87.8533 133.624 87.7493 133.848C87.6533 134.072 87.5893 134.328 87.5573 134.616ZM92.9824 138V132.168H93.7984L93.8824 133.224H93.9184C94.1184 132.856 94.3584 132.564 94.6384 132.348C94.9264 132.132 95.2384 132.024 95.5744 132.024C95.8064 132.024 96.0144 132.064 96.1984 132.144L96.0064 133.008C95.9104 132.976 95.8224 132.952 95.7424 132.936C95.6624 132.92 95.5624 132.912 95.4424 132.912C95.1944 132.912 94.9344 133.012 94.6624 133.212C94.3984 133.412 94.1664 133.76 93.9664 134.256V138H92.9824ZM99.3894 138.144C98.9974 138.144 98.6294 138.076 98.2854 137.94C97.9494 137.796 97.6534 137.596 97.3974 137.34C97.1494 137.076 96.9534 136.756 96.8094 136.38C96.6654 136.004 96.5934 135.576 96.5934 135.096C96.5934 134.616 96.6654 134.188 96.8094 133.812C96.9614 133.428 97.1574 133.104 97.3974 132.84C97.6454 132.576 97.9254 132.376 98.2374 132.24C98.5494 132.096 98.8734 132.024 99.2094 132.024C99.5774 132.024 99.9054 132.088 100.193 132.216C100.489 132.344 100.733 132.528 100.925 132.768C101.125 133.008 101.277 133.296 101.381 133.632C101.485 133.968 101.537 134.344 101.537 134.76C101.537 134.864 101.533 134.968 101.525 135.072C101.525 135.168 101.517 135.252 101.501 135.324H97.5654C97.6054 135.948 97.7974 136.444 98.1414 136.812C98.4934 137.172 98.9494 137.352 99.5094 137.352C99.7894 137.352 100.045 137.312 100.277 137.232C100.517 137.144 100.745 137.032 100.961 136.896L101.309 137.544C101.053 137.704 100.769 137.844 100.457 137.964C100.145 138.084 99.7894 138.144 99.3894 138.144ZM97.5534 134.616H100.673C100.673 134.024 100.545 133.576 100.289 133.272C100.041 132.96 99.6894 132.804 99.2334 132.804C99.0254 132.804 98.8254 132.844 98.6334 132.924C98.4494 133.004 98.2814 133.124 98.1294 133.284C97.9774 133.436 97.8494 133.624 97.7454 133.848C97.6494 134.072 97.5854 134.328 97.5534 134.616ZM103.495 138.144C103.295 138.144 103.123 138.076 102.979 137.94C102.843 137.796 102.775 137.616 102.775 137.4C102.775 137.168 102.843 136.984 102.979 136.848C103.123 136.704 103.295 136.632 103.495 136.632C103.687 136.632 103.851 136.704 103.987 136.848C104.131 136.984 104.203 137.168 104.203 137.4C104.203 137.616 104.131 137.796 103.987 137.94C103.851 138.076 103.687 138.144 103.495 138.144Z" fill="#646464"/>
<defs>
<filter id="filter0_i_38_215" x="55" y="38" width="50" height="51" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
<feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/>
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
<feOffset dy="1"/>
<feGaussianBlur stdDeviation="2"/>
<feComposite in2="hardAlpha" operator="arithmetic" k2="-1" k3="1"/>
<feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25 0"/>
<feBlend mode="normal" in2="shape" result="effect1_innerShadow_38_215"/>
</filter>
<linearGradient id="paint0_linear_38_215" x1="80" y1="38" x2="80" y2="88" gradientUnits="userSpaceOnUse">
<stop stop-color="#67C5CC"/>
<stop offset="1" stop-color="#A6DEFD"/>
</linearGradient>
</defs>
</svg>`;
if (side === 'front') {
if (front.length === 0) {
return placeholder;
}
else {
return front;
}
}
else if (side === 'back') {
if (back.length === 0) {
return placeholder;
}
else {
return back;
}
}
}
return (figma.widget.h(AutoLayout, { verticalAlignItems: 'center', spacing: 0, padding: 0, cornerRadius: 0, effect: {
type: 'drop-shadow',
color: { r: 0, g: 0, b: 0, a: 0.3 },
offset: { x: 0, y: 3 },
blur: 4,
spread: 2,
} },
figma.widget.h(Frame, { width: width(), height: height(), onClick: () => __awaiter(this, void 0, void 0, function* () {
if (side === 'front') {
if (front.length === 0) {
if (figma.currentPage.selection.length === 0)
return;
if (figma.currentPage.selection[0].type === 'WIDGET' && figma.currentPage.selection[0].widgetId === figma.widgetId)
return;
console.log('front is empty, setting to current selection.');
const svg = yield figma.currentPage.selection[0].exportAsync({ format: 'SVG' });
setFront(String.fromCharCode.apply(null, svg));
setFrontWidth(figma.currentPage.selection[0].width);
setFrontHeight(figma.currentPage.selection[0].height);
}
else {
if (figma.currentPage.selection.length === 0) {
setSide('back');
}
else {
figma.currentPage.selection.forEach((node) => {
if (node.type !== 'WIDGET' || node.widgetId !== figma.widgetId)
return;
console.log(node, node.id, node.widgetSyncedState['side']);
const nodeState = node.widgetSyncedState;
nodeState['side'] = node.widgetSyncedState['side'] === 'front' ? 'back' : 'front';
node.setWidgetSyncedState(nodeState);
});
}
}
}
else if (side === 'back') {
if (back.length === 0) {
if (figma.currentPage.selection.length === 0)
return;
if (figma.currentPage.selection[0].type === 'WIDGET' && figma.currentPage.selection[0].widgetId === figma.widgetId)
return;
console.log('back is empty, setting to current selection.');
const svg = yield figma.currentPage.selection[0].exportAsync({ format: 'SVG' });
setBack(String.fromCharCode.apply(null, svg));
setBackWidth(figma.currentPage.selection[0].width);
setBackHeight(figma.currentPage.selection[0].height);
}
else {
if (figma.currentPage.selection.length === 0) {
setSide('front');
}
else {
figma.currentPage.selection.forEach((node) => {
if (node.type !== 'WIDGET' || node.widgetId !== figma.widgetId)
return;
console.log(node, node.id, node.widgetSyncedState['side']);
const nodeState = node.widgetSyncedState;
nodeState['side'] = node.widgetSyncedState['side'] === 'front' ? 'back' : 'front';
node.setWidgetSyncedState(nodeState);
});
}
}
}
}) },
figma.widget.h(SVG, { src: content() }),
figma.widget.h(SVG, { x: 8, y: height() - 30, src: flipSVG, onClick: () => __awaiter(this, void 0, void 0, function* () {
// if (side === 'front') {
// setSide('back');
// } else if (side === 'back') {
// setSide('front');
// }
}) }))));
}
widget.register(Widget);