zoomora 1.1.0 → 1.2.1
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/README.md +75 -15
- package/dist/zoomora.css +3 -3
- package/dist/zoomora.es.js +125 -47
- package/dist/zoomora.es.js.map +1 -1
- package/dist/zoomora.es.min.js +4 -4
- package/dist/zoomora.es.min.js.map +1 -1
- package/dist/zoomora.umd.js +125 -47
- package/dist/zoomora.umd.js.map +1 -1
- package/dist/zoomora.umd.min.js +4 -4
- package/dist/zoomora.umd.min.js.map +1 -1
- package/package.json +1 -1
- package/src/styles/fonts/Zoomora.otf +0 -0
- package/src/styles/fonts/Zoomora.ttf +0 -0
- package/src/styles/fonts/Zoomora.woff +0 -0
- package/src/styles/fonts/Zoomora.woff2 +0 -0
- package/src/styles/zoomora.scss +11 -13
- package/src/zoomora.js +191 -66
- package/src/styles/fonts/Zoomora.eot +0 -0
- package/src/styles/fonts/Zoomora.svg +0 -19
package/src/zoomora.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* Zoomora Lightbox Plugin v1.1
|
|
2
|
+
* Zoomora Lightbox Plugin v1.2.1
|
|
3
3
|
* A modern, responsive lightbox plugin with zoom, fullscreen, and gallery features
|
|
4
4
|
*
|
|
5
|
-
* Copyright (c)
|
|
5
|
+
* Copyright (c) 2026 Faruk Ahmed (FrontTheme)
|
|
6
6
|
* Licensed under MIT License
|
|
7
7
|
*/
|
|
8
8
|
|
|
@@ -46,6 +46,7 @@ import './styles/zoomora.scss';
|
|
|
46
46
|
maxZoomScale: 3, // Maximum zoom scale
|
|
47
47
|
zoomStep: 0.1, // Zoom step for scroll wheel
|
|
48
48
|
animationDuration: 300, // Animation duration in ms
|
|
49
|
+
closeOnBackgroundClick: true, // Close lightbox when clicking on background
|
|
49
50
|
onOpen: null, // Callback when lightbox opens
|
|
50
51
|
onClose: null, // Callback when lightbox closes
|
|
51
52
|
onNext: null, // Callback when navigating to next item
|
|
@@ -160,21 +161,27 @@ import './styles/zoomora.scss';
|
|
|
160
161
|
<div class="zoomora" id="zoomoraLightbox">
|
|
161
162
|
<div class="zoomora-container">
|
|
162
163
|
<div class="zoomora-header" id="zoomoraHeader">
|
|
163
|
-
<div class="zoomora-counter" id="zoomoraCounter">1 / 1</div>
|
|
164
|
+
<div class="zoomora-counter" id="zoomoraCounter" ${!this.options.showCounter ? 'style="opacity:0;visibility:hidden;"' : ''}>1 / 1</div>
|
|
164
165
|
<div class="zoomora-controls">
|
|
165
|
-
|
|
166
|
-
<
|
|
167
|
-
|
|
166
|
+
${this.options.showThumbnails ? `
|
|
167
|
+
<button class="zoomora-btn" id="zoomoraThumbnailBtn" title="Toggle Thumbnails">
|
|
168
|
+
<i class="zoomorai-thumbnails"></i>
|
|
169
|
+
</button>
|
|
170
|
+
` : ''}
|
|
168
171
|
${autoHideButtonHTML}
|
|
169
|
-
|
|
170
|
-
<
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
172
|
+
${this.options.showZoom ? `
|
|
173
|
+
<button class="zoomora-btn" id="zoomoraZoomBtn" title="Zoom">
|
|
174
|
+
<i class="zoomorai-zoom"></i>
|
|
175
|
+
</button>
|
|
176
|
+
` : ''}
|
|
177
|
+
${this.options.showFullscreen ? `
|
|
178
|
+
<button class="zoomora-btn" id="zoomoraFullscreenBtn" title="Fullscreen">
|
|
179
|
+
<i class="zoomorai-expand"></i>
|
|
180
|
+
</button>
|
|
181
|
+
<button class="zoomora-btn" id="zoomoraCollapseBtn" title="Exit Fullscreen" style="display: none;">
|
|
182
|
+
<i class="zoomorai-collapse"></i>
|
|
183
|
+
</button>
|
|
184
|
+
` : ''}
|
|
178
185
|
<button class="zoomora-btn" id="zoomoraCloseBtn" title="Close">
|
|
179
186
|
<i class="zoomorai-close"></i>
|
|
180
187
|
</button>
|
|
@@ -193,8 +200,8 @@ import './styles/zoomora.scss';
|
|
|
193
200
|
<i class="zoomorai-arrow-right"></i>
|
|
194
201
|
</button>
|
|
195
202
|
|
|
196
|
-
<div class="zoomora-caption" id="zoomoraCaption"></div>
|
|
197
|
-
<div class="zoomora-thumbnails" id="zoomoraThumbs"></div>
|
|
203
|
+
<div class="zoomora-caption" id="zoomoraCaption" ${!this.options.showThumbnails ? 'style="bottom:20px;"' : ''}></div>
|
|
204
|
+
<div class="zoomora-thumbnails" id="zoomoraThumbs" ${!this.options.showThumbnails ? 'style="display:none;"' : ''}></div>
|
|
198
205
|
</div>
|
|
199
206
|
</div>
|
|
200
207
|
`;
|
|
@@ -230,10 +237,16 @@ import './styles/zoomora.scss';
|
|
|
230
237
|
this.addEventListener(document.getElementById('zoomoraCloseBtn'), 'click', () => this.close());
|
|
231
238
|
this.addEventListener(document.getElementById('zoomoraPrevBtn'), 'click', () => this.prev());
|
|
232
239
|
this.addEventListener(document.getElementById('zoomoraNextBtn'), 'click', () => this.next());
|
|
233
|
-
this.
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
this.
|
|
240
|
+
if (this.options.showZoom) {
|
|
241
|
+
this.addEventListener(document.getElementById('zoomoraZoomBtn'), 'click', () => this.toggleZoom());
|
|
242
|
+
}
|
|
243
|
+
if (this.options.showFullscreen) {
|
|
244
|
+
this.addEventListener(document.getElementById('zoomoraFullscreenBtn'), 'click', () => this.toggleFullscreen());
|
|
245
|
+
this.addEventListener(document.getElementById('zoomoraCollapseBtn'), 'click', () => this.exitFullscreen());
|
|
246
|
+
}
|
|
247
|
+
if (this.options.showThumbnails) {
|
|
248
|
+
this.addEventListener(document.getElementById('zoomoraThumbnailBtn'), 'click', () => this.toggleThumbnails());
|
|
249
|
+
}
|
|
237
250
|
|
|
238
251
|
// Fullscreen change events
|
|
239
252
|
this.addEventListener(document, 'fullscreenchange', this.boundMethods.handleFullscreenChange);
|
|
@@ -247,7 +260,7 @@ import './styles/zoomora.scss';
|
|
|
247
260
|
// Lightbox click to close
|
|
248
261
|
this.addEventListener(this.zoomora, 'click', this.boundMethods.handleZoomoraClick);
|
|
249
262
|
|
|
250
|
-
// Content click for zoom toggle
|
|
263
|
+
// Content click for zoom toggle and background click
|
|
251
264
|
this.addEventListener(this.content, 'click', this.boundMethods.handleContentClick);
|
|
252
265
|
|
|
253
266
|
// Mouse drag events
|
|
@@ -344,16 +357,25 @@ import './styles/zoomora.scss';
|
|
|
344
357
|
* Handle fullscreen change events
|
|
345
358
|
*/
|
|
346
359
|
handleFullscreenChange() {
|
|
347
|
-
const isInFullscreen =
|
|
360
|
+
const isInFullscreen = !!(
|
|
361
|
+
document.fullscreenElement ||
|
|
348
362
|
document.webkitFullscreenElement ||
|
|
349
363
|
document.mozFullScreenElement ||
|
|
350
|
-
document.msFullscreenElement
|
|
364
|
+
document.msFullscreenElement
|
|
365
|
+
);
|
|
351
366
|
|
|
367
|
+
// Only update if state changed from fullscreen to not fullscreen
|
|
352
368
|
if (!isInFullscreen && this.isFullscreen) {
|
|
353
369
|
this.isFullscreen = false;
|
|
354
370
|
this.zoomora.classList.remove('fullscreen');
|
|
355
371
|
this.updateButtons();
|
|
356
372
|
}
|
|
373
|
+
// Update if entering fullscreen
|
|
374
|
+
else if (isInFullscreen && !this.isFullscreen) {
|
|
375
|
+
this.isFullscreen = true;
|
|
376
|
+
this.zoomora.classList.add('fullscreen');
|
|
377
|
+
this.updateButtons();
|
|
378
|
+
}
|
|
357
379
|
}
|
|
358
380
|
|
|
359
381
|
/**
|
|
@@ -361,7 +383,7 @@ import './styles/zoomora.scss';
|
|
|
361
383
|
* @param {Event} e - Click event
|
|
362
384
|
*/
|
|
363
385
|
handleZoomoraClick(e) {
|
|
364
|
-
if (e.target === this.zoomora) {
|
|
386
|
+
if (e.target === this.zoomora && this.options.closeOnBackgroundClick) {
|
|
365
387
|
this.close();
|
|
366
388
|
}
|
|
367
389
|
}
|
|
@@ -376,9 +398,60 @@ import './styles/zoomora.scss';
|
|
|
376
398
|
return;
|
|
377
399
|
}
|
|
378
400
|
|
|
379
|
-
|
|
380
|
-
if (
|
|
381
|
-
|
|
401
|
+
// Don't close on header clicks
|
|
402
|
+
if (this.header && this.header.contains(e.target)) {
|
|
403
|
+
return;
|
|
404
|
+
}
|
|
405
|
+
|
|
406
|
+
// Don't close on button clicks
|
|
407
|
+
if (e.target.closest('button')) {
|
|
408
|
+
return;
|
|
409
|
+
}
|
|
410
|
+
|
|
411
|
+
// Check if click is directly on actual media element (img, video, iframe)
|
|
412
|
+
const mediaElement = e.target.closest('.zoomora-media, .zoomora-video, .zoomora-iframe');
|
|
413
|
+
|
|
414
|
+
if (mediaElement) {
|
|
415
|
+
// Only toggle zoom for images
|
|
416
|
+
if (mediaElement.classList.contains('zoomora-media') && !mediaElement.classList.contains('no-zoom')) {
|
|
417
|
+
this.toggleZoom();
|
|
418
|
+
}
|
|
419
|
+
return;
|
|
420
|
+
}
|
|
421
|
+
|
|
422
|
+
// Check if clicking inside video container but not on video itself
|
|
423
|
+
const videoContainer = e.target.closest('.zoomora-video-container');
|
|
424
|
+
if (videoContainer) {
|
|
425
|
+
// If clicking on the play button, don't close
|
|
426
|
+
if (e.target.closest('.zoomora-play-button')) {
|
|
427
|
+
return;
|
|
428
|
+
}
|
|
429
|
+
// If clicking on background area of video container, close
|
|
430
|
+
if (this.options.closeOnBackgroundClick) {
|
|
431
|
+
this.close();
|
|
432
|
+
}
|
|
433
|
+
return;
|
|
434
|
+
}
|
|
435
|
+
|
|
436
|
+
// Check if clicking on background elements (including when zoomed)
|
|
437
|
+
// This checks the actual target element, not just closest()
|
|
438
|
+
const clickedElement = e.target;
|
|
439
|
+
const isBackgroundElement =
|
|
440
|
+
clickedElement.classList.contains('zoomora-content') ||
|
|
441
|
+
clickedElement.classList.contains('zoomora-slide-container') ||
|
|
442
|
+
clickedElement.classList.contains('zoomora-slide') ||
|
|
443
|
+
clickedElement.classList.contains('zoomora-slides-container') ||
|
|
444
|
+
clickedElement.id === 'zoomoraContent' ||
|
|
445
|
+
clickedElement.id === 'zoomoraSlidesContainer';
|
|
446
|
+
|
|
447
|
+
if (isBackgroundElement && this.options.closeOnBackgroundClick) {
|
|
448
|
+
this.close();
|
|
449
|
+
return;
|
|
450
|
+
}
|
|
451
|
+
|
|
452
|
+
// If we reach here and no media was clicked, close
|
|
453
|
+
if (this.options.closeOnBackgroundClick) {
|
|
454
|
+
this.close();
|
|
382
455
|
}
|
|
383
456
|
}
|
|
384
457
|
|
|
@@ -970,11 +1043,6 @@ import './styles/zoomora.scss';
|
|
|
970
1043
|
}
|
|
971
1044
|
}
|
|
972
1045
|
|
|
973
|
-
/**
|
|
974
|
-
* Calculate zoom levels for an image
|
|
975
|
-
* @param {HTMLImageElement} img - Image element
|
|
976
|
-
* @returns {Object} Zoom configuration
|
|
977
|
-
*/
|
|
978
1046
|
/**
|
|
979
1047
|
* Calculate zoom levels for an image
|
|
980
1048
|
* @param {HTMLImageElement} img - Image element
|
|
@@ -1151,7 +1219,6 @@ import './styles/zoomora.scss';
|
|
|
1151
1219
|
const zoomConfig = this.calculateZoomLevels(media);
|
|
1152
1220
|
|
|
1153
1221
|
if (!zoomConfig.canZoom) {
|
|
1154
|
-
console.log('Image cannot be zoomed (already at full size or larger)');
|
|
1155
1222
|
return;
|
|
1156
1223
|
}
|
|
1157
1224
|
|
|
@@ -1193,8 +1260,6 @@ import './styles/zoomora.scss';
|
|
|
1193
1260
|
media.style.transform = `translate(0px, 0px) scale(${targetScale})`;
|
|
1194
1261
|
media.style.cursor = 'grab';
|
|
1195
1262
|
media.classList.add('zoomed');
|
|
1196
|
-
|
|
1197
|
-
console.log(`Zoomed to level ${currentLevel}/${zoomConfig.levels.length - 1} (${(targetScale * 100).toFixed(0)}%)`);
|
|
1198
1263
|
}
|
|
1199
1264
|
}
|
|
1200
1265
|
|
|
@@ -1231,21 +1296,50 @@ import './styles/zoomora.scss';
|
|
|
1231
1296
|
*/
|
|
1232
1297
|
enterFullscreen() {
|
|
1233
1298
|
const element = this.zoomora;
|
|
1234
|
-
const requestFullscreen = element.requestFullscreen ||
|
|
1235
|
-
element.webkitRequestFullscreen ||
|
|
1236
|
-
element.mozRequestFullScreen ||
|
|
1237
|
-
element.msRequestFullscreen;
|
|
1238
1299
|
|
|
1239
|
-
|
|
1240
|
-
|
|
1300
|
+
try {
|
|
1301
|
+
// Try standard API first
|
|
1302
|
+
if (element.requestFullscreen) {
|
|
1303
|
+
element.requestFullscreen()
|
|
1304
|
+
.then(() => {
|
|
1305
|
+
this.isFullscreen = true;
|
|
1306
|
+
this.zoomora.classList.add('fullscreen');
|
|
1307
|
+
this.updateButtons();
|
|
1308
|
+
})
|
|
1309
|
+
.catch(err => {
|
|
1310
|
+
console.warn('Zoomora: Fullscreen request failed:', err.message);
|
|
1311
|
+
this.fallbackFullscreen();
|
|
1312
|
+
});
|
|
1313
|
+
}
|
|
1314
|
+
// Try webkit (Safari, older Chrome)
|
|
1315
|
+
else if (element.webkitRequestFullscreen) {
|
|
1316
|
+
element.webkitRequestFullscreen();
|
|
1317
|
+
// Webkit doesn't return a promise, so set state immediately
|
|
1318
|
+
this.isFullscreen = true;
|
|
1319
|
+
this.zoomora.classList.add('fullscreen');
|
|
1320
|
+
this.updateButtons();
|
|
1321
|
+
}
|
|
1322
|
+
// Try moz (Firefox)
|
|
1323
|
+
else if (element.mozRequestFullScreen) {
|
|
1324
|
+
element.mozRequestFullScreen();
|
|
1241
1325
|
this.isFullscreen = true;
|
|
1242
1326
|
this.zoomora.classList.add('fullscreen');
|
|
1243
1327
|
this.updateButtons();
|
|
1244
|
-
}
|
|
1245
|
-
|
|
1328
|
+
}
|
|
1329
|
+
// Try ms (IE11)
|
|
1330
|
+
else if (element.msRequestFullscreen) {
|
|
1331
|
+
element.msRequestFullscreen();
|
|
1332
|
+
this.isFullscreen = true;
|
|
1333
|
+
this.zoomora.classList.add('fullscreen');
|
|
1334
|
+
this.updateButtons();
|
|
1335
|
+
}
|
|
1336
|
+
// Fallback to CSS fullscreen
|
|
1337
|
+
else {
|
|
1338
|
+
console.warn('Zoomora: Fullscreen API not supported, using CSS fallback');
|
|
1246
1339
|
this.fallbackFullscreen();
|
|
1247
|
-
}
|
|
1248
|
-
}
|
|
1340
|
+
}
|
|
1341
|
+
} catch (error) {
|
|
1342
|
+
console.error('Zoomora: Error entering fullscreen:', error);
|
|
1249
1343
|
this.fallbackFullscreen();
|
|
1250
1344
|
}
|
|
1251
1345
|
}
|
|
@@ -1254,30 +1348,61 @@ import './styles/zoomora.scss';
|
|
|
1254
1348
|
* Exit fullscreen mode
|
|
1255
1349
|
*/
|
|
1256
1350
|
exitFullscreen() {
|
|
1257
|
-
|
|
1351
|
+
// First check if we're actually in fullscreen
|
|
1352
|
+
const isInFullscreen = !!(
|
|
1353
|
+
document.fullscreenElement ||
|
|
1258
1354
|
document.webkitFullscreenElement ||
|
|
1259
1355
|
document.mozFullScreenElement ||
|
|
1260
|
-
document.msFullscreenElement
|
|
1261
|
-
|
|
1262
|
-
|
|
1263
|
-
|
|
1264
|
-
|
|
1265
|
-
|
|
1266
|
-
|
|
1267
|
-
|
|
1268
|
-
|
|
1269
|
-
|
|
1270
|
-
|
|
1271
|
-
|
|
1272
|
-
|
|
1273
|
-
|
|
1274
|
-
|
|
1275
|
-
|
|
1276
|
-
|
|
1277
|
-
|
|
1356
|
+
document.msFullscreenElement
|
|
1357
|
+
);
|
|
1358
|
+
|
|
1359
|
+
if (!isInFullscreen) {
|
|
1360
|
+
// Not in real fullscreen, just exit CSS fullscreen
|
|
1361
|
+
this.fallbackExitFullscreen();
|
|
1362
|
+
return;
|
|
1363
|
+
}
|
|
1364
|
+
|
|
1365
|
+
try {
|
|
1366
|
+
// Try standard API first
|
|
1367
|
+
if (document.exitFullscreen) {
|
|
1368
|
+
document.exitFullscreen()
|
|
1369
|
+
.then(() => {
|
|
1370
|
+
this.isFullscreen = false;
|
|
1371
|
+
this.zoomora.classList.remove('fullscreen');
|
|
1372
|
+
this.updateButtons();
|
|
1373
|
+
})
|
|
1374
|
+
.catch(err => {
|
|
1375
|
+
console.warn('Zoomora: Exit fullscreen failed:', err.message);
|
|
1376
|
+
this.fallbackExitFullscreen();
|
|
1377
|
+
});
|
|
1378
|
+
}
|
|
1379
|
+
// Try webkit
|
|
1380
|
+
else if (document.webkitExitFullscreen) {
|
|
1381
|
+
document.webkitExitFullscreen();
|
|
1382
|
+
this.isFullscreen = false;
|
|
1383
|
+
this.zoomora.classList.remove('fullscreen');
|
|
1384
|
+
this.updateButtons();
|
|
1385
|
+
}
|
|
1386
|
+
// Try moz
|
|
1387
|
+
else if (document.mozCancelFullScreen) {
|
|
1388
|
+
document.mozCancelFullScreen();
|
|
1389
|
+
this.isFullscreen = false;
|
|
1390
|
+
this.zoomora.classList.remove('fullscreen');
|
|
1391
|
+
this.updateButtons();
|
|
1392
|
+
}
|
|
1393
|
+
// Try ms
|
|
1394
|
+
else if (document.msExitFullscreen) {
|
|
1395
|
+
document.msExitFullscreen();
|
|
1396
|
+
this.isFullscreen = false;
|
|
1397
|
+
this.zoomora.classList.remove('fullscreen');
|
|
1398
|
+
this.updateButtons();
|
|
1399
|
+
}
|
|
1400
|
+
// Fallback
|
|
1401
|
+
else {
|
|
1278
1402
|
this.fallbackExitFullscreen();
|
|
1279
1403
|
}
|
|
1280
|
-
}
|
|
1404
|
+
} catch (error) {
|
|
1405
|
+
console.error('Zoomora: Error exiting fullscreen:', error);
|
|
1281
1406
|
this.fallbackExitFullscreen();
|
|
1282
1407
|
}
|
|
1283
1408
|
}
|
|
Binary file
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" standalone="no"?>
|
|
2
|
-
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
|
|
3
|
-
<svg xmlns="http://www.w3.org/2000/svg">
|
|
4
|
-
<metadata>Generated by IcoMoon</metadata>
|
|
5
|
-
<defs>
|
|
6
|
-
<font id="Zoomora" horiz-adv-x="1024">
|
|
7
|
-
<font-face units-per-em="1024" ascent="960" descent="-64" />
|
|
8
|
-
<missing-glyph horiz-adv-x="1024" />
|
|
9
|
-
<glyph unicode=" " horiz-adv-x="512" d="" />
|
|
10
|
-
<glyph unicode="" glyph-name="thumbnails" d="M816 960h-608c-114.7 0-208-93.3-208-208v-608c0-114.7 93.3-208 208-208h608c114.7 0 208 93.3 208 208v608c0 114.7-93.3 208-208 208zM928 144c0-61.76-50.24-112-112-112h-608c-61.76 0-112 50.24-112 112v608c0 61.76 50.24 112 112 112h608c61.76 0 112-50.24 112-112v-608zM600.78 167.84c0-26.5-21.5-48-48-48h-81.54c-26.5 0-48 21.5-48 48s21.5 48 48 48h81.54c26.5 0 48-21.5 48-48zM752.94 172.56c0.16-1.56 0.24-3.16 0.24-4.72s-0.080-3.16-0.24-4.72c-0.16-1.56-0.38-3.12-0.7-4.66-0.3-1.52-0.7-3.060-1.14-4.56-0.46-1.48-1-2.98-1.6-4.42s-1.26-2.88-2-4.24c-0.74-1.38-1.54-2.74-2.42-4.040-0.86-1.32-1.8-2.58-2.8-3.8-0.98-1.22-2.060-2.4-3.16-3.5s-2.28-2.18-3.5-3.18c-1.22-0.98-2.5-1.92-3.8-2.78s-2.66-1.68-4.040-2.42c-1.36-0.72-2.8-1.4-4.24-2s-2.94-1.14-4.42-1.58c-1.5-0.46-3.040-0.84-4.56-1.16-1.54-0.3-3.1-0.54-4.66-0.7s-3.16-0.24-4.72-0.24-3.16 0.080-4.72 0.24-3.12 0.4-4.66 0.7c-1.52 0.32-3.060 0.7-4.56 1.16-1.48 0.44-2.98 0.98-4.42 1.58s-2.88 1.28-4.24 2c-1.38 0.74-2.74 1.56-4.040 2.42-1.32 0.86-2.58 1.8-3.8 2.78-1.22 1-2.4 2.080-3.5 3.18s-2.18 2.28-3.18 3.5c-0.98 1.22-1.92 2.48-2.78 3.8-0.88 1.3-1.68 2.66-2.42 4.040-0.72 1.36-1.4 2.8-2 4.24s-1.14 2.94-1.58 4.42c-0.46 1.5-0.84 3.040-1.16 4.56-0.3 1.54-0.54 3.1-0.7 4.66s-0.24 3.16-0.24 4.72 0.080 3.16 0.24 4.72 0.4 3.12 0.7 4.66c0.32 1.52 0.7 3.060 1.16 4.56 0.44 1.5 0.98 2.98 1.58 4.42s1.28 2.88 2 4.24c0.74 1.38 1.54 2.74 2.42 4.040 0.86 1.32 1.8 2.58 2.78 3.8 1 1.22 2.080 2.4 3.18 3.5s2.28 2.18 3.5 3.18c1.22 0.98 2.48 1.92 3.8 2.8 1.3 0.86 2.66 1.66 4.040 2.4 1.36 0.74 2.8 1.4 4.24 2s2.94 1.14 4.42 1.6c1.5 0.44 3.040 0.84 4.56 1.14 1.54 0.32 3.1 0.54 4.66 0.7 3.14 0.32 6.32 0.32 9.44 0 1.56-0.16 3.12-0.38 4.66-0.7 1.52-0.3 3.060-0.7 4.56-1.14 1.48-0.46 2.98-1 4.42-1.6s2.88-1.26 4.24-2c1.38-0.74 2.74-1.54 4.040-2.4 1.3-0.88 2.58-1.82 3.8-2.8 1.22-1 2.4-2.080 3.5-3.18s2.18-2.28 3.16-3.5c1-1.22 1.94-2.48 2.8-3.8 0.88-1.3 1.68-2.66 2.42-4.040 0.74-1.36 1.4-2.8 2-4.24s1.14-2.92 1.6-4.42c0.44-1.5 0.84-3.040 1.14-4.56 0.32-1.54 0.54-3.1 0.7-4.66zM366.58 172.56c0.16-1.56 0.24-3.16 0.24-4.72s-0.080-3.16-0.24-4.72c-0.14-1.56-0.38-3.12-0.7-4.66-0.3-1.52-0.7-3.060-1.14-4.56-0.46-1.48-1-2.98-1.6-4.42s-1.26-2.86-2-4.24c-0.74-1.38-1.54-2.74-2.4-4.040-0.88-1.32-1.82-2.58-2.8-3.8-1-1.22-2.060-2.4-3.18-3.5-1.1-1.1-2.28-2.18-3.5-3.18-1.2-0.98-2.48-1.92-3.8-2.78-1.28-0.88-2.64-1.68-4.020-2.42-1.38-0.72-2.82-1.4-4.26-2s-2.92-1.14-4.42-1.58c-1.5-0.46-3.020-0.86-4.56-1.16s-3.1-0.54-4.66-0.7-3.14-0.24-4.72-0.24-3.14 0.080-4.72 0.24c-1.54 0.16-3.12 0.4-4.66 0.7-1.52 0.3-3.060 0.7-4.54 1.16-1.5 0.44-2.98 0.98-4.44 1.58-1.44 0.6-2.86 1.28-4.24 2-1.38 0.74-2.74 1.54-4.040 2.42-1.3 0.86-2.58 1.8-3.78 2.78-1.22 1-2.4 2.080-3.52 3.18-1.1 1.1-2.16 2.28-3.16 3.5s-1.94 2.48-2.8 3.8c-0.86 1.3-1.68 2.66-2.4 4.040-0.74 1.38-1.42 2.8-2.020 4.24s-1.12 2.94-1.58 4.42c-0.46 1.5-0.84 3.040-1.16 4.56-0.3 1.54-0.54 3.1-0.7 4.66s-0.24 3.16-0.24 4.72 0.080 3.16 0.24 4.72 0.4 3.12 0.7 4.66c0.32 1.52 0.7 3.060 1.16 4.56 0.46 1.48 0.98 2.98 1.58 4.42s1.28 2.88 2.020 4.24c0.72 1.38 1.54 2.74 2.4 4.040 0.86 1.32 1.8 2.58 2.8 3.8s2.060 2.4 3.16 3.5c1.12 1.12 2.3 2.18 3.52 3.18 1.2 0.98 2.48 1.92 3.78 2.8 1.3 0.86 2.66 1.66 4.040 2.4s2.8 1.4 4.24 2c1.46 0.6 2.94 1.14 4.44 1.58 1.48 0.46 3.020 0.86 4.54 1.16 1.54 0.3 3.12 0.54 4.66 0.7 3.14 0.32 6.32 0.32 9.44 0 1.56-0.16 3.12-0.4 4.66-0.7s3.060-0.7 4.56-1.16c1.5-0.44 2.98-0.98 4.42-1.58s2.88-1.26 4.26-2c1.38-0.74 2.74-1.54 4.020-2.4 1.32-0.88 2.6-1.82 3.8-2.8 1.22-1 2.4-2.060 3.5-3.18 1.12-1.1 2.18-2.28 3.18-3.5 0.98-1.22 1.92-2.48 2.8-3.8 0.86-1.3 1.66-2.66 2.4-4.040 0.74-1.36 1.4-2.8 2-4.24s1.14-2.94 1.6-4.42c0.44-1.5 0.84-3.040 1.14-4.56 0.32-1.54 0.56-3.1 0.7-4.66z" />
|
|
11
|
-
<glyph unicode="" glyph-name="arrow-left" d="M1024 448c0-26.5-21.5-48-48-48h-928c-1.5 0-2.98 0.080-4.44 0.22-0.080 0-0.16 0-0.24 0-1.46 0.14-2.9 0.36-4.32 0.62-0.1 0-0.18 0.040-0.28 0.040-1.42 0.28-2.82 0.62-4.18 1.020-0.12 0.040-0.22 0.060-0.34 0.1-1.36 0.4-2.68 0.88-3.98 1.4-0.16 0.060-0.3 0.12-0.46 0.18-1.28 0.52-2.52 1.1-3.74 1.74-0.18 0.1-0.36 0.18-0.54 0.28-1.22 0.64-2.4 1.36-3.56 2.1-0.16 0.1-0.34 0.22-0.5 0.32-1.2 0.8-2.36 1.66-3.48 2.56-0.1 0.080-0.22 0.16-0.32 0.24-1.24 1-2.42 2.080-3.54 3.2 0 0 0 0 0 0s0 0 0 0c-1.12 1.12-2.2 2.3-3.2 3.54-0.080 0.1-0.16 0.22-0.24 0.32-0.9 1.12-1.76 2.28-2.56 3.48-0.12 0.16-0.22 0.34-0.32 0.5-0.74 1.16-1.46 2.34-2.1 3.56-0.1 0.18-0.18 0.36-0.28 0.54-0.64 1.22-1.22 2.48-1.74 3.76-0.060 0.14-0.12 0.3-0.18 0.44-0.52 1.3-1 2.64-1.4 4-0.040 0.1-0.060 0.22-0.1 0.32-0.4 1.38-0.74 2.78-1.020 4.2 0 0.080-0.020 0.16-0.040 0.26-0.28 1.42-0.48 2.86-0.62 4.34 0 0.080 0 0.14 0 0.22-0.14 1.46-0.22 2.94-0.22 4.44s0.080 2.98 0.22 4.44c0 0.080 0 0.14 0 0.22 0.14 1.46 0.36 2.92 0.62 4.34 0 0.080 0.020 0.16 0.040 0.26 0.28 1.42 0.62 2.82 1.020 4.2 0.040 0.1 0.060 0.22 0.1 0.32 0.4 1.36 0.88 2.7 1.4 4 0.060 0.14 0.12 0.3 0.18 0.44 0.52 1.28 1.12 2.54 1.74 3.76 0.1 0.18 0.18 0.36 0.28 0.54 0.64 1.22 1.36 2.4 2.1 3.56 0.1 0.16 0.22 0.34 0.32 0.5 0.8 1.2 1.66 2.36 2.56 3.48 0.080 0.1 0.16 0.22 0.24 0.32 1 1.24 2.080 2.42 3.2 3.54 0 0 0 0 0 0l354.76 354.86c18.74 18.74 49.14 18.74 67.88 0s18.74-49.14 0-67.88l-272.84-272.84h812.12c26.5 0 48-21.5 48-48zM246.58 317.3c-18.74 18.74-49.14 18.74-67.88 0s-18.74-49.14 0-67.88l190.14-190.14c9.38-9.38 21.66-14.060 33.94-14.060s24.56 4.68 33.94 14.060c18.74 18.74 18.74 49.14 0 67.88l-190.14 190.14z" />
|
|
12
|
-
<glyph unicode="" glyph-name="arrow-right" d="M1009.96 414.060s0 0 0 0l-354.78-354.78c-9.38-9.38-21.66-14.060-33.94-14.060s-24.56 4.68-33.94 14.060c-18.74 18.74-18.74 49.14 0 67.88l272.84 272.84h-812.14c-26.5 0-48 21.48-48 48s21.5 48 48 48h928c1.5 0 2.98-0.080 4.44-0.22 0.080 0 0.14 0 0.22 0 1.46-0.14 2.92-0.36 4.34-0.62 0.080 0 0.16-0.020 0.26-0.040 1.42-0.28 2.84-0.62 4.22-1.020 0.1-0.040 0.22-0.060 0.32-0.1 1.36-0.4 2.7-0.88 4-1.4 0.14-0.060 0.3-0.12 0.44-0.18 1.28-0.52 2.54-1.12 3.76-1.74 0.18-0.1 0.36-0.18 0.54-0.28 1.22-0.66 2.4-1.36 3.56-2.1 0.16-0.1 0.34-0.2 0.5-0.32 1.2-0.8 2.36-1.66 3.5-2.56 0.1-0.080 0.22-0.16 0.32-0.24 1.24-1 2.42-2.080 3.54-3.2 0 0 0 0 0 0s0 0 0 0c1.12-1.12 2.2-2.3 3.2-3.54 0.080-0.1 0.16-0.22 0.26-0.32 0.9-1.12 1.76-2.28 2.56-3.48 0.12-0.18 0.22-0.34 0.32-0.52 0.74-1.14 1.44-2.34 2.1-3.54 0.1-0.18 0.18-0.36 0.28-0.56 0.62-1.22 1.2-2.46 1.74-3.74 0.060-0.16 0.12-0.32 0.18-0.46 0.52-1.3 0.98-2.62 1.4-3.98 0.040-0.12 0.060-0.24 0.1-0.34 0.4-1.38 0.74-2.76 1.020-4.18 0-0.1 0.040-0.2 0.060-0.28 0.26-1.42 0.48-2.84 0.62-4.3 0-0.080 0-0.16 0-0.26 0.14-1.46 0.22-2.92 0.22-4.42v0c0-1.52-0.080-2.98-0.22-4.44 0-0.080 0-0.16 0-0.26-0.14-1.46-0.36-2.88-0.62-4.3 0-0.1-0.040-0.2-0.060-0.28-0.28-1.42-0.62-2.82-1.020-4.18-0.040-0.12-0.060-0.24-0.1-0.34-0.4-1.36-0.88-2.68-1.4-3.98-0.060-0.16-0.12-0.32-0.18-0.46-0.52-1.28-1.1-2.52-1.74-3.74-0.1-0.18-0.18-0.36-0.28-0.56-0.64-1.22-1.34-2.4-2.1-3.54-0.12-0.18-0.22-0.34-0.32-0.52-0.8-1.2-1.66-2.36-2.56-3.48-0.080-0.1-0.16-0.22-0.26-0.32-1-1.24-2.080-2.42-3.2-3.54zM777.42 578.7c9.38-9.38 21.66-14.060 33.94-14.060s24.56 4.68 33.94 14.060c18.74 18.74 18.74 49.14 0 67.88l-190.14 190.14c-18.74 18.74-49.14 18.74-67.88 0s-18.74-49.14 0-67.88l190.14-190.14z" />
|
|
13
|
-
<glyph unicode="" glyph-name="controls-on" d="M1024 565.18c0 181.6-147.74 329.36-329.36 329.36h-365.28c-181.62 0-329.36-147.76-329.36-329.36s147.74-329.36 329.36-329.36h11l-19.56-33.52c-24.4-41.8-24.58-91.82-0.48-133.8s67.38-67.040 115.8-67.040h151.8c48.4 0 91.7 25.060 115.8 67.040s23.92 92-0.48 133.8l-19.56 33.52h11c181.6 0 329.36 147.74 329.36 329.36zM96 565.18c0 128.68 104.68 233.36 233.36 233.36h365.28c128.68 0 233.36-104.68 233.36-233.36s-104.68-233.36-233.36-233.36h-93.7c-0.28 0-0.56 0-0.84 0h-176.42c-0.2 0-0.4 0-0.6 0h-93.74c-128.68 0-233.36 104.68-233.36 233.36zM620.3 153.9c9.88-16.94 3.38-31.94 0.14-37.6-3.26-5.66-12.94-18.84-32.54-18.84h-151.8c-19.6 0-29.28 13.18-32.54 18.84s-9.74 20.66 0.14 37.6l47.82 81.92h120.96l47.82-81.92zM600.88 565.18c0 26.5 21.5 48 48 48h147.1c26.5 0 48-21.5 48-48s-21.5-48-48-48h-147.1c-26.5 0-48 21.5-48 48zM512.54 565.18c0 99.42-80.58 180-180 180s-180-80.58-180-180 80.58-180 180-180 180 80.58 180 180zM248.54 565.18c0 46.32 37.68 84 84 84s84-37.68 84-84-37.68-84-84-84-84 37.68-84 84z" />
|
|
14
|
-
<glyph unicode="" glyph-name="zoom" d="M739 833.2c-81.74 81.76-190.44 126.8-306.040 126.8s-224.3-45.040-306.040-126.8c-81.74-81.78-126.76-190.5-126.76-306.14s45.020-224.36 126.76-306.12c81.74-81.78 190.44-126.8 306.040-126.8s224.3 45.040 306.040 126.8c81.74 81.76 126.76 190.48 126.76 306.12s-45.020 224.36-126.76 306.12zM432.96 190.14c-185.72 0-336.8 151.14-336.8 336.94s151.080 336.92 336.8 336.92 336.8-151.14 336.8-336.94-151.080-336.94-336.8-336.94zM1010.8 16.88c-0.34 0.36-35.060 37.26-70.2 73.5-20.82 21.46-37.8 38.58-50.44 50.86-24.96 24.24-41.44 40.24-68.82 34.58-25.96-5.38-42.64-30.78-37.28-56.74 2.96-14.32 13.92-22.36 23.92-32.36 16.86-14.4 80.44-79.86 132.9-135.62 9.44-10.040 22.2-15.12 34.98-15.12 11.78 0 23.6 4.32 32.88 13.040 19.32 18.16 20.24 48.54 2.080 67.84zM635.12 527.060c0-26.5-21.5-48-48-48h-106.16v-106.22c0-26.5-21.5-48-48-48s-48 21.5-48 48v106.22h-106.16c-26.5 0-48 21.5-48 48s21.5 48 48 48h106.16v106.22c0 26.5 21.5 48 48 48s48-21.5 48-48v-106.22h106.16c26.5 0 48-21.5 48-48z" />
|
|
15
|
-
<glyph unicode="" glyph-name="controls-off" d="M1024 565.18c0 181.6-147.74 329.36-329.36 329.36h-365.3c-181.6 0-329.34-147.76-329.34-329.36s147.74-329.36 329.36-329.36h11l-19.56-33.52c-24.4-41.8-24.58-91.82-0.5-133.8 24.1-41.98 67.38-67.040 115.8-67.040h151.8c48.4 0 91.7 25.060 115.8 67.040s23.92 92-0.48 133.8l-19.56 33.52h11c181.6 0 329.36 147.74 329.36 329.36zM96 565.18c0 128.68 104.68 233.36 233.36 233.36h365.3c128.68 0 233.36-104.68 233.36-233.36s-104.68-233.36-233.36-233.36h-93.76c-0.16 0-0.3 0-0.46 0h-176.96c-0.12 0-0.24 0-0.36 0h-93.76c-128.68 0-233.36 104.68-233.36 233.36zM620.3 153.9c9.88-16.92 3.38-31.94 0.14-37.6s-12.94-18.84-32.54-18.84h-151.8c-19.6 0-29.28 13.18-32.54 18.84s-9.74 20.66 0.14 37.6l47.82 81.92h120.96l47.82-81.92zM511.46 565.18c0 99.42 80.58 180 180 180s180-80.58 180-180-80.58-180-180-180-180 80.58-180 180z" />
|
|
16
|
-
<glyph unicode="" glyph-name="expand" d="M381.84-16c0-26.5-21.5-48-48-48h-125.84c-114.7 0-208 93.3-208 208v125.84c0 26.5 21.5 48 48 48s48-21.5 48-48v-125.84c0-61.76 50.24-112 112-112h125.84c26.5 0 48-21.5 48-48zM976 317.84c-26.5 0-48-21.5-48-48v-125.84c0-61.76-50.24-112-112-112h-125.84c-26.5 0-48-21.5-48-48s21.5-48 48-48h125.84c114.7 0 208 93.3 208 208v125.84c0 26.5-21.5 48-48 48zM333.84 960h-125.84c-114.7 0-208-93.3-208-208v-125.84c0-26.5 21.5-48 48-48s48 21.5 48 48v125.84c0 61.76 50.24 112 112 112h125.84c26.5 0 48 21.5 48 48s-21.5 48-48 48zM816 960h-125.84c-26.5 0-48-21.5-48-48s21.5-48 48-48h125.84c61.76 0 112-50.24 112-112v-125.84c0-26.5 21.5-48 48-48s48 21.5 48 48v125.84c0 114.7-93.3 208-208 208z" />
|
|
17
|
-
<glyph unicode="" glyph-name="collapse" d="M381.84 109.84v-125.84c0-26.5-21.5-48-48-48s-48 21.5-48 48v125.84c0 61.76-50.24 112-112 112h-125.84c-26.5 0-48 21.5-48 48s21.5 48 48 48h125.84c114.7 0 208-93.3 208-208zM976 317.84h-125.84c-114.7 0-208-93.3-208-208v-125.84c0-26.5 21.5-48 48-48s48 21.5 48 48v125.84c0 61.76 50.24 112 112 112h125.84c26.5 0 48 21.5 48 48s-21.5 48-48 48zM333.84 960c-26.5 0-48-21.5-48-48v-125.84c0-61.76-50.24-112-112-112h-125.84c-26.5 0-48-21.5-48-48s21.5-48 48-48h125.84c114.7 0 208 93.3 208 208v125.84c0 26.5-21.5 48-48 48zM850.16 578.16h125.84c26.5 0 48 21.5 48 48s-21.5 48-48 48h-125.84c-61.76 0-112 50.24-112 112v125.84c0 26.5-21.5 48-48 48s-48-21.5-48-48v-125.84c0-114.7 93.3-208 208-208z" />
|
|
18
|
-
<glyph unicode="" glyph-name="close" d="M925.16 102.72c18.74-18.74 18.74-49.14 0-67.88-9.38-9.38-21.66-14.060-33.94-14.060s-24.56 4.68-33.94 14.060l-345.28 345.28-345.28-345.28c-9.38-9.38-21.66-14.060-33.94-14.060s-24.56 4.68-33.94 14.060c-18.74 18.74-18.74 49.14 0 67.88l345.28 345.28-345.28 345.28c-18.74 18.74-18.74 49.14 0 67.88s49.14 18.74 67.88 0l379.22-379.22s0 0 0 0 0 0 0 0l379.22-379.22zM632.78 520.78c12.28 0 24.56 4.68 33.94 14.060l258.44 258.44c18.74 18.74 18.74 49.14 0 67.88s-49.14 18.74-67.88 0l-258.44-258.44c-18.74-18.74-18.74-49.14 0-67.88 9.38-9.38 21.66-14.060 33.94-14.060z" />
|
|
19
|
-
</font></defs></svg>
|