lexgui 0.5.0 → 0.5.2
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/build/components/codeeditor.js +4 -4
- package/build/components/nodegraph.js +3 -3
- package/build/components/timeline.js +37 -17
- package/build/lexgui.css +186 -82
- package/build/lexgui.js +814 -465
- package/build/lexgui.min.css +1 -1
- package/build/lexgui.min.js +1 -1
- package/build/lexgui.module.js +814 -465
- package/build/lexgui.module.min.js +1 -1
- package/changelog.md +29 -1
- package/package.json +1 -1
package/build/lexgui.js
CHANGED
|
@@ -12,7 +12,7 @@ console.warn( 'Script _build/lexgui.js_ is depracated and will be removed soon.
|
|
|
12
12
|
*/
|
|
13
13
|
|
|
14
14
|
var LX = {
|
|
15
|
-
version: "0.5.
|
|
15
|
+
version: "0.5.2",
|
|
16
16
|
ready: false,
|
|
17
17
|
components: [], // Specific pre-build components
|
|
18
18
|
signals: {}, // Events and triggers
|
|
@@ -52,7 +52,7 @@ else if( typeof Date != "undefined" && Date.now )
|
|
|
52
52
|
else if ( typeof process != "undefined" )
|
|
53
53
|
{
|
|
54
54
|
LX.getTime = function() {
|
|
55
|
-
|
|
55
|
+
const t = process.hrtime();
|
|
56
56
|
return t[ 0 ] * 0.001 + t[ 1 ] * 1e-6;
|
|
57
57
|
};
|
|
58
58
|
}
|
|
@@ -154,7 +154,7 @@ LX.setTheme = setTheme;
|
|
|
154
154
|
*/
|
|
155
155
|
function setThemeColor( colorName, color )
|
|
156
156
|
{
|
|
157
|
-
|
|
157
|
+
const r = document.querySelector( ':root' );
|
|
158
158
|
r.style.setProperty( '--' + colorName, color );
|
|
159
159
|
}
|
|
160
160
|
|
|
@@ -196,10 +196,10 @@ LX.getThemeColor = getThemeColor;
|
|
|
196
196
|
*/
|
|
197
197
|
function getBase64Image( img )
|
|
198
198
|
{
|
|
199
|
-
|
|
199
|
+
const canvas = document.createElement( 'canvas' );
|
|
200
200
|
canvas.width = img.width;
|
|
201
201
|
canvas.height = img.height;
|
|
202
|
-
|
|
202
|
+
const ctx = canvas.getContext( '2d' );
|
|
203
203
|
ctx.drawImage( img, 0, 0 );
|
|
204
204
|
return canvas.toDataURL( 'image/png' );
|
|
205
205
|
}
|
|
@@ -964,8 +964,8 @@ function init( options = { } )
|
|
|
964
964
|
this.root = root;
|
|
965
965
|
this.container = document.body;
|
|
966
966
|
|
|
967
|
-
this.modal.classList.add( '
|
|
968
|
-
this.modal.toggle = function( force ) { this.classList.toggle( '
|
|
967
|
+
this.modal.classList.add( 'hidden-opacity' );
|
|
968
|
+
this.modal.toggle = function( force ) { this.classList.toggle( 'hidden-opacity', force ); };
|
|
969
969
|
|
|
970
970
|
if( options.container )
|
|
971
971
|
{
|
|
@@ -1041,6 +1041,17 @@ function init( options = { } )
|
|
|
1041
1041
|
this.DEFAULT_SPLITBAR_SIZE = 4;
|
|
1042
1042
|
this.OPEN_CONTEXTMENU_ENTRY = 'click';
|
|
1043
1043
|
|
|
1044
|
+
this.widgetResizeObserver = new ResizeObserver( entries => {
|
|
1045
|
+
for ( const entry of entries )
|
|
1046
|
+
{
|
|
1047
|
+
const widget = entry.target?.jsInstance;
|
|
1048
|
+
if( widget && widget.onResize )
|
|
1049
|
+
{
|
|
1050
|
+
widget.onResize( entry.contentRect );
|
|
1051
|
+
}
|
|
1052
|
+
}
|
|
1053
|
+
});
|
|
1054
|
+
|
|
1044
1055
|
this.ready = true;
|
|
1045
1056
|
this.menubars = [ ];
|
|
1046
1057
|
|
|
@@ -1471,11 +1482,20 @@ LX.addSignal = addSignal;
|
|
|
1471
1482
|
|
|
1472
1483
|
class DropdownMenu {
|
|
1473
1484
|
|
|
1485
|
+
static currentMenu = false;
|
|
1486
|
+
|
|
1474
1487
|
constructor( trigger, items, options = {} ) {
|
|
1475
1488
|
|
|
1476
1489
|
console.assert( trigger, "DropdownMenu needs a DOM element as trigger!" );
|
|
1477
|
-
this._trigger = trigger;
|
|
1478
1490
|
|
|
1491
|
+
if( DropdownMenu.currentMenu )
|
|
1492
|
+
{
|
|
1493
|
+
DropdownMenu.currentMenu.destroy();
|
|
1494
|
+
return;
|
|
1495
|
+
}
|
|
1496
|
+
|
|
1497
|
+
this._trigger = trigger;
|
|
1498
|
+
trigger.classList.add( "triggered" );
|
|
1479
1499
|
trigger.ddm = this;
|
|
1480
1500
|
|
|
1481
1501
|
this._items = items;
|
|
@@ -1494,6 +1514,7 @@ class DropdownMenu {
|
|
|
1494
1514
|
|
|
1495
1515
|
this._create( this._items );
|
|
1496
1516
|
|
|
1517
|
+
DropdownMenu.currentMenu = this;
|
|
1497
1518
|
|
|
1498
1519
|
doAsync( () => {
|
|
1499
1520
|
this._adjustPosition();
|
|
@@ -1501,7 +1522,7 @@ class DropdownMenu {
|
|
|
1501
1522
|
this.root.focus();
|
|
1502
1523
|
|
|
1503
1524
|
this._onClick = e => {
|
|
1504
|
-
if( e.target && (
|
|
1525
|
+
if( e.target && ( this.root.contains( e.target ) || e.target == this._trigger ) )
|
|
1505
1526
|
{
|
|
1506
1527
|
return;
|
|
1507
1528
|
}
|
|
@@ -1514,11 +1535,15 @@ class DropdownMenu {
|
|
|
1514
1535
|
|
|
1515
1536
|
destroy() {
|
|
1516
1537
|
|
|
1538
|
+
this._trigger.classList.remove( "triggered" );
|
|
1539
|
+
|
|
1517
1540
|
delete this._trigger.ddm;
|
|
1518
1541
|
|
|
1519
1542
|
document.body.removeEventListener( "click", this._onClick );
|
|
1520
1543
|
|
|
1521
1544
|
LX.root.querySelectorAll( ".lexdropdownmenu" ).forEach( m => { m.remove(); } );
|
|
1545
|
+
|
|
1546
|
+
DropdownMenu.currentMenu = null;
|
|
1522
1547
|
}
|
|
1523
1548
|
|
|
1524
1549
|
_create( items, parentDom ) {
|
|
@@ -1577,12 +1602,6 @@ class DropdownMenu {
|
|
|
1577
1602
|
menuItem.id = pKey;
|
|
1578
1603
|
menuItem.innerHTML = `<span>${ key }</span>`;
|
|
1579
1604
|
|
|
1580
|
-
if( item.icon )
|
|
1581
|
-
{
|
|
1582
|
-
const icon = LX.makeIcon( item.icon );
|
|
1583
|
-
menuItem.prepend( icon );
|
|
1584
|
-
}
|
|
1585
|
-
|
|
1586
1605
|
menuItem.tabIndex = "1";
|
|
1587
1606
|
parentDom.appendChild( menuItem );
|
|
1588
1607
|
|
|
@@ -1598,15 +1617,41 @@ class DropdownMenu {
|
|
|
1598
1617
|
menuItem.appendChild( submenuIcon );
|
|
1599
1618
|
}
|
|
1600
1619
|
|
|
1601
|
-
|
|
1602
|
-
|
|
1603
|
-
|
|
1604
|
-
|
|
1605
|
-
|
|
1606
|
-
}
|
|
1620
|
+
if( item.icon )
|
|
1621
|
+
{
|
|
1622
|
+
const icon = LX.makeIcon( item.icon );
|
|
1623
|
+
menuItem.prepend( icon );
|
|
1624
|
+
}
|
|
1607
1625
|
|
|
1608
|
-
|
|
1609
|
-
|
|
1626
|
+
if( item.checked != undefined )
|
|
1627
|
+
{
|
|
1628
|
+
const checkbox = new Checkbox( pKey + "_entryChecked", item.checked, (v) => {
|
|
1629
|
+
const f = item[ 'callback' ];
|
|
1630
|
+
if( f )
|
|
1631
|
+
{
|
|
1632
|
+
f.call( this, key, menuItem, v );
|
|
1633
|
+
}
|
|
1634
|
+
});
|
|
1635
|
+
const input = checkbox.root.querySelector( "input" );
|
|
1636
|
+
menuItem.prepend( input );
|
|
1637
|
+
|
|
1638
|
+
menuItem.addEventListener( "click", (e) => {
|
|
1639
|
+
if( e.target.type == "checkbox" ) return;
|
|
1640
|
+
input.checked = !input.checked;
|
|
1641
|
+
checkbox.set( input.checked );
|
|
1642
|
+
} );
|
|
1643
|
+
}
|
|
1644
|
+
else
|
|
1645
|
+
{
|
|
1646
|
+
menuItem.addEventListener( "click", () => {
|
|
1647
|
+
const f = item[ 'callback' ];
|
|
1648
|
+
if( f )
|
|
1649
|
+
{
|
|
1650
|
+
f.call( this, key, menuItem );
|
|
1651
|
+
}
|
|
1652
|
+
this.destroy();
|
|
1653
|
+
} );
|
|
1654
|
+
}
|
|
1610
1655
|
|
|
1611
1656
|
menuItem.addEventListener("mouseover", e => {
|
|
1612
1657
|
|
|
@@ -1776,7 +1821,7 @@ class Area {
|
|
|
1776
1821
|
|
|
1777
1822
|
if( !options.skipAppend )
|
|
1778
1823
|
{
|
|
1779
|
-
|
|
1824
|
+
let lexroot = document.getElementById("lexroot");
|
|
1780
1825
|
lexroot.appendChild( this.root );
|
|
1781
1826
|
}
|
|
1782
1827
|
|
|
@@ -1847,12 +1892,12 @@ class Area {
|
|
|
1847
1892
|
this.splitBar.addEventListener("mousedown", innerMouseDown);
|
|
1848
1893
|
this.root.appendChild( this.splitBar );
|
|
1849
1894
|
|
|
1850
|
-
|
|
1851
|
-
|
|
1895
|
+
const that = this;
|
|
1896
|
+
let lastMousePosition = [ 0, 0 ];
|
|
1852
1897
|
|
|
1853
1898
|
function innerMouseDown( e )
|
|
1854
1899
|
{
|
|
1855
|
-
|
|
1900
|
+
const doc = that.root.ownerDocument;
|
|
1856
1901
|
doc.addEventListener( 'mousemove', innerMouseMove );
|
|
1857
1902
|
doc.addEventListener( 'mouseup', innerMouseUp );
|
|
1858
1903
|
lastMousePosition[ 0 ] = e.x;
|
|
@@ -1905,7 +1950,7 @@ class Area {
|
|
|
1905
1950
|
|
|
1906
1951
|
function innerMouseUp( e )
|
|
1907
1952
|
{
|
|
1908
|
-
|
|
1953
|
+
const doc = that.root.ownerDocument;
|
|
1909
1954
|
doc.removeEventListener( 'mousemove', innerMouseMove );
|
|
1910
1955
|
doc.removeEventListener( 'mouseup', innerMouseUp );
|
|
1911
1956
|
document.body.classList.remove( 'nocursor' );
|
|
@@ -1957,9 +2002,9 @@ class Area {
|
|
|
1957
2002
|
this.root = this.sections[ 1 ].root;
|
|
1958
2003
|
}
|
|
1959
2004
|
|
|
1960
|
-
|
|
1961
|
-
|
|
1962
|
-
|
|
2005
|
+
const type = options.type || "horizontal";
|
|
2006
|
+
const sizes = options.sizes || [ "50%", "50%" ];
|
|
2007
|
+
const auto = (options.sizes === 'auto');
|
|
1963
2008
|
|
|
1964
2009
|
if( !sizes[ 1 ] )
|
|
1965
2010
|
{
|
|
@@ -1975,8 +2020,8 @@ class Area {
|
|
|
1975
2020
|
}
|
|
1976
2021
|
|
|
1977
2022
|
// Create areas
|
|
1978
|
-
|
|
1979
|
-
|
|
2023
|
+
let area1 = new Area( { skipAppend: true, className: "split" + ( options.menubar || options.sidebar ? "" : " origin" ) } );
|
|
2024
|
+
let area2 = new Area( { skipAppend: true, className: "split" } );
|
|
1980
2025
|
|
|
1981
2026
|
area1.parentArea = this;
|
|
1982
2027
|
area2.parentArea = this;
|
|
@@ -1984,7 +2029,7 @@ class Area {
|
|
|
1984
2029
|
let minimizable = options.minimizable ?? false;
|
|
1985
2030
|
let resize = ( options.resize ?? true ) || minimizable;
|
|
1986
2031
|
|
|
1987
|
-
|
|
2032
|
+
let data = "0px";
|
|
1988
2033
|
this.offset = 0;
|
|
1989
2034
|
|
|
1990
2035
|
if( resize )
|
|
@@ -2031,7 +2076,7 @@ class Area {
|
|
|
2031
2076
|
|
|
2032
2077
|
if( type == "horizontal" )
|
|
2033
2078
|
{
|
|
2034
|
-
|
|
2079
|
+
let width1 = sizes[ 0 ],
|
|
2035
2080
|
width2 = sizes[ 1 ];
|
|
2036
2081
|
|
|
2037
2082
|
if( width1.constructor == Number )
|
|
@@ -2072,7 +2117,7 @@ class Area {
|
|
|
2072
2117
|
}
|
|
2073
2118
|
else
|
|
2074
2119
|
{
|
|
2075
|
-
|
|
2120
|
+
let height1 = sizes[ 0 ],
|
|
2076
2121
|
height2 = sizes[ 1 ];
|
|
2077
2122
|
|
|
2078
2123
|
if( height1.constructor == Number )
|
|
@@ -2110,11 +2155,11 @@ class Area {
|
|
|
2110
2155
|
return this.sections;
|
|
2111
2156
|
}
|
|
2112
2157
|
|
|
2113
|
-
|
|
2158
|
+
const that = this;
|
|
2114
2159
|
|
|
2115
2160
|
function innerMouseDown( e )
|
|
2116
2161
|
{
|
|
2117
|
-
|
|
2162
|
+
const doc = that.root.ownerDocument;
|
|
2118
2163
|
doc.addEventListener( 'mousemove', innerMouseMove );
|
|
2119
2164
|
doc.addEventListener( 'mouseup', innerMouseUp );
|
|
2120
2165
|
e.stopPropagation();
|
|
@@ -2134,26 +2179,13 @@ class Area {
|
|
|
2134
2179
|
that._moveSplit( -e.movementY );
|
|
2135
2180
|
}
|
|
2136
2181
|
|
|
2137
|
-
const widgets = that.root.querySelectorAll( ".lexwidget" );
|
|
2138
|
-
|
|
2139
|
-
// Send area resize to every widget in the area
|
|
2140
|
-
for( let widget of widgets )
|
|
2141
|
-
{
|
|
2142
|
-
const jsInstance = widget.jsInstance;
|
|
2143
|
-
|
|
2144
|
-
if( jsInstance.onresize )
|
|
2145
|
-
{
|
|
2146
|
-
jsInstance.onresize();
|
|
2147
|
-
}
|
|
2148
|
-
}
|
|
2149
|
-
|
|
2150
2182
|
e.stopPropagation();
|
|
2151
2183
|
e.preventDefault();
|
|
2152
2184
|
}
|
|
2153
2185
|
|
|
2154
2186
|
function innerMouseUp( e )
|
|
2155
2187
|
{
|
|
2156
|
-
|
|
2188
|
+
const doc = that.root.ownerDocument;
|
|
2157
2189
|
doc.removeEventListener( 'mousemove', innerMouseMove );
|
|
2158
2190
|
doc.removeEventListener( 'mouseup', innerMouseUp );
|
|
2159
2191
|
document.body.classList.remove( 'nocursor' );
|
|
@@ -2301,7 +2333,7 @@ class Area {
|
|
|
2301
2333
|
|
|
2302
2334
|
propagateEvent( eventName ) {
|
|
2303
2335
|
|
|
2304
|
-
for(
|
|
2336
|
+
for( let i = 0; i < this.sections.length; i++ )
|
|
2305
2337
|
{
|
|
2306
2338
|
const area = this.sections[ i ];
|
|
2307
2339
|
|
|
@@ -2427,7 +2459,7 @@ class Area {
|
|
|
2427
2459
|
|
|
2428
2460
|
if( float )
|
|
2429
2461
|
{
|
|
2430
|
-
for(
|
|
2462
|
+
for( let i = 0; i < float.length; i++ )
|
|
2431
2463
|
{
|
|
2432
2464
|
const t = float[i];
|
|
2433
2465
|
switch( t )
|
|
@@ -2646,7 +2678,7 @@ class Area {
|
|
|
2646
2678
|
|
|
2647
2679
|
for( var i = 0; i < this.sections.length; i++ )
|
|
2648
2680
|
{
|
|
2649
|
-
this.sections[i]._update();
|
|
2681
|
+
this.sections[ i ]._update();
|
|
2650
2682
|
}
|
|
2651
2683
|
}
|
|
2652
2684
|
};
|
|
@@ -2696,38 +2728,56 @@ class Tabs {
|
|
|
2696
2728
|
e.preventDefault(); // Prevent default action (open as link for some elements)
|
|
2697
2729
|
|
|
2698
2730
|
const tabId = e.dataTransfer.getData( "source" );
|
|
2699
|
-
const
|
|
2700
|
-
if( !
|
|
2731
|
+
const tabDom = document.getElementById( tabId );
|
|
2732
|
+
if( !tabDom ) return;
|
|
2701
2733
|
|
|
2734
|
+
const sourceContainer = tabDom.parentElement;
|
|
2702
2735
|
const target = e.target;
|
|
2703
2736
|
const rect = target.getBoundingClientRect();
|
|
2704
2737
|
|
|
2705
2738
|
if( e.offsetX < ( rect.width * 0.5 ) )
|
|
2706
2739
|
{
|
|
2707
|
-
this.insertBefore(
|
|
2740
|
+
this.insertBefore( tabDom, target );
|
|
2708
2741
|
}
|
|
2709
2742
|
else if( target.nextElementSibling )
|
|
2710
2743
|
{
|
|
2711
|
-
this.insertBefore(
|
|
2744
|
+
this.insertBefore( tabDom, target.nextElementSibling );
|
|
2712
2745
|
}
|
|
2713
2746
|
else
|
|
2714
2747
|
{
|
|
2715
|
-
this.appendChild(
|
|
2748
|
+
this.appendChild( tabDom );
|
|
2716
2749
|
}
|
|
2717
2750
|
|
|
2751
|
+
{
|
|
2752
|
+
// Update childIndex for fit mode tabs in source container
|
|
2753
|
+
sourceContainer.childNodes.forEach( (c, idx) => c.childIndex = ( idx - 1 ) );
|
|
2754
|
+
|
|
2755
|
+
// If needed, set last tab of source container active
|
|
2756
|
+
const sourceAsFit = (/true/).test( e.dataTransfer.getData( "fit" ) );
|
|
2757
|
+
if( sourceContainer.childElementCount == ( sourceAsFit ? 2 : 1 ) )
|
|
2758
|
+
{
|
|
2759
|
+
sourceContainer.lastChild.click(); // single tab or thumb first (fit mode)
|
|
2760
|
+
}
|
|
2761
|
+
else
|
|
2762
|
+
{
|
|
2763
|
+
const sourceSelected = sourceContainer.querySelector( ".selected" );
|
|
2764
|
+
( sourceSelected ?? sourceContainer.childNodes[ sourceAsFit ? 1 : 0 ] ).click();
|
|
2765
|
+
}
|
|
2766
|
+
}
|
|
2767
|
+
|
|
2768
|
+
// Update childIndex for fit mode tabs in target container
|
|
2769
|
+
this.childNodes.forEach( (c, idx) => c.childIndex = ( idx - 1 ) );
|
|
2770
|
+
|
|
2718
2771
|
const content = document.getElementById( tabId + "_content" );
|
|
2719
2772
|
that.area.attach( content );
|
|
2720
2773
|
this.classList.remove("dockingtab");
|
|
2721
2774
|
|
|
2722
|
-
// Change tabs instance
|
|
2723
|
-
|
|
2724
|
-
|
|
2725
|
-
|
|
2726
|
-
// Show on drop
|
|
2727
|
-
el.click();
|
|
2775
|
+
// Change tabs instance and select on drop
|
|
2776
|
+
tabDom.instance = that;
|
|
2777
|
+
tabDom.click();
|
|
2728
2778
|
|
|
2729
2779
|
// Store info
|
|
2730
|
-
that.tabs[
|
|
2780
|
+
that.tabs[ tabDom.dataset["name"] ] = content;
|
|
2731
2781
|
});
|
|
2732
2782
|
|
|
2733
2783
|
area.root.classList.add( "lexareatabscontainer" );
|
|
@@ -2773,7 +2823,7 @@ class Tabs {
|
|
|
2773
2823
|
|
|
2774
2824
|
if( folding == "up" )
|
|
2775
2825
|
{
|
|
2776
|
-
area.root.insertChildAtIndex(area.sections[1].root, 0);
|
|
2826
|
+
area.root.insertChildAtIndex( area.sections[ 1 ].root, 0 );
|
|
2777
2827
|
}
|
|
2778
2828
|
|
|
2779
2829
|
// Listen resize event on parent area
|
|
@@ -2840,18 +2890,13 @@ class Tabs {
|
|
|
2840
2890
|
this.selected = name;
|
|
2841
2891
|
}
|
|
2842
2892
|
|
|
2843
|
-
LX.addSignal( "@on_tab_docked", tabEl, function() {
|
|
2844
|
-
if( this.parentElement.childNodes.length == 1 )
|
|
2845
|
-
{
|
|
2846
|
-
this.parentElement.childNodes[ 0 ].click(); // single tab!!
|
|
2847
|
-
}
|
|
2848
|
-
} );
|
|
2849
|
-
|
|
2850
2893
|
tabEl.addEventListener("click", e => {
|
|
2851
2894
|
|
|
2852
2895
|
e.preventDefault();
|
|
2853
2896
|
e.stopPropagation();
|
|
2854
2897
|
|
|
2898
|
+
const scope = tabEl.instance;
|
|
2899
|
+
|
|
2855
2900
|
if( !tabEl.fixed )
|
|
2856
2901
|
{
|
|
2857
2902
|
// For folding tabs
|
|
@@ -2862,15 +2907,15 @@ class Tabs {
|
|
|
2862
2907
|
tabEl.parentElement.querySelectorAll( 'span' ).forEach( s => s.classList.remove( 'selected' ));
|
|
2863
2908
|
tabEl.classList.toggle('selected', ( this.folding && tabEl.selected ));
|
|
2864
2909
|
// Manage visibility
|
|
2865
|
-
|
|
2910
|
+
scope.area.root.querySelectorAll( '.lextabcontent' ).forEach( c => c.style.display = 'none' );
|
|
2866
2911
|
contentEl.style.display = contentEl.originalDisplay;
|
|
2867
|
-
|
|
2912
|
+
scope.selected = tabEl.dataset.name;
|
|
2868
2913
|
}
|
|
2869
2914
|
|
|
2870
|
-
if(
|
|
2915
|
+
if( scope.folding )
|
|
2871
2916
|
{
|
|
2872
|
-
|
|
2873
|
-
|
|
2917
|
+
scope.folded = tabEl.selected;
|
|
2918
|
+
scope.area.root.classList.toggle( 'folded', !scope.folded );
|
|
2874
2919
|
}
|
|
2875
2920
|
|
|
2876
2921
|
if( options.onSelect )
|
|
@@ -2878,12 +2923,12 @@ class Tabs {
|
|
|
2878
2923
|
options.onSelect(e, tabEl.dataset.name);
|
|
2879
2924
|
}
|
|
2880
2925
|
|
|
2881
|
-
if(
|
|
2926
|
+
if( scope.thumb )
|
|
2882
2927
|
{
|
|
2883
|
-
|
|
2884
|
-
|
|
2885
|
-
|
|
2886
|
-
|
|
2928
|
+
scope.thumb.style.transform = "translate( " + ( tabEl.childIndex * tabEl.offsetWidth ) + "px )";
|
|
2929
|
+
scope.thumb.style.width = ( tabEl.offsetWidth - 5 ) + "px";
|
|
2930
|
+
scope.thumb.style.height = ( tabEl.offsetHeight - 6 ) + "px";
|
|
2931
|
+
scope.thumb.item = tabEl;
|
|
2887
2932
|
}
|
|
2888
2933
|
});
|
|
2889
2934
|
|
|
@@ -2907,12 +2952,14 @@ class Tabs {
|
|
|
2907
2952
|
});
|
|
2908
2953
|
|
|
2909
2954
|
tabEl.setAttribute( 'draggable', true );
|
|
2910
|
-
tabEl.addEventListener( 'dragstart',
|
|
2911
|
-
|
|
2955
|
+
tabEl.addEventListener( 'dragstart', e => {
|
|
2956
|
+
const sourceAsFit = !!this.thumb;
|
|
2957
|
+
if( tabEl.parentElement.childNodes.length == ( sourceAsFit ? 2 : 1 ) ){
|
|
2912
2958
|
e.preventDefault();
|
|
2913
2959
|
return;
|
|
2914
2960
|
}
|
|
2915
2961
|
e.dataTransfer.setData( 'source', e.target.id );
|
|
2962
|
+
e.dataTransfer.setData( 'fit', sourceAsFit );
|
|
2916
2963
|
});
|
|
2917
2964
|
|
|
2918
2965
|
// Attach content
|
|
@@ -4355,6 +4402,8 @@ class Widget {
|
|
|
4355
4402
|
{
|
|
4356
4403
|
root.style.height = root.style.minHeight = options.height;
|
|
4357
4404
|
}
|
|
4405
|
+
|
|
4406
|
+
LX.widgetResizeObserver.observe( root );
|
|
4358
4407
|
}
|
|
4359
4408
|
|
|
4360
4409
|
if( name != undefined )
|
|
@@ -4415,10 +4464,11 @@ class Widget {
|
|
|
4415
4464
|
|
|
4416
4465
|
_addResetProperty( container, callback ) {
|
|
4417
4466
|
|
|
4418
|
-
|
|
4467
|
+
const domEl = LX.makeIcon( "rotate-left", "Reset" )
|
|
4419
4468
|
domEl.style.display = "none";
|
|
4420
4469
|
domEl.style.marginRight = "6px";
|
|
4421
|
-
domEl.
|
|
4470
|
+
domEl.style.marginLeft = "0";
|
|
4471
|
+
domEl.style.paddingInline = "6px";
|
|
4422
4472
|
domEl.addEventListener( "click", callback );
|
|
4423
4473
|
container.appendChild( domEl );
|
|
4424
4474
|
return domEl;
|
|
@@ -4554,15 +4604,17 @@ LX.Widget = Widget;
|
|
|
4554
4604
|
|
|
4555
4605
|
function ADD_CUSTOM_WIDGET( customWidgetName, options = {} )
|
|
4556
4606
|
{
|
|
4557
|
-
let
|
|
4607
|
+
let customIdx = simple_guidGenerator();
|
|
4558
4608
|
|
|
4559
4609
|
Panel.prototype[ 'add' + customWidgetName ] = function( name, instance, callback ) {
|
|
4560
4610
|
|
|
4611
|
+
options.nameWidth = "100%";
|
|
4612
|
+
|
|
4561
4613
|
let widget = new Widget( Widget.CUSTOM, name, null, options );
|
|
4562
4614
|
this._attachWidget( widget );
|
|
4563
4615
|
|
|
4564
4616
|
widget.customName = customWidgetName;
|
|
4565
|
-
widget.customIdx =
|
|
4617
|
+
widget.customIdx = customIdx;
|
|
4566
4618
|
|
|
4567
4619
|
widget.onGetValue = () => {
|
|
4568
4620
|
return instance;
|
|
@@ -4579,7 +4631,6 @@ function ADD_CUSTOM_WIDGET( customWidgetName, options = {} )
|
|
|
4579
4631
|
};
|
|
4580
4632
|
|
|
4581
4633
|
const element = widget.root;
|
|
4582
|
-
element.style.flexWrap = "wrap";
|
|
4583
4634
|
|
|
4584
4635
|
let container, customWidgetsDom;
|
|
4585
4636
|
let default_instance = options.default ?? {};
|
|
@@ -4598,11 +4649,12 @@ function ADD_CUSTOM_WIDGET( customWidgetName, options = {} )
|
|
|
4598
4649
|
|
|
4599
4650
|
container = document.createElement('div');
|
|
4600
4651
|
container.className = "lexcustomcontainer";
|
|
4601
|
-
container.style.width = "
|
|
4652
|
+
container.style.width = "100%";
|
|
4653
|
+
element.appendChild( container );
|
|
4602
4654
|
|
|
4603
4655
|
let buttonName = "<a class='fa-solid " + (options.icon ?? "fa-cube") + "' style='float:left'></a>";
|
|
4604
4656
|
buttonName += customWidgetName + (!instance ? " [empty]" : "");
|
|
4605
|
-
// Add
|
|
4657
|
+
// Add always icon to keep spacing right
|
|
4606
4658
|
buttonName += "<a class='fa-solid " + (instance ? "fa-bars-staggered" : " ") + " menu' style='float:right; width:5%;'></a>";
|
|
4607
4659
|
|
|
4608
4660
|
let buttonEl = this.addButton(null, buttonName, (value, event) => {
|
|
@@ -4622,7 +4674,6 @@ function ADD_CUSTOM_WIDGET( customWidgetName, options = {} )
|
|
|
4622
4674
|
}
|
|
4623
4675
|
|
|
4624
4676
|
}, { buttonClass: 'custom' });
|
|
4625
|
-
|
|
4626
4677
|
container.appendChild( buttonEl.root );
|
|
4627
4678
|
|
|
4628
4679
|
if( instance )
|
|
@@ -4644,8 +4695,6 @@ function ADD_CUSTOM_WIDGET( customWidgetName, options = {} )
|
|
|
4644
4695
|
customWidgetsDom = document.createElement('div');
|
|
4645
4696
|
customWidgetsDom.className = "lexcustomitems";
|
|
4646
4697
|
customWidgetsDom.toggleAttribute('hidden', true);
|
|
4647
|
-
|
|
4648
|
-
element.appendChild( container );
|
|
4649
4698
|
element.appendChild( customWidgetsDom );
|
|
4650
4699
|
|
|
4651
4700
|
if( instance )
|
|
@@ -4716,24 +4765,32 @@ class NodeTree {
|
|
|
4716
4765
|
this.options = options;
|
|
4717
4766
|
this.selected = [];
|
|
4718
4767
|
|
|
4719
|
-
|
|
4720
|
-
|
|
4768
|
+
this._forceClose = false;
|
|
4769
|
+
|
|
4770
|
+
if( data.constructor === Object )
|
|
4771
|
+
{
|
|
4772
|
+
this._createItem( null, data );
|
|
4773
|
+
}
|
|
4721
4774
|
else
|
|
4775
|
+
{
|
|
4722
4776
|
for( let d of data )
|
|
4723
|
-
|
|
4777
|
+
{
|
|
4778
|
+
this._createItem( null, d );
|
|
4779
|
+
}
|
|
4780
|
+
}
|
|
4724
4781
|
}
|
|
4725
4782
|
|
|
4726
|
-
|
|
4783
|
+
_createItem( parent, node, level = 0, selectedId ) {
|
|
4727
4784
|
|
|
4728
4785
|
const that = this;
|
|
4729
4786
|
const nodeFilterInput = this.domEl.querySelector( "#lexnodetree_filter" );
|
|
4730
4787
|
|
|
4731
4788
|
node.children = node.children ?? [];
|
|
4732
|
-
if( nodeFilterInput && !node.id.includes( nodeFilterInput.value )
|
|
4789
|
+
if( nodeFilterInput && nodeFilterInput.value != "" && !node.id.includes( nodeFilterInput.value ) )
|
|
4733
4790
|
{
|
|
4734
4791
|
for( var i = 0; i < node.children.length; ++i )
|
|
4735
4792
|
{
|
|
4736
|
-
this.
|
|
4793
|
+
this._createItem( node, node.children[ i ], level + 1, selectedId );
|
|
4737
4794
|
}
|
|
4738
4795
|
return;
|
|
4739
4796
|
}
|
|
@@ -4756,11 +4813,15 @@ class NodeTree {
|
|
|
4756
4813
|
item.className = "lextreeitem " + "datalevel" + level + (isParent ? " parent" : "") + (isSelected ? " selected" : "");
|
|
4757
4814
|
item.id = LX.getSupportedDOMName( node.id );
|
|
4758
4815
|
item.tabIndex = "0";
|
|
4816
|
+
item.treeData = node;
|
|
4759
4817
|
|
|
4760
4818
|
// Select hierarchy icon
|
|
4761
4819
|
let icon = (this.options.skip_default_icon ?? true) ? "" : "fa-solid fa-square"; // Default: no childs
|
|
4762
|
-
if( isParent )
|
|
4763
|
-
|
|
4820
|
+
if( isParent )
|
|
4821
|
+
{
|
|
4822
|
+
icon = node.closed ? "fa-solid fa-caret-right" : "fa-solid fa-caret-down";
|
|
4823
|
+
item.innerHTML = "<a class='" + icon + " hierarchy'></a>";
|
|
4824
|
+
}
|
|
4764
4825
|
|
|
4765
4826
|
// Add display icon
|
|
4766
4827
|
icon = node.icon;
|
|
@@ -4780,7 +4841,7 @@ class NodeTree {
|
|
|
4780
4841
|
item.innerHTML += (node.rename ? "" : node.id);
|
|
4781
4842
|
|
|
4782
4843
|
item.setAttribute( 'draggable', true );
|
|
4783
|
-
item.style.paddingLeft = ((
|
|
4844
|
+
item.style.paddingLeft = ((3 + (level+1) * 15)) + "px";
|
|
4784
4845
|
list.appendChild( item );
|
|
4785
4846
|
|
|
4786
4847
|
// Callbacks
|
|
@@ -4864,7 +4925,7 @@ class NodeTree {
|
|
|
4864
4925
|
|
|
4865
4926
|
that.onevent( event );
|
|
4866
4927
|
|
|
4867
|
-
if(
|
|
4928
|
+
if( this.options.addDefault ?? false )
|
|
4868
4929
|
{
|
|
4869
4930
|
if( event.panel.items )
|
|
4870
4931
|
{
|
|
@@ -4888,18 +4949,20 @@ class NodeTree {
|
|
|
4888
4949
|
}
|
|
4889
4950
|
|
|
4890
4951
|
let nodeItem = this.domEl.querySelector( '#' + child.id );
|
|
4891
|
-
nodeItem.classList.add(
|
|
4952
|
+
nodeItem.classList.add( "selected" );
|
|
4892
4953
|
this.selected.push( child );
|
|
4893
4954
|
selectChildren( child );
|
|
4894
4955
|
}
|
|
4895
4956
|
};
|
|
4896
4957
|
|
|
4958
|
+
this.domEl.querySelectorAll( ".selected" ).forEach( i => i.classList.remove( "selected" ) );
|
|
4959
|
+
this.selected.length = 0;
|
|
4960
|
+
|
|
4897
4961
|
// Add childs of the clicked node
|
|
4898
4962
|
selectChildren( node );
|
|
4899
4963
|
} );
|
|
4900
4964
|
|
|
4901
4965
|
event.panel.add( "Delete", { callback: () => {
|
|
4902
|
-
|
|
4903
4966
|
// It's the root node
|
|
4904
4967
|
if( !node.parent )
|
|
4905
4968
|
{
|
|
@@ -4991,7 +5054,7 @@ class NodeTree {
|
|
|
4991
5054
|
node.id = LX.getSupportedDOMName( this.value );
|
|
4992
5055
|
delete node.rename;
|
|
4993
5056
|
that.frefresh( node.id );
|
|
4994
|
-
list.querySelector("#" + node.id).classList.add('selected');
|
|
5057
|
+
list.querySelector( "#" + node.id ).classList.add('selected');
|
|
4995
5058
|
}
|
|
4996
5059
|
else if(e.key == "Escape")
|
|
4997
5060
|
{
|
|
@@ -5081,7 +5144,22 @@ class NodeTree {
|
|
|
5081
5144
|
e.stopImmediatePropagation();
|
|
5082
5145
|
e.stopPropagation();
|
|
5083
5146
|
|
|
5084
|
-
|
|
5147
|
+
if( e.altKey )
|
|
5148
|
+
{
|
|
5149
|
+
const _closeNode = function( node ) {
|
|
5150
|
+
node.closed = !node.closed;
|
|
5151
|
+
for( var c of node.children )
|
|
5152
|
+
{
|
|
5153
|
+
_closeNode( c );
|
|
5154
|
+
}
|
|
5155
|
+
};
|
|
5156
|
+
_closeNode( node );
|
|
5157
|
+
}
|
|
5158
|
+
else
|
|
5159
|
+
{
|
|
5160
|
+
node.closed = !node.closed;
|
|
5161
|
+
}
|
|
5162
|
+
|
|
5085
5163
|
if( that.onevent )
|
|
5086
5164
|
{
|
|
5087
5165
|
const event = new TreeEvent(TreeEvent.NODE_CARETCHANGED, node, node.closed);
|
|
@@ -5133,13 +5211,18 @@ class NodeTree {
|
|
|
5133
5211
|
inputContainer.appendChild( visibility );
|
|
5134
5212
|
}
|
|
5135
5213
|
|
|
5136
|
-
|
|
5137
|
-
|
|
5138
|
-
|
|
5139
|
-
|
|
5140
|
-
|
|
5214
|
+
const _hasChild = function( parent, id ) {
|
|
5215
|
+
if( !parent.length ) return;
|
|
5216
|
+
for( var c of parent.children )
|
|
5217
|
+
{
|
|
5218
|
+
if( c.id == id ) return true;
|
|
5219
|
+
return _hasChild( c, id );
|
|
5220
|
+
}
|
|
5221
|
+
};
|
|
5222
|
+
|
|
5223
|
+
const exists = _hasChild( node, selectedId );
|
|
5141
5224
|
|
|
5142
|
-
if( node.closed )
|
|
5225
|
+
if( node.closed && !exists )
|
|
5143
5226
|
{
|
|
5144
5227
|
return;
|
|
5145
5228
|
}
|
|
@@ -5153,25 +5236,42 @@ class NodeTree {
|
|
|
5153
5236
|
continue;
|
|
5154
5237
|
}
|
|
5155
5238
|
|
|
5156
|
-
this.
|
|
5239
|
+
this._createItem( node, child, level + 1, selectedId );
|
|
5157
5240
|
}
|
|
5158
5241
|
}
|
|
5159
5242
|
|
|
5160
5243
|
refresh( newData, selectedId ) {
|
|
5244
|
+
|
|
5161
5245
|
this.data = newData ?? this.data;
|
|
5162
5246
|
this.domEl.querySelector( "ul" ).innerHTML = "";
|
|
5163
|
-
this.
|
|
5247
|
+
this._createItem( null, this.data, 0, selectedId );
|
|
5164
5248
|
}
|
|
5165
5249
|
|
|
5166
5250
|
/* Refreshes the tree and focuses current element */
|
|
5167
5251
|
frefresh( id ) {
|
|
5252
|
+
|
|
5168
5253
|
this.refresh();
|
|
5169
5254
|
var el = this.domEl.querySelector( "#" + id );
|
|
5170
|
-
if( el )
|
|
5255
|
+
if( el )
|
|
5256
|
+
{
|
|
5257
|
+
el.focus();
|
|
5258
|
+
}
|
|
5171
5259
|
}
|
|
5172
5260
|
|
|
5173
5261
|
select( id ) {
|
|
5262
|
+
|
|
5174
5263
|
this.refresh( null, id );
|
|
5264
|
+
|
|
5265
|
+
this.domEl.querySelectorAll( ".selected" ).forEach( i => i.classList.remove( "selected" ) );
|
|
5266
|
+
this.selected.length = 0;
|
|
5267
|
+
|
|
5268
|
+
var el = this.domEl.querySelector( "#" + id );
|
|
5269
|
+
if( el )
|
|
5270
|
+
{
|
|
5271
|
+
el.classList.add( "selected" );
|
|
5272
|
+
this.selected = [ el.treeData ];
|
|
5273
|
+
el.focus();
|
|
5274
|
+
}
|
|
5175
5275
|
}
|
|
5176
5276
|
}
|
|
5177
5277
|
|
|
@@ -5277,6 +5377,11 @@ class TextInput extends Widget {
|
|
|
5277
5377
|
}
|
|
5278
5378
|
};
|
|
5279
5379
|
|
|
5380
|
+
this.onResize = ( rect ) => {
|
|
5381
|
+
const realNameWidth = ( this.root.domName?.offsetWidth ?? 0 );
|
|
5382
|
+
container.style.width = options.inputWidth ?? `calc( 100% - ${ realNameWidth }px)`;
|
|
5383
|
+
};
|
|
5384
|
+
|
|
5280
5385
|
this.valid = ( v ) => {
|
|
5281
5386
|
v = v ?? this.value();
|
|
5282
5387
|
if( !v.length || wValue.pattern == "" ) return true;
|
|
@@ -5286,8 +5391,8 @@ class TextInput extends Widget {
|
|
|
5286
5391
|
|
|
5287
5392
|
let container = document.createElement( 'div' );
|
|
5288
5393
|
container.className = "lextext" + ( options.warning ? " lexwarning" : "" );
|
|
5289
|
-
container.style.width = options.inputWidth || "calc( 100% - " + LX.DEFAULT_NAME_WIDTH + " )";
|
|
5290
5394
|
container.style.display = "flex";
|
|
5395
|
+
this.root.appendChild( container );
|
|
5291
5396
|
|
|
5292
5397
|
if( options.textClass )
|
|
5293
5398
|
{
|
|
@@ -5366,20 +5471,13 @@ class TextInput extends Widget {
|
|
|
5366
5471
|
wValue.innerHTML = ( icon + value ) || "";
|
|
5367
5472
|
wValue.style.width = "100%";
|
|
5368
5473
|
wValue.style.textAlign = options.float ?? "";
|
|
5474
|
+
wValue.className = "ellipsis-overflow";
|
|
5369
5475
|
}
|
|
5370
5476
|
|
|
5371
5477
|
Object.assign( wValue.style, options.style ?? {} );
|
|
5372
|
-
|
|
5373
5478
|
container.appendChild( wValue );
|
|
5374
|
-
this.root.appendChild( container );
|
|
5375
5479
|
|
|
5376
|
-
|
|
5377
|
-
const useNameAsLabel = !( options.hideName ?? false );
|
|
5378
|
-
if( !useNameAsLabel )
|
|
5379
|
-
{
|
|
5380
|
-
this.root.className += " noname";
|
|
5381
|
-
container.style.width = "100%";
|
|
5382
|
-
}
|
|
5480
|
+
doAsync( this.onResize.bind( this ) );
|
|
5383
5481
|
}
|
|
5384
5482
|
}
|
|
5385
5483
|
|
|
@@ -5410,17 +5508,22 @@ class TextArea extends Widget {
|
|
|
5410
5508
|
}
|
|
5411
5509
|
};
|
|
5412
5510
|
|
|
5511
|
+
this.onResize = ( rect ) => {
|
|
5512
|
+
const realNameWidth = ( this.root.domName?.offsetWidth ?? 0 );
|
|
5513
|
+
container.style.width = options.inputWidth ?? `calc( 100% - ${ realNameWidth }px)`;
|
|
5514
|
+
};
|
|
5515
|
+
|
|
5413
5516
|
let container = document.createElement( "div" );
|
|
5414
5517
|
container.className = "lextextarea";
|
|
5415
|
-
container.style.width = options.inputWidth || "calc( 100% - " + LX.DEFAULT_NAME_WIDTH + " )";
|
|
5416
|
-
container.style.height = options.height;
|
|
5417
5518
|
container.style.display = "flex";
|
|
5519
|
+
this.root.appendChild( container );
|
|
5418
5520
|
|
|
5419
5521
|
let wValue = document.createElement( "textarea" );
|
|
5420
5522
|
wValue.value = wValue.iValue = value || "";
|
|
5421
5523
|
wValue.style.width = "100%";
|
|
5422
5524
|
wValue.style.textAlign = options.float ?? "";
|
|
5423
5525
|
Object.assign( wValue.style, options.style ?? {} );
|
|
5526
|
+
container.appendChild( wValue );
|
|
5424
5527
|
|
|
5425
5528
|
if( options.disabled ?? false ) wValue.setAttribute( "disabled", true );
|
|
5426
5529
|
if( options.placeholder ) wValue.setAttribute( "placeholder", options.placeholder );
|
|
@@ -5454,24 +5557,16 @@ class TextArea extends Widget {
|
|
|
5454
5557
|
container.appendChild( icon );
|
|
5455
5558
|
}
|
|
5456
5559
|
|
|
5457
|
-
container.appendChild( wValue );
|
|
5458
|
-
this.root.appendChild( container );
|
|
5459
|
-
|
|
5460
|
-
// Remove branch padding and margins
|
|
5461
|
-
const useNameAsLabel = !( options.hideName ?? false );
|
|
5462
|
-
if( !useNameAsLabel )
|
|
5463
|
-
{
|
|
5464
|
-
this.root.className += " noname";
|
|
5465
|
-
container.style.width = "100%";
|
|
5466
|
-
}
|
|
5467
|
-
|
|
5468
|
-
// Do this after creating the DOM element
|
|
5469
5560
|
doAsync( () => {
|
|
5561
|
+
container.style.height = options.height;
|
|
5562
|
+
|
|
5470
5563
|
if( options.fitHeight )
|
|
5471
5564
|
{
|
|
5472
5565
|
// Update height depending on the content
|
|
5473
5566
|
wValue.style.height = wValue.scrollHeight + "px";
|
|
5474
5567
|
}
|
|
5568
|
+
|
|
5569
|
+
this.onResize();
|
|
5475
5570
|
}, 10 );
|
|
5476
5571
|
}
|
|
5477
5572
|
}
|
|
@@ -5499,9 +5594,15 @@ class Button extends Widget {
|
|
|
5499
5594
|
( options.img ? "<img src='" + options.img + "'>" : "<span>" + ( newValue || "" ) + "</span>" ) );
|
|
5500
5595
|
};
|
|
5501
5596
|
|
|
5597
|
+
this.onResize = ( rect ) => {
|
|
5598
|
+
const realNameWidth = ( this.root.domName?.offsetWidth ?? 0 );
|
|
5599
|
+
wValue.style.width = `calc( 100% - ${ realNameWidth }px)`;
|
|
5600
|
+
};
|
|
5601
|
+
|
|
5502
5602
|
var wValue = document.createElement( 'button' );
|
|
5503
5603
|
wValue.title = options.title ?? "";
|
|
5504
5604
|
wValue.className = "lexbutton " + ( options.buttonClass ?? "" );
|
|
5605
|
+
this.root.appendChild( wValue );
|
|
5505
5606
|
|
|
5506
5607
|
if( options.selected )
|
|
5507
5608
|
{
|
|
@@ -5512,8 +5613,6 @@ class Button extends Widget {
|
|
|
5512
5613
|
( options.icon ? "<a class='" + options.icon + "'></a>" :
|
|
5513
5614
|
( options.img ? "<img src='" + options.img + "'>" : "<span>" + ( value || "" ) + "</span>" ) );
|
|
5514
5615
|
|
|
5515
|
-
wValue.style.width = "calc( 100% - " + ( options.nameWidth ?? LX.DEFAULT_NAME_WIDTH ) + ")";
|
|
5516
|
-
|
|
5517
5616
|
if( options.disabled )
|
|
5518
5617
|
{
|
|
5519
5618
|
wValue.setAttribute( "disabled", true );
|
|
@@ -5533,15 +5632,7 @@ class Button extends Widget {
|
|
|
5533
5632
|
this._trigger( new IEvent( name, value, e ), callback );
|
|
5534
5633
|
});
|
|
5535
5634
|
|
|
5536
|
-
this.
|
|
5537
|
-
|
|
5538
|
-
// Remove branch padding and
|
|
5539
|
-
const useNameAsLabel = !( options.hideName ?? false ) && !( options.icon || options.img );
|
|
5540
|
-
if( !useNameAsLabel )
|
|
5541
|
-
{
|
|
5542
|
-
wValue.className += " noname";
|
|
5543
|
-
wValue.style.width = "100%";
|
|
5544
|
-
}
|
|
5635
|
+
doAsync( this.onResize.bind( this ) );
|
|
5545
5636
|
}
|
|
5546
5637
|
}
|
|
5547
5638
|
|
|
@@ -5569,11 +5660,10 @@ class ComboButtons extends Widget {
|
|
|
5569
5660
|
container.className += options.float;
|
|
5570
5661
|
}
|
|
5571
5662
|
|
|
5572
|
-
container.style.width = "calc( 100% - " + LX.DEFAULT_NAME_WIDTH + ")";
|
|
5573
|
-
|
|
5574
5663
|
let currentValue = [];
|
|
5575
5664
|
let buttonsBox = document.createElement('div');
|
|
5576
5665
|
buttonsBox.className = "lexcombobuttonsbox ";
|
|
5666
|
+
container.appendChild( buttonsBox );
|
|
5577
5667
|
|
|
5578
5668
|
for( let b of values )
|
|
5579
5669
|
{
|
|
@@ -5685,16 +5775,14 @@ class ComboButtons extends Widget {
|
|
|
5685
5775
|
}
|
|
5686
5776
|
};
|
|
5687
5777
|
|
|
5688
|
-
|
|
5689
|
-
|
|
5690
|
-
|
|
5691
|
-
|
|
5692
|
-
this.root.className += " noname";
|
|
5693
|
-
container.style.width = "100%";
|
|
5694
|
-
}
|
|
5778
|
+
this.onResize = ( rect ) => {
|
|
5779
|
+
const realNameWidth = ( this.root.domName?.offsetWidth ?? 0 );
|
|
5780
|
+
container.style.width = `calc( 100% - ${ realNameWidth }px)`;
|
|
5781
|
+
};
|
|
5695
5782
|
|
|
5696
|
-
container.appendChild( buttonsBox );
|
|
5697
5783
|
this.root.appendChild( container );
|
|
5784
|
+
|
|
5785
|
+
doAsync( this.onResize.bind( this ) );
|
|
5698
5786
|
}
|
|
5699
5787
|
}
|
|
5700
5788
|
|
|
@@ -5716,6 +5804,7 @@ class Card extends Widget {
|
|
|
5716
5804
|
let container = document.createElement('div');
|
|
5717
5805
|
container.className = "lexcard";
|
|
5718
5806
|
container.style.width = "100%";
|
|
5807
|
+
this.root.appendChild( container );
|
|
5719
5808
|
|
|
5720
5809
|
if( options.img )
|
|
5721
5810
|
{
|
|
@@ -5738,6 +5827,7 @@ class Card extends Widget {
|
|
|
5738
5827
|
|
|
5739
5828
|
let cardNameDom = document.createElement('span');
|
|
5740
5829
|
cardNameDom.innerText = name;
|
|
5830
|
+
container.appendChild( cardNameDom );
|
|
5741
5831
|
|
|
5742
5832
|
if( options.link != undefined )
|
|
5743
5833
|
{
|
|
@@ -5756,9 +5846,6 @@ class Card extends Widget {
|
|
|
5756
5846
|
this._trigger( new IEvent( name, null, e ), options.callback );
|
|
5757
5847
|
});
|
|
5758
5848
|
}
|
|
5759
|
-
|
|
5760
|
-
container.appendChild( cardNameDom );
|
|
5761
|
-
this.root.appendChild( container );
|
|
5762
5849
|
}
|
|
5763
5850
|
}
|
|
5764
5851
|
|
|
@@ -5807,7 +5894,9 @@ class Form extends Widget {
|
|
|
5807
5894
|
|
|
5808
5895
|
let container = document.createElement( 'div' );
|
|
5809
5896
|
container.className = "lexformdata";
|
|
5897
|
+
container.style.width = "100%";
|
|
5810
5898
|
container.formData = {};
|
|
5899
|
+
this.root.appendChild( container );
|
|
5811
5900
|
|
|
5812
5901
|
for( let entry in data )
|
|
5813
5902
|
{
|
|
@@ -5852,12 +5941,6 @@ class Form extends Widget {
|
|
|
5852
5941
|
}, { buttonClass: "primary", width: "calc(100% - 10px)" } );
|
|
5853
5942
|
|
|
5854
5943
|
container.appendChild( submitButton.root );
|
|
5855
|
-
|
|
5856
|
-
this.root.appendChild( container );
|
|
5857
|
-
|
|
5858
|
-
// Form does not never use label
|
|
5859
|
-
this.root.className += " noname";
|
|
5860
|
-
container.style.width = "100%";
|
|
5861
5944
|
}
|
|
5862
5945
|
}
|
|
5863
5946
|
|
|
@@ -5909,9 +5992,14 @@ class Select extends Widget {
|
|
|
5909
5992
|
}
|
|
5910
5993
|
};
|
|
5911
5994
|
|
|
5995
|
+
this.onResize = ( rect ) => {
|
|
5996
|
+
const realNameWidth = ( this.root.domName?.offsetWidth ?? 0 );
|
|
5997
|
+
container.style.width = options.inputWidth ?? `calc( 100% - ${ realNameWidth }px)`;
|
|
5998
|
+
};
|
|
5999
|
+
|
|
5912
6000
|
let container = document.createElement( "div" );
|
|
5913
6001
|
container.className = "lexselect";
|
|
5914
|
-
|
|
6002
|
+
this.root.appendChild( container );
|
|
5915
6003
|
|
|
5916
6004
|
let wValue = document.createElement( 'div' );
|
|
5917
6005
|
wValue.className = "lexselect lexoption";
|
|
@@ -6070,7 +6158,7 @@ class Select extends Widget {
|
|
|
6070
6158
|
filterOptions.skipWidget = filterOptions.skipWidget ?? true;
|
|
6071
6159
|
filterOptions.trigger = "input";
|
|
6072
6160
|
filterOptions.icon = "fa-solid fa-magnifying-glass";
|
|
6073
|
-
filterOptions.className = "lexfilter
|
|
6161
|
+
filterOptions.className = "lexfilter";
|
|
6074
6162
|
|
|
6075
6163
|
let filter = new TextInput(null, options.filterValue ?? "", ( v ) => {
|
|
6076
6164
|
const filteredOptions = this._filterOptions( values, v );
|
|
@@ -6187,15 +6275,8 @@ class Select extends Widget {
|
|
|
6187
6275
|
list.refresh( values );
|
|
6188
6276
|
|
|
6189
6277
|
container.appendChild( listDialog );
|
|
6190
|
-
this.root.appendChild( container );
|
|
6191
6278
|
|
|
6192
|
-
|
|
6193
|
-
const useNameAsLabel = !( options.hideName ?? false );
|
|
6194
|
-
if( !useNameAsLabel )
|
|
6195
|
-
{
|
|
6196
|
-
this.root.className += " noname";
|
|
6197
|
-
container.style.width = "100%";
|
|
6198
|
-
}
|
|
6279
|
+
doAsync( this.onResize.bind( this ) );
|
|
6199
6280
|
}
|
|
6200
6281
|
|
|
6201
6282
|
_filterOptions( options, value ) {
|
|
@@ -6251,9 +6332,17 @@ class Curve extends Widget {
|
|
|
6251
6332
|
}
|
|
6252
6333
|
};
|
|
6253
6334
|
|
|
6335
|
+
this.onResize = ( rect ) => {
|
|
6336
|
+
const realNameWidth = ( this.root.domName?.offsetWidth ?? 0 );
|
|
6337
|
+
container.style.width = `calc( 100% - ${ realNameWidth }px)`;
|
|
6338
|
+
flushCss( container );
|
|
6339
|
+
curveInstance.canvas.width = container.offsetWidth;
|
|
6340
|
+
curveInstance.redraw();
|
|
6341
|
+
};
|
|
6342
|
+
|
|
6254
6343
|
var container = document.createElement( "div" );
|
|
6255
6344
|
container.className = "lexcurve";
|
|
6256
|
-
|
|
6345
|
+
this.root.appendChild( container );
|
|
6257
6346
|
|
|
6258
6347
|
options.callback = (v, e) => {
|
|
6259
6348
|
this._trigger( new IEvent( name, v, e ), callback );
|
|
@@ -6263,16 +6352,9 @@ class Curve extends Widget {
|
|
|
6263
6352
|
|
|
6264
6353
|
let curveInstance = new CanvasCurve( values, options );
|
|
6265
6354
|
container.appendChild( curveInstance.element );
|
|
6266
|
-
this.root.appendChild( container );
|
|
6267
|
-
|
|
6268
|
-
// Resize
|
|
6269
|
-
this.onresize = curveInstance.redraw.bind( curveInstance );
|
|
6270
6355
|
this.curveInstance = curveInstance;
|
|
6271
6356
|
|
|
6272
|
-
doAsync(()
|
|
6273
|
-
curveInstance.canvas.width = container.offsetWidth;
|
|
6274
|
-
curveInstance.redraw();
|
|
6275
|
-
});
|
|
6357
|
+
doAsync( this.onResize.bind( this ) );
|
|
6276
6358
|
}
|
|
6277
6359
|
}
|
|
6278
6360
|
|
|
@@ -6292,21 +6374,32 @@ class Dial extends Widget {
|
|
|
6292
6374
|
super( Widget.DIAL, name, defaultValues, options );
|
|
6293
6375
|
|
|
6294
6376
|
this.onGetValue = () => {
|
|
6295
|
-
return JSON.parse( JSON.stringify(
|
|
6377
|
+
return JSON.parse( JSON.stringify( dialInstance.element.value ) );
|
|
6296
6378
|
};
|
|
6297
6379
|
|
|
6298
6380
|
this.onSetValue = ( newValue, skipCallback, event ) => {
|
|
6299
|
-
|
|
6300
|
-
|
|
6381
|
+
dialInstance.element.value = JSON.parse( JSON.stringify( newValue ) );
|
|
6382
|
+
dialInstance.redraw();
|
|
6301
6383
|
if( !skipCallback )
|
|
6302
6384
|
{
|
|
6303
|
-
this._trigger( new IEvent( name,
|
|
6385
|
+
this._trigger( new IEvent( name, dialInstance.element.value, event ), callback );
|
|
6304
6386
|
}
|
|
6305
6387
|
};
|
|
6306
6388
|
|
|
6389
|
+
this.onResize = ( rect ) => {
|
|
6390
|
+
const realNameWidth = ( this.root.domName?.offsetWidth ?? 0 );
|
|
6391
|
+
container.style.width = `calc( 100% - ${ realNameWidth }px)`;
|
|
6392
|
+
flushCss( container );
|
|
6393
|
+
dialInstance.element.style.height = dialInstance.element.offsetWidth + "px";
|
|
6394
|
+
dialInstance.canvas.width = dialInstance.element.offsetWidth;
|
|
6395
|
+
container.style.width = dialInstance.element.offsetWidth + "px";
|
|
6396
|
+
dialInstance.canvas.height = dialInstance.canvas.width;
|
|
6397
|
+
dialInstance.redraw();
|
|
6398
|
+
};
|
|
6399
|
+
|
|
6307
6400
|
var container = document.createElement( "div" );
|
|
6308
6401
|
container.className = "lexcurve";
|
|
6309
|
-
|
|
6402
|
+
this.root.appendChild( container );
|
|
6310
6403
|
|
|
6311
6404
|
options.callback = ( v, e ) => {
|
|
6312
6405
|
this._trigger( new IEvent( name, v, e ), callback );
|
|
@@ -6314,21 +6407,11 @@ class Dial extends Widget {
|
|
|
6314
6407
|
|
|
6315
6408
|
options.name = name;
|
|
6316
6409
|
|
|
6317
|
-
let
|
|
6318
|
-
container.appendChild(
|
|
6319
|
-
this.
|
|
6320
|
-
|
|
6321
|
-
// Resize
|
|
6322
|
-
this.onresize = curveInstance.redraw.bind( curveInstance );
|
|
6323
|
-
this.curveInstance = curveInstance;
|
|
6410
|
+
let dialInstance = new CanvasDial( this, values, options );
|
|
6411
|
+
container.appendChild( dialInstance.element );
|
|
6412
|
+
this.dialInstance = dialInstance;
|
|
6324
6413
|
|
|
6325
|
-
doAsync(()
|
|
6326
|
-
curveInstance.element.style.height = curveInstance.element.offsetWidth + "px";
|
|
6327
|
-
curveInstance.canvas.width = curveInstance.element.offsetWidth;
|
|
6328
|
-
container.style.width = curveInstance.element.offsetWidth + "px";
|
|
6329
|
-
curveInstance.canvas.height = curveInstance.canvas.width;
|
|
6330
|
-
curveInstance.redraw();
|
|
6331
|
-
});
|
|
6414
|
+
doAsync( this.onResize.bind( this ) );
|
|
6332
6415
|
}
|
|
6333
6416
|
}
|
|
6334
6417
|
|
|
@@ -6351,22 +6434,27 @@ class Layers extends Widget {
|
|
|
6351
6434
|
|
|
6352
6435
|
this.onSetValue = ( newValue, skipCallback, event ) => {
|
|
6353
6436
|
value = newValue;
|
|
6354
|
-
setLayers();
|
|
6437
|
+
this.setLayers( value );
|
|
6355
6438
|
if( !skipCallback )
|
|
6356
6439
|
{
|
|
6357
6440
|
this._trigger( new IEvent(name, value, event), callback );
|
|
6358
6441
|
}
|
|
6359
6442
|
};
|
|
6360
6443
|
|
|
6444
|
+
this.onResize = ( rect ) => {
|
|
6445
|
+
const realNameWidth = ( this.root.domName?.offsetWidth ?? 0 );
|
|
6446
|
+
container.style.width = `calc( 100% - ${ realNameWidth }px)`;
|
|
6447
|
+
};
|
|
6448
|
+
|
|
6361
6449
|
var container = document.createElement( "div" );
|
|
6362
6450
|
container.className = "lexlayers";
|
|
6363
|
-
|
|
6451
|
+
this.root.appendChild( container );
|
|
6364
6452
|
|
|
6365
|
-
|
|
6453
|
+
this.setLayers = ( val ) => {
|
|
6366
6454
|
|
|
6367
6455
|
container.innerHTML = "";
|
|
6368
6456
|
|
|
6369
|
-
let binary =
|
|
6457
|
+
let binary = val.toString( 2 );
|
|
6370
6458
|
let nbits = binary.length;
|
|
6371
6459
|
|
|
6372
6460
|
// fill zeros
|
|
@@ -6380,7 +6468,7 @@ class Layers extends Widget {
|
|
|
6380
6468
|
let layer = document.createElement( "div" );
|
|
6381
6469
|
layer.className = "lexlayer";
|
|
6382
6470
|
|
|
6383
|
-
if(
|
|
6471
|
+
if( val != undefined )
|
|
6384
6472
|
{
|
|
6385
6473
|
const valueBit = binary[ 16 - bit - 1 ];
|
|
6386
6474
|
if( valueBit != undefined && valueBit == '1' )
|
|
@@ -6397,15 +6485,15 @@ class Layers extends Widget {
|
|
|
6397
6485
|
e.stopPropagation();
|
|
6398
6486
|
e.stopImmediatePropagation();
|
|
6399
6487
|
e.target.classList.toggle( "selected" );
|
|
6400
|
-
const newValue =
|
|
6488
|
+
const newValue = val ^ ( 1 << bit );
|
|
6401
6489
|
this.set( newValue, false, e );
|
|
6402
6490
|
} );
|
|
6403
6491
|
}
|
|
6404
6492
|
};
|
|
6405
6493
|
|
|
6406
|
-
setLayers();
|
|
6494
|
+
this.setLayers( value );
|
|
6407
6495
|
|
|
6408
|
-
this.
|
|
6496
|
+
doAsync( this.onResize.bind( this ) );
|
|
6409
6497
|
}
|
|
6410
6498
|
}
|
|
6411
6499
|
|
|
@@ -6420,6 +6508,8 @@ class ItemArray extends Widget {
|
|
|
6420
6508
|
|
|
6421
6509
|
constructor( name, values = [], callback, options = {} ) {
|
|
6422
6510
|
|
|
6511
|
+
options.nameWidth = "100%";
|
|
6512
|
+
|
|
6423
6513
|
super( Widget.ARRAY, name, null, options );
|
|
6424
6514
|
|
|
6425
6515
|
this.onGetValue = () => {
|
|
@@ -6435,15 +6525,14 @@ class ItemArray extends Widget {
|
|
|
6435
6525
|
}
|
|
6436
6526
|
};
|
|
6437
6527
|
|
|
6438
|
-
this.root.style.flexWrap = "wrap";
|
|
6439
|
-
|
|
6440
6528
|
// Add open array button
|
|
6441
6529
|
|
|
6442
6530
|
const itemNameWidth = "4%";
|
|
6443
6531
|
|
|
6444
6532
|
var container = document.createElement('div');
|
|
6445
6533
|
container.className = "lexarray";
|
|
6446
|
-
container.style.width = "
|
|
6534
|
+
container.style.width = "100%";
|
|
6535
|
+
this.root.appendChild( container );
|
|
6447
6536
|
|
|
6448
6537
|
const angleDown = `<a class='fa-solid fa-angle-down' style='float:right; margin-right: 3px;'></a>`;
|
|
6449
6538
|
|
|
@@ -6453,7 +6542,6 @@ class ItemArray extends Widget {
|
|
|
6453
6542
|
const toggleButton = new Button(null, buttonName, () => {
|
|
6454
6543
|
this.root.querySelector(".lexarrayitems").toggleAttribute('hidden');
|
|
6455
6544
|
}, { buttonClass: 'array' });
|
|
6456
|
-
|
|
6457
6545
|
container.appendChild( toggleButton.root );
|
|
6458
6546
|
|
|
6459
6547
|
// Show elements
|
|
@@ -6461,8 +6549,6 @@ class ItemArray extends Widget {
|
|
|
6461
6549
|
let arrayItems = document.createElement( "div" );
|
|
6462
6550
|
arrayItems.className = "lexarrayitems";
|
|
6463
6551
|
arrayItems.toggleAttribute( "hidden", true );
|
|
6464
|
-
|
|
6465
|
-
this.root.appendChild( container );
|
|
6466
6552
|
this.root.appendChild( arrayItems );
|
|
6467
6553
|
|
|
6468
6554
|
this._updateItems = () => {
|
|
@@ -6479,10 +6565,6 @@ class ItemArray extends Widget {
|
|
|
6479
6565
|
{
|
|
6480
6566
|
const value = values[ i ];
|
|
6481
6567
|
let baseclass = options.innerValues ? 'select' : value.constructor;
|
|
6482
|
-
|
|
6483
|
-
// TODO
|
|
6484
|
-
// this.sameLine( 2 );
|
|
6485
|
-
|
|
6486
6568
|
let widget = null;
|
|
6487
6569
|
|
|
6488
6570
|
switch( baseclass )
|
|
@@ -6511,13 +6593,13 @@ class ItemArray extends Widget {
|
|
|
6511
6593
|
|
|
6512
6594
|
arrayItems.appendChild( widget.root );
|
|
6513
6595
|
|
|
6514
|
-
|
|
6596
|
+
const removeWidget = new Button( null, "<a class='lexicon fa-solid fa-trash'></a>", ( v, event) => {
|
|
6515
6597
|
values.splice( values.indexOf( value ), 1 );
|
|
6516
6598
|
this._updateItems();
|
|
6517
6599
|
this._trigger( new IEvent(name, values, event), callback );
|
|
6518
6600
|
}, { title: "Remove item", className: 'micro'} );
|
|
6519
6601
|
|
|
6520
|
-
|
|
6602
|
+
widget.root.appendChild( removeWidget.root );
|
|
6521
6603
|
}
|
|
6522
6604
|
|
|
6523
6605
|
buttonName = "Add item";
|
|
@@ -6582,6 +6664,11 @@ class List extends Widget {
|
|
|
6582
6664
|
}
|
|
6583
6665
|
};
|
|
6584
6666
|
|
|
6667
|
+
this.onResize = ( rect ) => {
|
|
6668
|
+
const realNameWidth = ( this.root.domName?.offsetWidth ?? 0 );
|
|
6669
|
+
listContainer.style.width = `calc( 100% - ${ realNameWidth }px)`;
|
|
6670
|
+
};
|
|
6671
|
+
|
|
6585
6672
|
this._updateValues = ( newValues ) => {
|
|
6586
6673
|
|
|
6587
6674
|
values = newValues;
|
|
@@ -6617,19 +6704,11 @@ class List extends Widget {
|
|
|
6617
6704
|
|
|
6618
6705
|
let listContainer = document.createElement( 'div' );
|
|
6619
6706
|
listContainer.className = "lexlist";
|
|
6620
|
-
|
|
6707
|
+
this.root.appendChild( listContainer );
|
|
6621
6708
|
|
|
6622
6709
|
this._updateValues( values );
|
|
6623
6710
|
|
|
6624
|
-
|
|
6625
|
-
const useNameAsLabel = !( options.hideName ?? false );
|
|
6626
|
-
if( !useNameAsLabel )
|
|
6627
|
-
{
|
|
6628
|
-
this.root.className += " noname";
|
|
6629
|
-
listContainer.style.width = "100%";
|
|
6630
|
-
}
|
|
6631
|
-
|
|
6632
|
-
this.root.appendChild( listContainer );
|
|
6711
|
+
doAsync( this.onResize.bind( this ) );
|
|
6633
6712
|
}
|
|
6634
6713
|
}
|
|
6635
6714
|
|
|
@@ -6655,20 +6734,25 @@ class Tags extends Widget {
|
|
|
6655
6734
|
|
|
6656
6735
|
this.onSetValue = ( newValue, skipCallback, event ) => {
|
|
6657
6736
|
value = [].concat( newValue );
|
|
6658
|
-
|
|
6737
|
+
this.generateTags( value );
|
|
6659
6738
|
if( !skipCallback )
|
|
6660
6739
|
{
|
|
6661
6740
|
this._trigger( new IEvent( name, value, event ), callback );
|
|
6662
6741
|
}
|
|
6663
6742
|
};
|
|
6664
6743
|
|
|
6744
|
+
this.onResize = ( rect ) => {
|
|
6745
|
+
const realNameWidth = ( this.root.domName?.offsetWidth ?? 0 );
|
|
6746
|
+
tagsContainer.style.width = `calc( 100% - ${ realNameWidth }px)`;
|
|
6747
|
+
};
|
|
6748
|
+
|
|
6665
6749
|
// Show tags
|
|
6666
6750
|
|
|
6667
6751
|
const tagsContainer = document.createElement('div');
|
|
6668
6752
|
tagsContainer.className = "lextags";
|
|
6669
|
-
|
|
6753
|
+
this.root.appendChild( tagsContainer );
|
|
6670
6754
|
|
|
6671
|
-
|
|
6755
|
+
this.generateTags = ( value ) => {
|
|
6672
6756
|
|
|
6673
6757
|
tagsContainer.innerHTML = "";
|
|
6674
6758
|
|
|
@@ -6712,17 +6796,9 @@ class Tags extends Widget {
|
|
|
6712
6796
|
tagInput.focus();
|
|
6713
6797
|
}
|
|
6714
6798
|
|
|
6715
|
-
|
|
6799
|
+
this.generateTags( value );
|
|
6716
6800
|
|
|
6717
|
-
|
|
6718
|
-
const useNameAsLabel = !( options.hideName ?? false );
|
|
6719
|
-
if( !useNameAsLabel )
|
|
6720
|
-
{
|
|
6721
|
-
this.root.className += " noname";
|
|
6722
|
-
tagsContainer.style.width = "100%";
|
|
6723
|
-
}
|
|
6724
|
-
|
|
6725
|
-
this.root.appendChild( tagsContainer );
|
|
6801
|
+
doAsync( this.onResize.bind( this ) );
|
|
6726
6802
|
}
|
|
6727
6803
|
}
|
|
6728
6804
|
|
|
@@ -6766,31 +6842,33 @@ class Checkbox extends Widget {
|
|
|
6766
6842
|
}
|
|
6767
6843
|
};
|
|
6768
6844
|
|
|
6845
|
+
this.onResize = ( rect ) => {
|
|
6846
|
+
const realNameWidth = ( this.root.domName?.offsetWidth ?? 0 );
|
|
6847
|
+
container.style.width = options.inputWidth ?? `calc( 100% - ${ realNameWidth }px)`;
|
|
6848
|
+
};
|
|
6849
|
+
|
|
6769
6850
|
var container = document.createElement( "div" );
|
|
6770
6851
|
container.className = "lexcheckboxcont";
|
|
6852
|
+
this.root.appendChild( container );
|
|
6771
6853
|
|
|
6772
6854
|
let checkbox = document.createElement( "input" );
|
|
6773
6855
|
checkbox.type = "checkbox";
|
|
6774
6856
|
checkbox.className = "lexcheckbox " + ( options.className ?? "" );
|
|
6775
6857
|
checkbox.checked = value;
|
|
6776
6858
|
checkbox.disabled = options.disabled ?? false;
|
|
6859
|
+
container.appendChild( checkbox );
|
|
6777
6860
|
|
|
6778
6861
|
let valueName = document.createElement( "span" );
|
|
6779
6862
|
valueName.className = "checkboxtext";
|
|
6780
6863
|
valueName.innerHTML = options.label ?? "On";
|
|
6781
|
-
|
|
6782
|
-
container.appendChild( checkbox );
|
|
6783
6864
|
container.appendChild( valueName );
|
|
6784
6865
|
|
|
6785
6866
|
checkbox.addEventListener( "change" , e => {
|
|
6786
6867
|
this.set( checkbox.checked, false, e );
|
|
6787
6868
|
});
|
|
6788
6869
|
|
|
6789
|
-
this.root.appendChild( container );
|
|
6790
|
-
|
|
6791
6870
|
if( options.suboptions )
|
|
6792
6871
|
{
|
|
6793
|
-
this.root.style.flexWrap = "wrap";
|
|
6794
6872
|
let suboptions = document.createElement( "div" );
|
|
6795
6873
|
suboptions.className = "lexcheckboxsubmenu";
|
|
6796
6874
|
suboptions.toggleAttribute( "hidden", !checkbox.checked );
|
|
@@ -6802,6 +6880,8 @@ class Checkbox extends Widget {
|
|
|
6802
6880
|
|
|
6803
6881
|
this.root.appendChild( suboptions );
|
|
6804
6882
|
}
|
|
6883
|
+
|
|
6884
|
+
doAsync( this.onResize.bind( this ) );
|
|
6805
6885
|
}
|
|
6806
6886
|
}
|
|
6807
6887
|
|
|
@@ -6816,6 +6896,11 @@ class Toggle extends Widget {
|
|
|
6816
6896
|
|
|
6817
6897
|
constructor( name, value, callback, options = {} ) {
|
|
6818
6898
|
|
|
6899
|
+
if( !name && !options.label )
|
|
6900
|
+
{
|
|
6901
|
+
throw( "Set Widget Name or at least a label!" );
|
|
6902
|
+
}
|
|
6903
|
+
|
|
6819
6904
|
super( Widget.TOGGLE, name, value, options );
|
|
6820
6905
|
|
|
6821
6906
|
this.onGetValue = () => {
|
|
@@ -6840,8 +6925,14 @@ class Toggle extends Widget {
|
|
|
6840
6925
|
}
|
|
6841
6926
|
};
|
|
6842
6927
|
|
|
6928
|
+
this.onResize = ( rect ) => {
|
|
6929
|
+
const realNameWidth = ( this.root.domName?.offsetWidth ?? 0 );
|
|
6930
|
+
container.style.width = options.inputWidth ?? `calc( 100% - ${ realNameWidth }px)`;
|
|
6931
|
+
};
|
|
6932
|
+
|
|
6843
6933
|
var container = document.createElement('div');
|
|
6844
6934
|
container.className = "lextogglecont";
|
|
6935
|
+
this.root.appendChild( container );
|
|
6845
6936
|
|
|
6846
6937
|
let toggle = document.createElement('input');
|
|
6847
6938
|
toggle.type = "checkbox";
|
|
@@ -6849,23 +6940,19 @@ class Toggle extends Widget {
|
|
|
6849
6940
|
toggle.checked = value;
|
|
6850
6941
|
toggle.iValue = value;
|
|
6851
6942
|
toggle.disabled = options.disabled ?? false;
|
|
6943
|
+
container.appendChild( toggle );
|
|
6852
6944
|
|
|
6853
6945
|
let valueName = document.createElement( 'span' );
|
|
6854
6946
|
valueName.className = "toggletext";
|
|
6855
|
-
valueName.innerHTML = "On";
|
|
6856
|
-
|
|
6857
|
-
container.appendChild( toggle );
|
|
6947
|
+
valueName.innerHTML = options.label ?? "On";
|
|
6858
6948
|
container.appendChild( valueName );
|
|
6859
6949
|
|
|
6860
6950
|
toggle.addEventListener( "change" , e => {
|
|
6861
6951
|
this.set( toggle.checked, false, e );
|
|
6862
6952
|
});
|
|
6863
6953
|
|
|
6864
|
-
this.root.appendChild( container );
|
|
6865
|
-
|
|
6866
6954
|
if( options.suboptions )
|
|
6867
6955
|
{
|
|
6868
|
-
this.root.style.flexWrap = "wrap";
|
|
6869
6956
|
let suboptions = document.createElement('div');
|
|
6870
6957
|
suboptions.className = "lextogglesubmenu";
|
|
6871
6958
|
suboptions.toggleAttribute( 'hidden', !toggle.checked );
|
|
@@ -6877,6 +6964,8 @@ class Toggle extends Widget {
|
|
|
6877
6964
|
|
|
6878
6965
|
this.root.appendChild( suboptions );
|
|
6879
6966
|
}
|
|
6967
|
+
|
|
6968
|
+
doAsync( this.onResize.bind( this ) );
|
|
6880
6969
|
}
|
|
6881
6970
|
}
|
|
6882
6971
|
|
|
@@ -6921,6 +7010,7 @@ class RadioGroup extends Widget {
|
|
|
6921
7010
|
|
|
6922
7011
|
var container = document.createElement( 'div' );
|
|
6923
7012
|
container.className = "lexradiogroup " + ( options.className ?? "" );
|
|
7013
|
+
this.root.appendChild( container );
|
|
6924
7014
|
|
|
6925
7015
|
let labelSpan = document.createElement( 'span' );
|
|
6926
7016
|
labelSpan.innerHTML = label;
|
|
@@ -6955,8 +7045,6 @@ class RadioGroup extends Widget {
|
|
|
6955
7045
|
currentIndex = options.selected;
|
|
6956
7046
|
this.set( currentIndex, true );
|
|
6957
7047
|
}
|
|
6958
|
-
|
|
6959
|
-
this.root.appendChild( container );
|
|
6960
7048
|
}
|
|
6961
7049
|
}
|
|
6962
7050
|
|
|
@@ -7000,9 +7088,14 @@ class ColorInput extends Widget {
|
|
|
7000
7088
|
}
|
|
7001
7089
|
};
|
|
7002
7090
|
|
|
7091
|
+
this.onResize = ( rect ) => {
|
|
7092
|
+
const realNameWidth = ( this.root.domName?.offsetWidth ?? 0 );
|
|
7093
|
+
container.style.width = `calc( 100% - ${ realNameWidth }px)`;
|
|
7094
|
+
};
|
|
7095
|
+
|
|
7003
7096
|
var container = document.createElement( 'span' );
|
|
7004
7097
|
container.className = "lexcolor";
|
|
7005
|
-
|
|
7098
|
+
this.root.appendChild( container );
|
|
7006
7099
|
|
|
7007
7100
|
let color = document.createElement( 'input' );
|
|
7008
7101
|
color.style.width = "32px";
|
|
@@ -7011,6 +7104,7 @@ class ColorInput extends Widget {
|
|
|
7011
7104
|
color.id = "color" + simple_guidGenerator();
|
|
7012
7105
|
color.useRGB = options.useRGB ?? false;
|
|
7013
7106
|
color.value = color.iValue = value;
|
|
7107
|
+
container.appendChild( color );
|
|
7014
7108
|
|
|
7015
7109
|
if( options.disabled )
|
|
7016
7110
|
{
|
|
@@ -7021,17 +7115,14 @@ class ColorInput extends Widget {
|
|
|
7021
7115
|
this.set( e.target.value, false, e );
|
|
7022
7116
|
}, false );
|
|
7023
7117
|
|
|
7024
|
-
container.appendChild( color );
|
|
7025
|
-
|
|
7026
7118
|
const textWidget = new TextInput( null, color.value, v => {
|
|
7027
7119
|
this.set( v );
|
|
7028
7120
|
}, { width: "calc( 100% - 32px )"});
|
|
7029
7121
|
|
|
7030
7122
|
textWidget.root.style.marginLeft = "4px";
|
|
7031
|
-
|
|
7032
7123
|
container.appendChild( textWidget.root );
|
|
7033
7124
|
|
|
7034
|
-
this.
|
|
7125
|
+
doAsync( this.onResize.bind( this ) );
|
|
7035
7126
|
}
|
|
7036
7127
|
}
|
|
7037
7128
|
|
|
@@ -7067,9 +7158,14 @@ class RangeInput extends Widget {
|
|
|
7067
7158
|
}
|
|
7068
7159
|
};
|
|
7069
7160
|
|
|
7070
|
-
|
|
7161
|
+
this.onResize = ( rect ) => {
|
|
7162
|
+
const realNameWidth = ( this.root.domName?.offsetWidth ?? 0 );
|
|
7163
|
+
container.style.width = options.inputWidth ?? `calc( 100% - ${ realNameWidth }px)`;
|
|
7164
|
+
};
|
|
7165
|
+
|
|
7166
|
+
const container = document.createElement( 'div' );
|
|
7071
7167
|
container.className = "lexrange";
|
|
7072
|
-
|
|
7168
|
+
this.root.appendChild( container );
|
|
7073
7169
|
|
|
7074
7170
|
let slider = document.createElement( 'input' );
|
|
7075
7171
|
slider.className = "lexrangeslider " + ( options.className ?? "" );
|
|
@@ -7079,6 +7175,7 @@ class RangeInput extends Widget {
|
|
|
7079
7175
|
slider.step = options.step ?? 1;
|
|
7080
7176
|
slider.type = "range";
|
|
7081
7177
|
slider.disabled = options.disabled ?? false;
|
|
7178
|
+
container.appendChild( slider );
|
|
7082
7179
|
|
|
7083
7180
|
if( options.left ?? false )
|
|
7084
7181
|
{
|
|
@@ -7121,15 +7218,7 @@ class RangeInput extends Widget {
|
|
|
7121
7218
|
value = clamp( value, +slider.min, +slider.max );
|
|
7122
7219
|
}
|
|
7123
7220
|
|
|
7124
|
-
|
|
7125
|
-
this.root.appendChild( container );
|
|
7126
|
-
|
|
7127
|
-
const useNameAsLabel = !( options.hideName ?? false );
|
|
7128
|
-
if( !useNameAsLabel )
|
|
7129
|
-
{
|
|
7130
|
-
this.root.className += " noname";
|
|
7131
|
-
container.style.width = "100%";
|
|
7132
|
-
}
|
|
7221
|
+
doAsync( this.onResize.bind( this ) );
|
|
7133
7222
|
}
|
|
7134
7223
|
}
|
|
7135
7224
|
|
|
@@ -7177,12 +7266,18 @@ class NumberInput extends Widget {
|
|
|
7177
7266
|
}
|
|
7178
7267
|
};
|
|
7179
7268
|
|
|
7269
|
+
this.onResize = ( rect ) => {
|
|
7270
|
+
const realNameWidth = ( this.root.domName?.offsetWidth ?? 0 );
|
|
7271
|
+
container.style.width = options.inputWidth ?? `calc( 100% - ${ realNameWidth }px)`;
|
|
7272
|
+
};
|
|
7273
|
+
|
|
7180
7274
|
var container = document.createElement( 'div' );
|
|
7181
7275
|
container.className = "lexnumber";
|
|
7182
|
-
|
|
7276
|
+
this.root.appendChild( container );
|
|
7183
7277
|
|
|
7184
7278
|
let box = document.createElement( 'div' );
|
|
7185
7279
|
box.className = "numberbox";
|
|
7280
|
+
container.appendChild( box );
|
|
7186
7281
|
|
|
7187
7282
|
let vecinput = document.createElement( 'input' );
|
|
7188
7283
|
vecinput.id = "number_" + simple_guidGenerator();
|
|
@@ -7356,16 +7451,7 @@ class NumberInput extends Widget {
|
|
|
7356
7451
|
|
|
7357
7452
|
vecinput.addEventListener( "mousedown", innerMouseDown );
|
|
7358
7453
|
|
|
7359
|
-
|
|
7360
|
-
this.root.appendChild( container );
|
|
7361
|
-
|
|
7362
|
-
// Remove branch padding and margins
|
|
7363
|
-
const useNameAsLabel = !( options.hideName ?? false );
|
|
7364
|
-
if( !useNameAsLabel )
|
|
7365
|
-
{
|
|
7366
|
-
this.root.className += " noname";
|
|
7367
|
-
container.style.width = "100%";
|
|
7368
|
-
}
|
|
7454
|
+
doAsync( this.onResize.bind( this ) );
|
|
7369
7455
|
}
|
|
7370
7456
|
}
|
|
7371
7457
|
|
|
@@ -7417,11 +7503,16 @@ class Vector extends Widget {
|
|
|
7417
7503
|
}
|
|
7418
7504
|
};
|
|
7419
7505
|
|
|
7506
|
+
this.onResize = ( rect ) => {
|
|
7507
|
+
const realNameWidth = ( this.root.domName?.offsetWidth ?? 0 );
|
|
7508
|
+
container.style.width = `calc( 100% - ${ realNameWidth }px)`;
|
|
7509
|
+
};
|
|
7510
|
+
|
|
7420
7511
|
const vectorInputs = [];
|
|
7421
7512
|
|
|
7422
7513
|
var container = document.createElement( 'div' );
|
|
7423
7514
|
container.className = "lexvector";
|
|
7424
|
-
|
|
7515
|
+
this.root.appendChild( container );
|
|
7425
7516
|
|
|
7426
7517
|
const that = this;
|
|
7427
7518
|
|
|
@@ -7624,7 +7715,7 @@ class Vector extends Widget {
|
|
|
7624
7715
|
}
|
|
7625
7716
|
}, false );
|
|
7626
7717
|
|
|
7627
|
-
this.
|
|
7718
|
+
doAsync( this.onResize.bind( this ) );
|
|
7628
7719
|
}
|
|
7629
7720
|
}
|
|
7630
7721
|
|
|
@@ -7725,14 +7816,6 @@ class SizeInput extends Widget {
|
|
|
7725
7816
|
}
|
|
7726
7817
|
}, false );
|
|
7727
7818
|
}
|
|
7728
|
-
|
|
7729
|
-
// Remove branch padding and margins
|
|
7730
|
-
const useNameAsLabel = !( options.hideName ?? false );
|
|
7731
|
-
if( !useNameAsLabel )
|
|
7732
|
-
{
|
|
7733
|
-
this.root.className += " noname";
|
|
7734
|
-
container.style.width = "100%";
|
|
7735
|
-
}
|
|
7736
7819
|
}
|
|
7737
7820
|
}
|
|
7738
7821
|
|
|
@@ -7762,21 +7845,28 @@ class Pad extends Widget {
|
|
|
7762
7845
|
}
|
|
7763
7846
|
};
|
|
7764
7847
|
|
|
7848
|
+
this.onResize = ( rect ) => {
|
|
7849
|
+
const realNameWidth = ( this.root.domName?.offsetWidth ?? 0 );
|
|
7850
|
+
container.style.width = `calc( 100% - ${ realNameWidth }px)`;
|
|
7851
|
+
};
|
|
7852
|
+
|
|
7765
7853
|
var container = document.createElement( 'div' );
|
|
7766
7854
|
container.className = "lexpad";
|
|
7767
|
-
|
|
7855
|
+
this.root.appendChild( container );
|
|
7768
7856
|
|
|
7769
7857
|
let pad = document.createElement('div');
|
|
7770
7858
|
pad.id = "lexpad-" + name;
|
|
7771
7859
|
pad.className = "lexinnerpad";
|
|
7772
7860
|
pad.style.width = options.padSize ?? '96px';
|
|
7773
7861
|
pad.style.height = options.padSize ?? '96px';
|
|
7862
|
+
container.appendChild( pad );
|
|
7774
7863
|
|
|
7775
7864
|
let thumb = document.createElement('div');
|
|
7776
7865
|
thumb.className = "lexpadthumb";
|
|
7777
7866
|
thumb.value = new LX.vec2( value[ 0 ], value[ 1 ] );
|
|
7778
7867
|
thumb.min = options.min ?? 0;
|
|
7779
7868
|
thumb.max = options.max ?? 1;
|
|
7869
|
+
pad.appendChild( thumb );
|
|
7780
7870
|
|
|
7781
7871
|
let _updateValue = v => {
|
|
7782
7872
|
const [ w, h ] = [ pad.offsetWidth, pad.offsetHeight ];
|
|
@@ -7784,14 +7874,6 @@ class Pad extends Widget {
|
|
|
7784
7874
|
thumb.style.transform = `translate(calc( ${ w * value0to1.x }px - 50% ), calc( ${ h * value0to1.y }px - 50%)`;
|
|
7785
7875
|
}
|
|
7786
7876
|
|
|
7787
|
-
doAsync( () => {
|
|
7788
|
-
_updateValue( thumb.value )
|
|
7789
|
-
} );
|
|
7790
|
-
|
|
7791
|
-
pad.appendChild( thumb );
|
|
7792
|
-
container.appendChild( pad );
|
|
7793
|
-
this.root.appendChild( container );
|
|
7794
|
-
|
|
7795
7877
|
pad.addEventListener( "mousedown", innerMouseDown );
|
|
7796
7878
|
|
|
7797
7879
|
let that = this;
|
|
@@ -7810,6 +7892,7 @@ class Pad extends Widget {
|
|
|
7810
7892
|
document.body.classList.add( 'noevents' );
|
|
7811
7893
|
e.stopImmediatePropagation();
|
|
7812
7894
|
e.stopPropagation();
|
|
7895
|
+
thumb.classList.add( "active" );
|
|
7813
7896
|
|
|
7814
7897
|
if( options.onPress )
|
|
7815
7898
|
{
|
|
@@ -7841,12 +7924,18 @@ class Pad extends Widget {
|
|
|
7841
7924
|
doc.removeEventListener( 'mouseup', innerMouseUp );
|
|
7842
7925
|
document.body.classList.remove( 'nocursor' );
|
|
7843
7926
|
document.body.classList.remove( 'noevents' );
|
|
7927
|
+
thumb.classList.remove( "active" );
|
|
7844
7928
|
|
|
7845
7929
|
if( options.onRelease )
|
|
7846
7930
|
{
|
|
7847
7931
|
options.onRelease.bind( thumb )( e, thumb );
|
|
7848
7932
|
}
|
|
7849
7933
|
}
|
|
7934
|
+
|
|
7935
|
+
doAsync( () => {
|
|
7936
|
+
this.onResize();
|
|
7937
|
+
_updateValue( thumb.value )
|
|
7938
|
+
} );
|
|
7850
7939
|
}
|
|
7851
7940
|
}
|
|
7852
7941
|
|
|
@@ -7876,9 +7965,14 @@ class Progress extends Widget {
|
|
|
7876
7965
|
}
|
|
7877
7966
|
};
|
|
7878
7967
|
|
|
7879
|
-
|
|
7968
|
+
this.onResize = ( rect ) => {
|
|
7969
|
+
const realNameWidth = ( this.root.domName?.offsetWidth ?? 0 );
|
|
7970
|
+
container.style.width = `calc( 100% - ${ realNameWidth }px)`;
|
|
7971
|
+
};
|
|
7972
|
+
|
|
7973
|
+
const container = document.createElement('div');
|
|
7880
7974
|
container.className = "lexprogress";
|
|
7881
|
-
|
|
7975
|
+
this.root.appendChild( container );
|
|
7882
7976
|
|
|
7883
7977
|
// add slider (0-1 if not specified different )
|
|
7884
7978
|
|
|
@@ -7892,6 +7986,7 @@ class Progress extends Widget {
|
|
|
7892
7986
|
progress.high = options.high ?? progress.high;
|
|
7893
7987
|
progress.optimum = options.optimum ?? progress.optimum;
|
|
7894
7988
|
progress.value = value;
|
|
7989
|
+
container.appendChild( progress );
|
|
7895
7990
|
|
|
7896
7991
|
const _updateColor = () => {
|
|
7897
7992
|
|
|
@@ -7909,9 +8004,6 @@ class Progress extends Widget {
|
|
|
7909
8004
|
progress.style.background = `color-mix(in srgb, ${backgroundColor} 20%, transparent)`;
|
|
7910
8005
|
};
|
|
7911
8006
|
|
|
7912
|
-
container.appendChild( progress );
|
|
7913
|
-
this.root.appendChild( container );
|
|
7914
|
-
|
|
7915
8007
|
if( options.showValue )
|
|
7916
8008
|
{
|
|
7917
8009
|
if( document.getElementById('progressvalue-' + name ) )
|
|
@@ -7978,6 +8070,8 @@ class Progress extends Widget {
|
|
|
7978
8070
|
}
|
|
7979
8071
|
|
|
7980
8072
|
_updateColor();
|
|
8073
|
+
|
|
8074
|
+
doAsync( this.onResize.bind( this ) );
|
|
7981
8075
|
}
|
|
7982
8076
|
}
|
|
7983
8077
|
|
|
@@ -7998,12 +8092,17 @@ class FileInput extends Widget {
|
|
|
7998
8092
|
let type = options.type ?? 'text';
|
|
7999
8093
|
let read = options.read ?? true;
|
|
8000
8094
|
|
|
8095
|
+
this.onResize = ( rect ) => {
|
|
8096
|
+
const realNameWidth = ( this.root.domName?.offsetWidth ?? 0 );
|
|
8097
|
+
input.style.width = `calc( 100% - ${ realNameWidth }px)`;
|
|
8098
|
+
};
|
|
8099
|
+
|
|
8001
8100
|
// Create hidden input
|
|
8002
8101
|
let input = document.createElement( 'input' );
|
|
8003
8102
|
input.className = "lexfileinput";
|
|
8004
|
-
input.style.width = "calc( 100% - " + LX.DEFAULT_NAME_WIDTH + " - 10%)";
|
|
8005
8103
|
input.type = 'file';
|
|
8006
8104
|
input.disabled = options.disabled ?? false;
|
|
8105
|
+
this.root.appendChild( input );
|
|
8007
8106
|
|
|
8008
8107
|
if( options.placeholder )
|
|
8009
8108
|
{
|
|
@@ -8036,8 +8135,6 @@ class FileInput extends Widget {
|
|
|
8036
8135
|
callback( null );
|
|
8037
8136
|
});
|
|
8038
8137
|
|
|
8039
|
-
this.root.appendChild( input );
|
|
8040
|
-
|
|
8041
8138
|
if( local )
|
|
8042
8139
|
{
|
|
8043
8140
|
let settingsDialog = null;
|
|
@@ -8058,6 +8155,8 @@ class FileInput extends Widget {
|
|
|
8058
8155
|
|
|
8059
8156
|
this.root.appendChild( settingButton.root );
|
|
8060
8157
|
}
|
|
8158
|
+
|
|
8159
|
+
doAsync( this.onResize.bind( this ) );
|
|
8061
8160
|
}
|
|
8062
8161
|
}
|
|
8063
8162
|
|
|
@@ -8298,7 +8397,6 @@ class Counter extends Widget {
|
|
|
8298
8397
|
if( e.shiftKey ) mult *= 10;
|
|
8299
8398
|
this.set( counterText.count + mult, false, e );
|
|
8300
8399
|
}, { className: "micro", skipInlineCount: true, title: "Plus" });
|
|
8301
|
-
|
|
8302
8400
|
container.appendChild( addButton.root );
|
|
8303
8401
|
}
|
|
8304
8402
|
}
|
|
@@ -8321,28 +8419,140 @@ class Table extends Widget {
|
|
|
8321
8419
|
|
|
8322
8420
|
super( Widget.TABLE, name, null, options );
|
|
8323
8421
|
|
|
8422
|
+
this.onResize = ( rect ) => {
|
|
8423
|
+
const realNameWidth = ( this.root.domName?.offsetWidth ?? 0 );
|
|
8424
|
+
container.style.width = `calc( 100% - ${ realNameWidth }px)`;
|
|
8425
|
+
};
|
|
8426
|
+
|
|
8324
8427
|
const container = document.createElement('div');
|
|
8325
8428
|
container.className = "lextable";
|
|
8326
|
-
|
|
8429
|
+
this.root.appendChild( container );
|
|
8327
8430
|
|
|
8328
|
-
|
|
8329
|
-
|
|
8431
|
+
this.centered = options.centered ?? false;
|
|
8432
|
+
if( this.centered === true )
|
|
8433
|
+
{
|
|
8434
|
+
container.classList.add( "centered" );
|
|
8435
|
+
}
|
|
8436
|
+
|
|
8437
|
+
this.filter = options.filter ?? false;
|
|
8438
|
+
this.toggleColumns = options.toggleColumns ?? false;
|
|
8439
|
+
this.customFilters = options.customFilters ?? false;
|
|
8440
|
+
this.activeCustomFilters = {};
|
|
8330
8441
|
|
|
8331
8442
|
data.head = data.head ?? [];
|
|
8332
8443
|
data.body = data.body ?? [];
|
|
8333
|
-
data.orderMap = { };
|
|
8334
8444
|
data.checkMap = { };
|
|
8445
|
+
data.colVisibilityMap = { };
|
|
8446
|
+
data.head.forEach( (col, index) => { data.colVisibilityMap[ index ] = true; })
|
|
8335
8447
|
|
|
8336
|
-
|
|
8448
|
+
const compareFn = ( idx, order, a, b) => {
|
|
8337
8449
|
if (a[idx] < b[idx]) return -order;
|
|
8338
8450
|
else if (a[idx] > b[idx]) return order;
|
|
8339
8451
|
return 0;
|
|
8340
8452
|
}
|
|
8341
8453
|
|
|
8342
|
-
|
|
8454
|
+
const sortFn = ( idx, sign ) => {
|
|
8455
|
+
data.body = data.body.sort( compareFn.bind( this, idx, sign ) );
|
|
8456
|
+
this.refresh();
|
|
8457
|
+
}
|
|
8458
|
+
|
|
8459
|
+
// Append header
|
|
8460
|
+
if( this.filter || this.customFilters || this.toggleColumns )
|
|
8461
|
+
{
|
|
8462
|
+
const headerContainer = LX.makeContainer( [ "100%", "auto" ] );
|
|
8463
|
+
|
|
8464
|
+
if( this.filter )
|
|
8465
|
+
{
|
|
8466
|
+
const filterOptions = LX.deepCopy( options );
|
|
8467
|
+
filterOptions.placeholder = `Filter ${ this.filter }...`;
|
|
8468
|
+
filterOptions.skipWidget = true;
|
|
8469
|
+
filterOptions.trigger = "input";
|
|
8470
|
+
filterOptions.textClass = "outline";
|
|
8471
|
+
|
|
8472
|
+
let filter = new TextInput(null, "", ( v ) => {
|
|
8473
|
+
this._currentFilter = v;
|
|
8474
|
+
this.refresh();
|
|
8475
|
+
}, filterOptions );
|
|
8476
|
+
|
|
8477
|
+
headerContainer.appendChild( filter.root );
|
|
8478
|
+
}
|
|
8479
|
+
|
|
8480
|
+
if( this.customFilters )
|
|
8481
|
+
{
|
|
8482
|
+
const icon = LX.makeIcon( "circle-plus", null, "sm" );
|
|
8483
|
+
|
|
8484
|
+
for( let f of this.customFilters )
|
|
8485
|
+
{
|
|
8486
|
+
const customFilterBtn = new Button(null, icon.innerHTML + f.name, ( v ) => {
|
|
8487
|
+
|
|
8488
|
+
const menuOptions = f.options.map( ( colName, idx ) => {
|
|
8489
|
+
const item = {
|
|
8490
|
+
name: colName,
|
|
8491
|
+
checked: !!this.activeCustomFilters[ colName ],
|
|
8492
|
+
callback: (key, dom, v) => {
|
|
8493
|
+
if( v ) { this.activeCustomFilters[ key ] = f.name; }
|
|
8494
|
+
else {
|
|
8495
|
+
delete this.activeCustomFilters[ key ];
|
|
8496
|
+
}
|
|
8497
|
+
this.refresh();
|
|
8498
|
+
}
|
|
8499
|
+
}
|
|
8500
|
+
return item;
|
|
8501
|
+
} );
|
|
8502
|
+
new DropdownMenu( customFilterBtn.root, menuOptions, { side: "bottom", align: "start" });
|
|
8503
|
+
}, { buttonClass: "dashed" } );
|
|
8504
|
+
headerContainer.appendChild( customFilterBtn.root );
|
|
8505
|
+
}
|
|
8506
|
+
|
|
8507
|
+
// const resetIcon = LX.makeIcon( "xmark", null, "sm" );
|
|
8508
|
+
this._resetCustomFiltersBtn = new Button(null, "resetButton", ( v ) => {
|
|
8509
|
+
this.activeCustomFilters = {};
|
|
8510
|
+
this.refresh();
|
|
8511
|
+
this._resetCustomFiltersBtn.root.classList.add( "hidden" );
|
|
8512
|
+
}, { title: "Reset filters", icon: "fa fa-xmark" } );
|
|
8513
|
+
headerContainer.appendChild( this._resetCustomFiltersBtn.root );
|
|
8514
|
+
this._resetCustomFiltersBtn.root.classList.add( "hidden" );
|
|
8515
|
+
}
|
|
8516
|
+
|
|
8517
|
+
if( this.toggleColumns )
|
|
8518
|
+
{
|
|
8519
|
+
const icon = LX.makeIcon( "sliders" );
|
|
8520
|
+
const toggleColumnsBtn = new Button( "toggleColumnsBtn", icon.innerHTML + "View", (value, e) => {
|
|
8521
|
+
const menuOptions = data.head.map( ( colName, idx ) => {
|
|
8522
|
+
const item = {
|
|
8523
|
+
name: colName,
|
|
8524
|
+
icon: "check",
|
|
8525
|
+
callback: () => {
|
|
8526
|
+
data.colVisibilityMap[ idx ] = !data.colVisibilityMap[ idx ];
|
|
8527
|
+
const cells = table.querySelectorAll(`tr > *:nth-child(${idx + this.rowOffsetCount + 1})`);
|
|
8528
|
+
cells.forEach(cell => {
|
|
8529
|
+
cell.style.display = (cell.style.display === "none") ? "" : "none";
|
|
8530
|
+
});
|
|
8531
|
+
}
|
|
8532
|
+
}
|
|
8533
|
+
if( !data.colVisibilityMap[ idx ] ) delete item.icon;
|
|
8534
|
+
return item;
|
|
8535
|
+
} );
|
|
8536
|
+
new DropdownMenu( e.target, menuOptions, { side: "bottom", align: "end" });
|
|
8537
|
+
}, { hideName: true } );
|
|
8538
|
+
headerContainer.appendChild( toggleColumnsBtn.root );
|
|
8539
|
+
toggleColumnsBtn.root.style.marginLeft = "auto";
|
|
8540
|
+
}
|
|
8541
|
+
|
|
8542
|
+
container.appendChild( headerContainer );
|
|
8543
|
+
}
|
|
8544
|
+
|
|
8545
|
+
const table = document.createElement( 'table' );
|
|
8546
|
+
container.appendChild( table );
|
|
8547
|
+
|
|
8548
|
+
this.refresh = () => {
|
|
8549
|
+
|
|
8550
|
+
this._currentFilter = this._currentFilter ?? "";
|
|
8343
8551
|
|
|
8344
8552
|
table.innerHTML = "";
|
|
8345
8553
|
|
|
8554
|
+
this.rowOffsetCount = 0;
|
|
8555
|
+
|
|
8346
8556
|
// Head
|
|
8347
8557
|
{
|
|
8348
8558
|
const head = document.createElement( 'thead' );
|
|
@@ -8356,6 +8566,7 @@ class Table extends Widget {
|
|
|
8356
8566
|
const th = document.createElement( 'th' );
|
|
8357
8567
|
th.style.width = "0px";
|
|
8358
8568
|
hrow.appendChild( th );
|
|
8569
|
+
this.rowOffsetCount++;
|
|
8359
8570
|
}
|
|
8360
8571
|
|
|
8361
8572
|
if( options.selectable )
|
|
@@ -8380,27 +8591,45 @@ class Table extends Widget {
|
|
|
8380
8591
|
}
|
|
8381
8592
|
});
|
|
8382
8593
|
|
|
8594
|
+
this.rowOffsetCount++;
|
|
8383
8595
|
hrow.appendChild( th );
|
|
8384
8596
|
}
|
|
8385
8597
|
|
|
8386
8598
|
for( const headData of data.head )
|
|
8387
8599
|
{
|
|
8388
8600
|
const th = document.createElement( 'th' );
|
|
8389
|
-
th.innerHTML =
|
|
8390
|
-
|
|
8391
|
-
th.querySelector( 'a' ).addEventListener( 'click', () => {
|
|
8601
|
+
th.innerHTML = `<span>${ headData }</span>`;
|
|
8602
|
+
th.querySelector( "span" ).appendChild( LX.makeIcon( "menu-arrows", null, "sm" ) );
|
|
8392
8603
|
|
|
8393
|
-
|
|
8394
|
-
|
|
8395
|
-
|
|
8396
|
-
|
|
8604
|
+
const idx = data.head.indexOf( headData );
|
|
8605
|
+
if( this.centered && this.centered.indexOf( idx ) > -1 )
|
|
8606
|
+
{
|
|
8607
|
+
th.classList.add( "centered" );
|
|
8608
|
+
}
|
|
8397
8609
|
|
|
8398
|
-
|
|
8399
|
-
|
|
8400
|
-
|
|
8610
|
+
const menuOptions = [
|
|
8611
|
+
{ name: "Asc", icon: "up", callback: sortFn.bind( this, idx, 1 ) },
|
|
8612
|
+
{ name: "Desc", icon: "down", callback: sortFn.bind( this, idx, -1 ) }
|
|
8613
|
+
];
|
|
8401
8614
|
|
|
8402
|
-
|
|
8615
|
+
if( this.toggleColumns )
|
|
8616
|
+
{
|
|
8617
|
+
menuOptions.push(
|
|
8618
|
+
null,
|
|
8619
|
+
{
|
|
8620
|
+
name: "Hide", icon: "eye-slash", callback: () => {
|
|
8621
|
+
data.colVisibilityMap[ idx ] = false;
|
|
8622
|
+
const cells = table.querySelectorAll(`tr > *:nth-child(${idx + this.rowOffsetCount + 1})`);
|
|
8623
|
+
cells.forEach(cell => {
|
|
8624
|
+
cell.style.display = (cell.style.display === "none") ? "" : "none";
|
|
8625
|
+
});
|
|
8626
|
+
}
|
|
8627
|
+
}
|
|
8628
|
+
);
|
|
8629
|
+
}
|
|
8403
8630
|
|
|
8631
|
+
th.addEventListener( 'click', event => {
|
|
8632
|
+
new DropdownMenu( event.target, menuOptions, { side: "bottom", align: "start" });
|
|
8404
8633
|
});
|
|
8405
8634
|
|
|
8406
8635
|
hrow.appendChild( th );
|
|
@@ -8438,15 +8667,23 @@ class Table extends Widget {
|
|
|
8438
8667
|
v.style.transition = `none`;
|
|
8439
8668
|
} );
|
|
8440
8669
|
flushCss( fromRow );
|
|
8441
|
-
rIdx = null;
|
|
8442
8670
|
|
|
8443
8671
|
if( movePending )
|
|
8444
8672
|
{
|
|
8673
|
+
// Modify inner data first
|
|
8674
|
+
const fromIdx = rIdx - 1;
|
|
8675
|
+
const targetIdx = movePending[ 1 ] - 1;
|
|
8676
|
+
var b = data.body[fromIdx];
|
|
8677
|
+
data.body[fromIdx] = data.body[targetIdx];
|
|
8678
|
+
data.body[targetIdx] = b;
|
|
8679
|
+
|
|
8445
8680
|
const parent = movePending[ 0 ].parentNode;
|
|
8446
8681
|
parent.insertChildAtIndex( movePending[ 0 ], movePending[ 1 ] );
|
|
8447
8682
|
movePending = null;
|
|
8448
8683
|
}
|
|
8449
8684
|
|
|
8685
|
+
rIdx = null;
|
|
8686
|
+
|
|
8450
8687
|
doAsync( () => {
|
|
8451
8688
|
Array.from( table.rows ).forEach( v => {
|
|
8452
8689
|
v.style.transition = `transform 0.2s ease-in`;
|
|
@@ -8462,10 +8699,47 @@ class Table extends Widget {
|
|
|
8462
8699
|
fromRow.style.transform = `translateY(${fromRow.dY}px)`;
|
|
8463
8700
|
};
|
|
8464
8701
|
|
|
8465
|
-
|
|
8466
8702
|
for( let r = 0; r < data.body.length; ++r )
|
|
8467
8703
|
{
|
|
8468
8704
|
const bodyData = data.body[ r ];
|
|
8705
|
+
|
|
8706
|
+
if( this.filter )
|
|
8707
|
+
{
|
|
8708
|
+
const filterColIndex = data.head.indexOf( this.filter );
|
|
8709
|
+
if( filterColIndex > -1 )
|
|
8710
|
+
{
|
|
8711
|
+
if( !bodyData[ filterColIndex ].toLowerCase().includes( this._currentFilter.toLowerCase() ) )
|
|
8712
|
+
{
|
|
8713
|
+
continue;
|
|
8714
|
+
}
|
|
8715
|
+
}
|
|
8716
|
+
}
|
|
8717
|
+
|
|
8718
|
+
if( Object.keys( this.activeCustomFilters ).length )
|
|
8719
|
+
{
|
|
8720
|
+
let acfMap = {};
|
|
8721
|
+
|
|
8722
|
+
this._resetCustomFiltersBtn.root.classList.remove( "hidden" );
|
|
8723
|
+
|
|
8724
|
+
for( let acfValue in this.activeCustomFilters )
|
|
8725
|
+
{
|
|
8726
|
+
const acfName = this.activeCustomFilters[ acfValue ];
|
|
8727
|
+
acfMap[ acfName ] = acfMap[ acfName ] ?? false;
|
|
8728
|
+
|
|
8729
|
+
const filterColIndex = data.head.indexOf( acfName );
|
|
8730
|
+
if( filterColIndex > -1 )
|
|
8731
|
+
{
|
|
8732
|
+
acfMap[ acfName ] |= ( bodyData[ filterColIndex ] === acfValue );
|
|
8733
|
+
}
|
|
8734
|
+
}
|
|
8735
|
+
|
|
8736
|
+
const show = Object.values( acfMap ).reduce( ( e, acc ) => acc *= e );
|
|
8737
|
+
if( !show )
|
|
8738
|
+
{
|
|
8739
|
+
continue;
|
|
8740
|
+
}
|
|
8741
|
+
}
|
|
8742
|
+
|
|
8469
8743
|
const row = document.createElement( 'tr' );
|
|
8470
8744
|
const rowId = LX.getSupportedDOMName( bodyData.join( '-' ) );
|
|
8471
8745
|
row.setAttribute( "rowId", rowId.substr(0, 16) );
|
|
@@ -8540,6 +8814,13 @@ class Table extends Widget {
|
|
|
8540
8814
|
{
|
|
8541
8815
|
const td = document.createElement( 'td' );
|
|
8542
8816
|
td.innerHTML = `${ rowData }`;
|
|
8817
|
+
|
|
8818
|
+
const idx = bodyData.indexOf( rowData );
|
|
8819
|
+
if( this.centered && this.centered.indexOf( idx ) > -1 )
|
|
8820
|
+
{
|
|
8821
|
+
td.classList.add( "centered" );
|
|
8822
|
+
}
|
|
8823
|
+
|
|
8543
8824
|
row.appendChild( td );
|
|
8544
8825
|
}
|
|
8545
8826
|
|
|
@@ -8569,14 +8850,15 @@ class Table extends Widget {
|
|
|
8569
8850
|
{
|
|
8570
8851
|
button = LX.makeIcon( "more-horizontal", "Menu" );
|
|
8571
8852
|
button.addEventListener( 'click', function( event ) {
|
|
8572
|
-
|
|
8573
|
-
|
|
8574
|
-
|
|
8575
|
-
|
|
8576
|
-
|
|
8577
|
-
|
|
8578
|
-
|
|
8579
|
-
|
|
8853
|
+
if( !options.onMenuAction )
|
|
8854
|
+
{
|
|
8855
|
+
return;
|
|
8856
|
+
}
|
|
8857
|
+
|
|
8858
|
+
const menuOptions = options.onMenuAction( r, data );
|
|
8859
|
+
console.assert( menuOptions.length, "Add items to the Menu Action Dropdown!" );
|
|
8860
|
+
|
|
8861
|
+
new DropdownMenu( event.target, menuOptions, { side: "bottom", align: "end" });
|
|
8580
8862
|
});
|
|
8581
8863
|
}
|
|
8582
8864
|
else // custom actions
|
|
@@ -8590,7 +8872,7 @@ class Table extends Widget {
|
|
|
8590
8872
|
const mustRefresh = action.callback( bodyData, table, e );
|
|
8591
8873
|
if( mustRefresh )
|
|
8592
8874
|
{
|
|
8593
|
-
this.
|
|
8875
|
+
this.refresh();
|
|
8594
8876
|
}
|
|
8595
8877
|
});
|
|
8596
8878
|
}
|
|
@@ -8606,18 +8888,23 @@ class Table extends Widget {
|
|
|
8606
8888
|
body.appendChild( row );
|
|
8607
8889
|
}
|
|
8608
8890
|
}
|
|
8609
|
-
}
|
|
8610
8891
|
|
|
8611
|
-
|
|
8612
|
-
|
|
8613
|
-
|
|
8614
|
-
|
|
8615
|
-
|
|
8616
|
-
|
|
8617
|
-
|
|
8892
|
+
for( const v in data.colVisibilityMap )
|
|
8893
|
+
{
|
|
8894
|
+
const idx = parseInt( v );
|
|
8895
|
+
if( !data.colVisibilityMap[ idx ] )
|
|
8896
|
+
{
|
|
8897
|
+
const cells = table.querySelectorAll(`tr > *:nth-child(${idx + this.rowOffsetCount + 1})`);
|
|
8898
|
+
cells.forEach(cell => {
|
|
8899
|
+
cell.style.display = (cell.style.display === "none") ? "" : "none";
|
|
8900
|
+
});
|
|
8901
|
+
}
|
|
8902
|
+
}
|
|
8618
8903
|
}
|
|
8619
8904
|
|
|
8620
|
-
this.
|
|
8905
|
+
this.refresh();
|
|
8906
|
+
|
|
8907
|
+
doAsync( this.onResize.bind( this ) );
|
|
8621
8908
|
}
|
|
8622
8909
|
}
|
|
8623
8910
|
|
|
@@ -8990,7 +9277,7 @@ class Panel {
|
|
|
8990
9277
|
|
|
8991
9278
|
let widget = new TextInput( null, null, null, options )
|
|
8992
9279
|
const element = widget.root;
|
|
8993
|
-
element.className += " lexfilter
|
|
9280
|
+
element.className += " lexfilter";
|
|
8994
9281
|
|
|
8995
9282
|
let input = document.createElement('input');
|
|
8996
9283
|
input.className = 'lexinput-filter';
|
|
@@ -9003,7 +9290,7 @@ class Panel {
|
|
|
9003
9290
|
element.appendChild( searchIcon );
|
|
9004
9291
|
element.appendChild( input );
|
|
9005
9292
|
|
|
9006
|
-
input.addEventListener("input",
|
|
9293
|
+
input.addEventListener("input", e => {
|
|
9007
9294
|
if( options.callback )
|
|
9008
9295
|
{
|
|
9009
9296
|
options.callback( input.value, e );
|
|
@@ -9488,6 +9775,7 @@ class Panel {
|
|
|
9488
9775
|
* @param {Function} callback Callback function on change
|
|
9489
9776
|
* @param {Object} options:
|
|
9490
9777
|
* disabled: Make the widget disabled [false]
|
|
9778
|
+
* label: Toggle label
|
|
9491
9779
|
* suboptions: Callback to add widgets in case of TRUE value
|
|
9492
9780
|
* className: Customize colors
|
|
9493
9781
|
*/
|
|
@@ -9734,6 +10022,7 @@ class Panel {
|
|
|
9734
10022
|
* onMenuAction: Function callback to fill the "menu" context
|
|
9735
10023
|
* selectable: Each row can be selected
|
|
9736
10024
|
* sortable: Rows can be sorted by the user manually
|
|
10025
|
+
* centered: Center text within columns. true for all, Array for center selected cols.
|
|
9737
10026
|
*/
|
|
9738
10027
|
|
|
9739
10028
|
addTable( name, data, options = { } ) {
|
|
@@ -9791,7 +10080,7 @@ class Branch {
|
|
|
9791
10080
|
var branchContent = document.createElement( 'div' );
|
|
9792
10081
|
branchContent.id = name.replace( /\s/g, '' );
|
|
9793
10082
|
branchContent.className = "lexbranchcontent";
|
|
9794
|
-
root.appendChild(branchContent);
|
|
10083
|
+
root.appendChild( branchContent );
|
|
9795
10084
|
this.content = branchContent;
|
|
9796
10085
|
|
|
9797
10086
|
this._addBranchSeparator();
|
|
@@ -9807,7 +10096,7 @@ class Branch {
|
|
|
9807
10096
|
}
|
|
9808
10097
|
|
|
9809
10098
|
this.onclick = function( e ) {
|
|
9810
|
-
e.stopPropagation();
|
|
10099
|
+
// e.stopPropagation();
|
|
9811
10100
|
this.classList.toggle( "closed" );
|
|
9812
10101
|
this.parentElement.classList.toggle( "closed" );
|
|
9813
10102
|
|
|
@@ -9939,7 +10228,7 @@ class Branch {
|
|
|
9939
10228
|
var size = this.grabber.style.marginLeft;
|
|
9940
10229
|
|
|
9941
10230
|
// Update sizes of widgets inside
|
|
9942
|
-
for(
|
|
10231
|
+
for( let i = 0; i < this.widgets.length; i++ )
|
|
9943
10232
|
{
|
|
9944
10233
|
let widget = this.widgets[ i ];
|
|
9945
10234
|
const element = widget.root;
|
|
@@ -9949,26 +10238,21 @@ class Branch {
|
|
|
9949
10238
|
continue;
|
|
9950
10239
|
}
|
|
9951
10240
|
|
|
9952
|
-
|
|
9953
|
-
|
|
10241
|
+
let name = element.children[ 0 ];
|
|
10242
|
+
let value = element.children[ 1 ];
|
|
9954
10243
|
|
|
9955
10244
|
name.style.width = size;
|
|
9956
|
-
|
|
10245
|
+
|
|
9957
10246
|
switch( widget.type )
|
|
9958
10247
|
{
|
|
9959
|
-
case Widget.
|
|
9960
|
-
|
|
9961
|
-
|
|
10248
|
+
case Widget.CUSTOM:
|
|
10249
|
+
case Widget.ARRAY:
|
|
10250
|
+
continue;
|
|
9962
10251
|
};
|
|
9963
10252
|
|
|
9964
|
-
value.style.width = "-moz-calc( 100% - " + size + "
|
|
9965
|
-
value.style.width = "-webkit-calc( 100% - " + size + "
|
|
9966
|
-
value.style.width = "calc( 100% - " + size + "
|
|
9967
|
-
|
|
9968
|
-
if( widget.onresize )
|
|
9969
|
-
{
|
|
9970
|
-
widget.onresize();
|
|
9971
|
-
}
|
|
10253
|
+
value.style.width = "-moz-calc( 100% - " + size + " )";
|
|
10254
|
+
value.style.width = "-webkit-calc( 100% - " + size + " )";
|
|
10255
|
+
value.style.width = "calc( 100% - " + size + " )";
|
|
9972
10256
|
}
|
|
9973
10257
|
}
|
|
9974
10258
|
};
|
|
@@ -10096,7 +10380,7 @@ class Dialog {
|
|
|
10096
10380
|
draggable = options.draggable ?? true,
|
|
10097
10381
|
modal = options.modal ?? false;
|
|
10098
10382
|
|
|
10099
|
-
|
|
10383
|
+
let root = document.createElement('dialog');
|
|
10100
10384
|
root.className = "lexdialog " + (options.className ?? "");
|
|
10101
10385
|
root.id = options.id ?? "dialog" + Dialog._last_id++;
|
|
10102
10386
|
LX.root.appendChild( root );
|
|
@@ -10107,7 +10391,7 @@ class Dialog {
|
|
|
10107
10391
|
|
|
10108
10392
|
let that = this;
|
|
10109
10393
|
|
|
10110
|
-
|
|
10394
|
+
const titleDiv = document.createElement('div');
|
|
10111
10395
|
|
|
10112
10396
|
if( title )
|
|
10113
10397
|
{
|
|
@@ -10172,7 +10456,7 @@ class Dialog {
|
|
|
10172
10456
|
}, { icon: "fa-regular fa-window-restore" });
|
|
10173
10457
|
};
|
|
10174
10458
|
|
|
10175
|
-
root.appendChild(titleDiv);
|
|
10459
|
+
root.appendChild( titleDiv );
|
|
10176
10460
|
}
|
|
10177
10461
|
|
|
10178
10462
|
if( options.closable ?? true )
|
|
@@ -10371,7 +10655,7 @@ class PocketDialog extends Dialog {
|
|
|
10371
10655
|
|
|
10372
10656
|
if( float )
|
|
10373
10657
|
{
|
|
10374
|
-
for(
|
|
10658
|
+
for( let i = 0; i < float.length; i++ )
|
|
10375
10659
|
{
|
|
10376
10660
|
const t = float[i];
|
|
10377
10661
|
switch( t )
|
|
@@ -10504,14 +10788,14 @@ class ContextMenu {
|
|
|
10504
10788
|
contextmenu.className = "lexcontextmenu";
|
|
10505
10789
|
c.appendChild( contextmenu );
|
|
10506
10790
|
|
|
10507
|
-
for(
|
|
10791
|
+
for( let i = 0; i < o[k].length; ++i )
|
|
10508
10792
|
{
|
|
10509
10793
|
const subitem = o[ k ][ i ];
|
|
10510
10794
|
const subkey = Object.keys( subitem )[ 0 ];
|
|
10511
10795
|
this._createEntry(subitem, subkey, contextmenu, d);
|
|
10512
10796
|
}
|
|
10513
10797
|
|
|
10514
|
-
|
|
10798
|
+
const rect = c.getBoundingClientRect();
|
|
10515
10799
|
contextmenu.style.left = rect.width + "px";
|
|
10516
10800
|
contextmenu.style.marginTop = 3.5 - c.offsetHeight + "px";
|
|
10517
10801
|
|
|
@@ -10664,10 +10948,10 @@ class ContextMenu {
|
|
|
10664
10948
|
_item[ key ].unshift( parent );
|
|
10665
10949
|
}
|
|
10666
10950
|
|
|
10667
|
-
for(
|
|
10951
|
+
for( let child of _item[ key ] )
|
|
10668
10952
|
{
|
|
10669
10953
|
let k = Object.keys( child )[ 0 ];
|
|
10670
|
-
for(
|
|
10954
|
+
for( let i = 0; i < child[ k ].length; ++i )
|
|
10671
10955
|
{
|
|
10672
10956
|
setParent( child );
|
|
10673
10957
|
}
|
|
@@ -10708,7 +10992,7 @@ LX.ContextMenu = ContextMenu;
|
|
|
10708
10992
|
|
|
10709
10993
|
function addContextMenu( title, event, callback, options )
|
|
10710
10994
|
{
|
|
10711
|
-
|
|
10995
|
+
const menu = new ContextMenu( event, title, options );
|
|
10712
10996
|
LX.root.appendChild( menu.root );
|
|
10713
10997
|
|
|
10714
10998
|
if( callback )
|
|
@@ -10739,7 +11023,8 @@ class CanvasCurve {
|
|
|
10739
11023
|
element.style.minHeight = "20px";
|
|
10740
11024
|
|
|
10741
11025
|
element.bgcolor = options.bgColor || LX.getThemeColor( "global-intense-background" );
|
|
10742
|
-
element.pointscolor = options.pointsColor || LX.getThemeColor( "global-selected
|
|
11026
|
+
element.pointscolor = options.pointsColor || LX.getThemeColor( "global-selected" );
|
|
11027
|
+
element.activepointscolor = options.activePointsColor || LX.getThemeColor( "global-selected-light" );
|
|
10743
11028
|
element.linecolor = options.lineColor || "#555";
|
|
10744
11029
|
element.value = value || [];
|
|
10745
11030
|
element.xrange = options.xrange || [ 0, 1 ]; // min, max
|
|
@@ -10755,7 +11040,8 @@ class CanvasCurve {
|
|
|
10755
11040
|
|
|
10756
11041
|
LX.addSignal( "@on_new_color_scheme", (el, value) => {
|
|
10757
11042
|
element.bgcolor = options.bgColor || LX.getThemeColor( "global-intense-background" );
|
|
10758
|
-
element.pointscolor = options.pointsColor || LX.getThemeColor( "global-selected
|
|
11043
|
+
element.pointscolor = options.pointsColor || LX.getThemeColor( "global-selected" );
|
|
11044
|
+
element.activepointscolor = options.activePointsColor || LX.getThemeColor( "global-selected-light" );
|
|
10759
11045
|
this.redraw();
|
|
10760
11046
|
} );
|
|
10761
11047
|
|
|
@@ -10776,11 +11062,11 @@ class CanvasCurve {
|
|
|
10776
11062
|
return element.defaulty;
|
|
10777
11063
|
}
|
|
10778
11064
|
|
|
10779
|
-
|
|
10780
|
-
|
|
10781
|
-
for(
|
|
11065
|
+
let last = [ element.xrange[ 0 ], element.defaulty ];
|
|
11066
|
+
let f = 0;
|
|
11067
|
+
for( let i = 0; i < element.value.length; i += 1 )
|
|
10782
11068
|
{
|
|
10783
|
-
|
|
11069
|
+
let v = element.value[ i ];
|
|
10784
11070
|
if( x == v[ 0 ] ) return v[ 1 ];
|
|
10785
11071
|
if( x < v[ 0 ] )
|
|
10786
11072
|
{
|
|
@@ -10798,9 +11084,9 @@ class CanvasCurve {
|
|
|
10798
11084
|
|
|
10799
11085
|
element.resample = function( samples ) {
|
|
10800
11086
|
|
|
10801
|
-
|
|
10802
|
-
|
|
10803
|
-
for(
|
|
11087
|
+
let r = [];
|
|
11088
|
+
let dx = (element.xrange[1] - element.xrange[ 0 ]) / samples;
|
|
11089
|
+
for( let i = element.xrange[0]; i <= element.xrange[1]; i += dx )
|
|
10804
11090
|
{
|
|
10805
11091
|
r.push( element.getValueAt(i) );
|
|
10806
11092
|
}
|
|
@@ -10809,9 +11095,9 @@ class CanvasCurve {
|
|
|
10809
11095
|
|
|
10810
11096
|
element.addValue = function(v) {
|
|
10811
11097
|
|
|
10812
|
-
for(
|
|
11098
|
+
for( let i = 0; i < element.value; i++ )
|
|
10813
11099
|
{
|
|
10814
|
-
|
|
11100
|
+
let value = element.value[i];
|
|
10815
11101
|
if(value[0] < v[0]) continue;
|
|
10816
11102
|
element.value.splice(i,0,v);
|
|
10817
11103
|
redraw();
|
|
@@ -10834,7 +11120,7 @@ class CanvasCurve {
|
|
|
10834
11120
|
(v[1] * element.yrange[1] / canvas.height + element.yrange[0])];
|
|
10835
11121
|
}
|
|
10836
11122
|
|
|
10837
|
-
|
|
11123
|
+
let selected = -1;
|
|
10838
11124
|
|
|
10839
11125
|
element.redraw = function( o = {} ) {
|
|
10840
11126
|
|
|
@@ -10896,7 +11182,7 @@ class CanvasCurve {
|
|
|
10896
11182
|
var value = element.value[ i ];
|
|
10897
11183
|
pos = convert( value );
|
|
10898
11184
|
if( selected == i )
|
|
10899
|
-
ctx.fillStyle =
|
|
11185
|
+
ctx.fillStyle = element.activepointscolor;
|
|
10900
11186
|
else
|
|
10901
11187
|
ctx.fillStyle = element.pointscolor;
|
|
10902
11188
|
ctx.beginPath();
|
|
@@ -12084,7 +12370,7 @@ class AssetView {
|
|
|
12084
12370
|
const hasImage = ['png', 'jpg'].indexOf( getExtension( file.src ) ) > -1 || is_base_64;
|
|
12085
12371
|
if( hasImage )
|
|
12086
12372
|
{
|
|
12087
|
-
this.previewPanel.addImage( file.src, { style: { width: "100%" } } );
|
|
12373
|
+
this.previewPanel.addImage( null, file.src, { style: { width: "100%" } } );
|
|
12088
12374
|
}
|
|
12089
12375
|
}
|
|
12090
12376
|
|
|
@@ -12528,69 +12814,6 @@ Element.prototype.getParentArea = function() {
|
|
|
12528
12814
|
}
|
|
12529
12815
|
}
|
|
12530
12816
|
|
|
12531
|
-
LX.ICONS = {
|
|
12532
|
-
"align-center": [448, 512, [], "", "M352 64c0-17.7-14.3-32-32-32L128 32c-17.7 0-32 14.3-32 32s14.3 32 32 32l192 0c17.7 0 32-14.3 32-32zm96 128c0-17.7-14.3-32-32-32L32 160c-17.7 0-32 14.3-32 32s14.3 32 32 32l384 0c17.7 0 32-14.3 32-32zM0 448c0 17.7 14.3 32 32 32l384 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L32 416c-17.7 0-32 14.3-32 32zM352 320c0-17.7-14.3-32-32-32l-192 0c-17.7 0-32 14.3-32 32s14.3 32 32 32l192 0c17.7 0 32-14.3 32-32z"],
|
|
12533
|
-
"align-justify": [448, 512, [], "", "M448 64c0-17.7-14.3-32-32-32L32 32C14.3 32 0 46.3 0 64S14.3 96 32 96l384 0c17.7 0 32-14.3 32-32zm0 256c0-17.7-14.3-32-32-32L32 288c-17.7 0-32 14.3-32 32s14.3 32 32 32l384 0c17.7 0 32-14.3 32-32zM0 192c0 17.7 14.3 32 32 32l384 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L32 160c-17.7 0-32 14.3-32 32zM448 448c0-17.7-14.3-32-32-32L32 416c-17.7 0-32 14.3-32 32s14.3 32 32 32l384 0c17.7 0 32-14.3 32-32z"],
|
|
12534
|
-
"align-left": [448, 512, [], "", "M288 64c0 17.7-14.3 32-32 32L32 96C14.3 96 0 81.7 0 64S14.3 32 32 32l224 0c17.7 0 32 14.3 32 32zm0 256c0 17.7-14.3 32-32 32L32 352c-17.7 0-32-14.3-32-32s14.3-32 32-32l224 0c17.7 0 32 14.3 32 32zM0 192c0-17.7 14.3-32 32-32l384 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 224c-17.7 0-32-14.3-32-32zM448 448c0 17.7-14.3 32-32 32L32 480c-17.7 0-32-14.3-32-32s14.3-32 32-32l384 0c17.7 0 32 14.3 32 32z"],
|
|
12535
|
-
"align-right": [448, 512, [], "", "M448 64c0 17.7-14.3 32-32 32L192 96c-17.7 0-32-14.3-32-32s14.3-32 32-32l224 0c17.7 0 32 14.3 32 32zm0 256c0 17.7-14.3 32-32 32l-224 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l224 0c17.7 0 32 14.3 32 32zM0 192c0-17.7 14.3-32 32-32l384 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 224c-17.7 0-32-14.3-32-32zM448 448c0 17.7-14.3 32-32 32L32 480c-17.7 0-32-14.3-32-32s14.3-32 32-32l384 0c17.7 0 32 14.3 32 32z"],
|
|
12536
|
-
"bell": [448, 512, [], "", "M224 0c-17.7 0-32 14.3-32 32l0 19.2C119 66 64 130.6 64 208l0 25.4c0 45.4-15.5 89.5-43.8 124.9L5.3 377c-5.8 7.2-6.9 17.1-2.9 25.4S14.8 416 24 416l400 0c9.2 0 17.6-5.3 21.6-13.6s2.9-18.2-2.9-25.4l-14.9-18.6C399.5 322.9 384 278.8 384 233.4l0-25.4c0-77.4-55-142-128-156.8L256 32c0-17.7-14.3-32-32-32zm0 96c61.9 0 112 50.1 112 112l0 25.4c0 47.9 13.9 94.6 39.7 134.6L72.3 368C98.1 328 112 281.3 112 233.4l0-25.4c0-61.9 50.1-112 112-112zm64 352l-64 0-64 0c0 17 6.7 33.3 18.7 45.3s28.3 18.7 45.3 18.7s33.3-6.7 45.3-18.7s18.7-28.3 18.7-45.3z"],
|
|
12537
|
-
"display": [576, 512, [], "", "M64 0C28.7 0 0 28.7 0 64L0 352c0 35.3 28.7 64 64 64l176 0-10.7 32L160 448c-17.7 0-32 14.3-32 32s14.3 32 32 32l256 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-69.3 0L336 416l176 0c35.3 0 64-28.7 64-64l0-288c0-35.3-28.7-64-64-64L64 0zM512 64l0 288L64 352 64 64l448 0z"],
|
|
12538
|
-
"mobile-screen": [384, 512, [], "", "M16 64C16 28.7 44.7 0 80 0L304 0c35.3 0 64 28.7 64 64l0 384c0 35.3-28.7 64-64 64L80 512c-35.3 0-64-28.7-64-64L16 64zM144 448c0 8.8 7.2 16 16 16l64 0c8.8 0 16-7.2 16-16s-7.2-16-16-16l-64 0c-8.8 0-16 7.2-16 16zM304 64L80 64l0 320 224 0 0-320z"],
|
|
12539
|
-
"print": [512, 512, [], "", "M128 0C92.7 0 64 28.7 64 64l0 96 64 0 0-96 226.7 0L384 93.3l0 66.7 64 0 0-66.7c0-17-6.7-33.3-18.7-45.3L400 18.7C388 6.7 371.7 0 354.7 0L128 0zM384 352l0 32 0 64-256 0 0-64 0-16 0-16 256 0zm64 32l32 0c17.7 0 32-14.3 32-32l0-96c0-35.3-28.7-64-64-64L64 192c-35.3 0-64 28.7-64 64l0 96c0 17.7 14.3 32 32 32l32 0 0 64c0 35.3 28.7 64 64 64l256 0c35.3 0 64-28.7 64-64l0-64zM432 248a24 24 0 1 1 0 48 24 24 0 1 1 0-48z"],
|
|
12540
|
-
"bookmark": [384, 512, [], "", "M0 48C0 21.5 21.5 0 48 0l0 48 0 393.4 130.1-92.9c8.3-6 19.6-6 27.9 0L336 441.4 336 48 48 48 48 0 336 0c26.5 0 48 21.5 48 48l0 440c0 9-5 17.2-13 21.3s-17.6 3.4-24.9-1.8L192 397.5 37.9 507.5c-7.3 5.2-16.9 5.9-24.9 1.8S0 497 0 488L0 48z"],
|
|
12541
|
-
"calendar": [448, 512, [], "", "M304 128a80 80 0 1 0 -160 0 80 80 0 1 0 160 0zM96 128a128 128 0 1 1 256 0A128 128 0 1 1 96 128zM49.3 464l349.5 0c-8.9-63.3-63.3-112-129-112l-91.4 0c-65.7 0-120.1 48.7-129 112zM0 482.3C0 383.8 79.8 304 178.3 304l91.4 0C368.2 304 448 383.8 448 482.3c0 16.4-13.3 29.7-29.7 29.7L29.7 512C13.3 512 0 498.7 0 482.3z"],
|
|
12542
|
-
"chart": [448, 512, [], "", "M160 80c0-26.5 21.5-48 48-48l32 0c26.5 0 48 21.5 48 48l0 352c0 26.5-21.5 48-48 48l-32 0c-26.5 0-48-21.5-48-48l0-352zM0 272c0-26.5 21.5-48 48-48l32 0c26.5 0 48 21.5 48 48l0 160c0 26.5-21.5 48-48 48l-32 0c-26.5 0-48-21.5-48-48L0 272zM368 96l32 0c26.5 0 48 21.5 48 48l0 288c0 26.5-21.5 48-48 48l-32 0c-26.5 0-48-21.5-48-48l0-288c0-26.5 21.5-48 48-48z"],
|
|
12543
|
-
"check": [448, 512, [], "", "M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z"],
|
|
12544
|
-
"clone": [512, 512, [], "", "M64 464l224 0c8.8 0 16-7.2 16-16l0-64 48 0 0 64c0 35.3-28.7 64-64 64L64 512c-35.3 0-64-28.7-64-64L0 224c0-35.3 28.7-64 64-64l64 0 0 48-64 0c-8.8 0-16 7.2-16 16l0 224c0 8.8 7.2 16 16 16zM224 304l224 0c8.8 0 16-7.2 16-16l0-224c0-8.8-7.2-16-16-16L224 48c-8.8 0-16 7.2-16 16l0 224c0 8.8 7.2 16 16 16zm-64-16l0-224c0-35.3 28.7-64 64-64L448 0c35.3 0 64 28.7 64 64l0 224c0 35.3-28.7 64-64 64l-224 0c-35.3 0-64-28.7-64-64z"],
|
|
12545
|
-
"copy": [448, 512, [], "", "M384 336l-192 0c-8.8 0-16-7.2-16-16l0-256c0-8.8 7.2-16 16-16l140.1 0L400 115.9 400 320c0 8.8-7.2 16-16 16zM192 384l192 0c35.3 0 64-28.7 64-64l0-204.1c0-12.7-5.1-24.9-14.1-33.9L366.1 14.1c-9-9-21.2-14.1-33.9-14.1L192 0c-35.3 0-64 28.7-64 64l0 256c0 35.3 28.7 64 64 64zM64 128c-35.3 0-64 28.7-64 64L0 448c0 35.3 28.7 64 64 64l192 0c35.3 0 64-28.7 64-64l0-32-48 0 0 32c0 8.8-7.2 16-16 16L64 464c-8.8 0-16-7.2-16-16l0-256c0-8.8 7.2-16 16-16l32 0 0-48-32 0z"],
|
|
12546
|
-
"paste": [512, 512, [], "", "M104.6 48L64 48C28.7 48 0 76.7 0 112L0 384c0 35.3 28.7 64 64 64l96 0 0-48-96 0c-8.8 0-16-7.2-16-16l0-272c0-8.8 7.2-16 16-16l16 0c0 17.7 14.3 32 32 32l72.4 0C202 108.4 227.6 96 256 96l62 0c-7.1-27.6-32.2-48-62-48l-40.6 0C211.6 20.9 188.2 0 160 0s-51.6 20.9-55.4 48zM144 56a16 16 0 1 1 32 0 16 16 0 1 1 -32 0zM448 464l-192 0c-8.8 0-16-7.2-16-16l0-256c0-8.8 7.2-16 16-16l140.1 0L464 243.9 464 448c0 8.8-7.2 16-16 16zM256 512l192 0c35.3 0 64-28.7 64-64l0-204.1c0-12.7-5.1-24.9-14.1-33.9l-67.9-67.9c-9-9-21.2-14.1-33.9-14.1L256 128c-35.3 0-64 28.7-64 64l0 256c0 35.3 28.7 64 64 64z"],
|
|
12547
|
-
"edit": [512, 512, [], "", "M441 58.9L453.1 71c9.4 9.4 9.4 24.6 0 33.9L424 134.1 377.9 88 407 58.9c9.4-9.4 24.6-9.4 33.9 0zM209.8 256.2L344 121.9 390.1 168 255.8 302.2c-2.9 2.9-6.5 5-10.4 6.1l-58.5 16.7 16.7-58.5c1.1-3.9 3.2-7.5 6.1-10.4zM373.1 25L175.8 222.2c-8.7 8.7-15 19.4-18.3 31.1l-28.6 100c-2.4 8.4-.1 17.4 6.1 23.6s15.2 8.5 23.6 6.1l100-28.6c11.8-3.4 22.5-9.7 31.1-18.3L487 138.9c28.1-28.1 28.1-73.7 0-101.8L474.9 25C446.8-3.1 401.2-3.1 373.1 25zM88 64C39.4 64 0 103.4 0 152L0 424c0 48.6 39.4 88 88 88l272 0c48.6 0 88-39.4 88-88l0-112c0-13.3-10.7-24-24-24s-24 10.7-24 24l0 112c0 22.1-17.9 40-40 40L88 464c-22.1 0-40-17.9-40-40l0-272c0-22.1 17.9-40 40-40l112 0c13.3 0 24-10.7 24-24s-10.7-24-24-24L88 64z"],
|
|
12548
|
-
"envelope": [512, 512, [], "", "M64 112c-8.8 0-16 7.2-16 16l0 22.1L220.5 291.7c20.7 17 50.4 17 71.1 0L464 150.1l0-22.1c0-8.8-7.2-16-16-16L64 112zM48 212.2L48 384c0 8.8 7.2 16 16 16l384 0c8.8 0 16-7.2 16-16l0-171.8L322 328.8c-38.4 31.5-93.7 31.5-132 0L48 212.2zM0 128C0 92.7 28.7 64 64 64l384 0c35.3 0 64 28.7 64 64l0 256c0 35.3-28.7 64-64 64L64 448c-35.3 0-64-28.7-64-64L0 128z"],
|
|
12549
|
-
"envelope-open": [512, 512, [], "", "M255.4 48.2c.2-.1 .4-.2 .6-.2s.4 .1 .6 .2L460.6 194c2.1 1.5 3.4 3.9 3.4 6.5l0 13.6L291.5 355.7c-20.7 17-50.4 17-71.1 0L48 214.1l0-13.6c0-2.6 1.2-5 3.4-6.5L255.4 48.2zM48 276.2L190 392.8c38.4 31.5 93.7 31.5 132 0L464 276.2 464 456c0 4.4-3.6 8-8 8L56 464c-4.4 0-8-3.6-8-8l0-179.8zM256 0c-10.2 0-20.2 3.2-28.5 9.1L23.5 154.9C8.7 165.4 0 182.4 0 200.5L0 456c0 30.9 25.1 56 56 56l400 0c30.9 0 56-25.1 56-56l0-255.5c0-18.1-8.7-35.1-23.4-45.6L284.5 9.1C276.2 3.2 266.2 0 256 0z"],
|
|
12550
|
-
"map": [576, 512, [], "", "M565.6 36.2C572.1 40.7 576 48.1 576 56l0 336c0 10-6.2 18.9-15.5 22.4l-168 64c-5.2 2-10.9 2.1-16.1 .3L192.5 417.5l-160 61c-7.4 2.8-15.7 1.8-22.2-2.7S0 463.9 0 456L0 120c0-10 6.1-18.9 15.5-22.4l168-64c5.2-2 10.9-2.1 16.1-.3L383.5 94.5l160-61c7.4-2.8 15.7-1.8 22.2 2.7zM48 136.5l0 284.6 120-45.7 0-284.6L48 136.5zM360 422.7l0-285.4-144-48 0 285.4 144 48zm48-1.5l120-45.7 0-284.6L408 136.5l0 284.6z"],
|
|
12551
|
-
"file": [384, 512, [], "", "M320 464c8.8 0 16-7.2 16-16l0-288-80 0c-17.7 0-32-14.3-32-32l0-80L64 48c-8.8 0-16 7.2-16 16l0 384c0 8.8 7.2 16 16 16l256 0zM0 64C0 28.7 28.7 0 64 0L229.5 0c17 0 33.3 6.7 45.3 18.7l90.5 90.5c12 12 18.7 28.3 18.7 45.3L384 448c0 35.3-28.7 64-64 64L64 512c-35.3 0-64-28.7-64-64L0 64z"],
|
|
12552
|
-
"file-code": [384, 512, [], "", "M64 464c-8.8 0-16-7.2-16-16L48 64c0-8.8 7.2-16 16-16l160 0 0 80c0 17.7 14.3 32 32 32l80 0 0 288c0 8.8-7.2 16-16 16L64 464zM64 0C28.7 0 0 28.7 0 64L0 448c0 35.3 28.7 64 64 64l256 0c35.3 0 64-28.7 64-64l0-293.5c0-17-6.7-33.3-18.7-45.3L274.7 18.7C262.7 6.7 246.5 0 229.5 0L64 0zm97 289c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0L79 303c-9.4 9.4-9.4 24.6 0 33.9l48 48c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9l-31-31 31-31zM257 255c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l31 31-31 31c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l48-48c9.4-9.4 9.4-24.6 0-33.9l-48-48z"],
|
|
12553
|
-
"file-zip": [384, 512, [], "", "M64 464c-8.8 0-16-7.2-16-16L48 64c0-8.8 7.2-16 16-16l48 0c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l48 0 0 80c0 17.7 14.3 32 32 32l80 0 0 288c0 8.8-7.2 16-16 16L64 464zM64 0C28.7 0 0 28.7 0 64L0 448c0 35.3 28.7 64 64 64l256 0c35.3 0 64-28.7 64-64l0-293.5c0-17-6.7-33.3-18.7-45.3L274.7 18.7C262.7 6.7 246.5 0 229.5 0L64 0zm48 112c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16s-7.2-16-16-16l-32 0c-8.8 0-16 7.2-16 16zm0 64c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16s-7.2-16-16-16l-32 0c-8.8 0-16 7.2-16 16zm-6.3 71.8L82.1 335.9c-1.4 5.4-2.1 10.9-2.1 16.4c0 35.2 28.8 63.7 64 63.7s64-28.5 64-63.7c0-5.5-.7-11.1-2.1-16.4l-23.5-88.2c-3.7-14-16.4-23.8-30.9-23.8l-14.8 0c-14.5 0-27.2 9.7-30.9 23.8zM128 336l32 0c8.8 0 16 7.2 16 16s-7.2 16-16 16l-32 0c-8.8 0-16-7.2-16-16s7.2-16 16-16z"],
|
|
12554
|
-
"floppy-disk": [448, 512, ["save"], "", "M48 96l0 320c0 8.8 7.2 16 16 16l320 0c8.8 0 16-7.2 16-16l0-245.5c0-4.2-1.7-8.3-4.7-11.3l33.9-33.9c12 12 18.7 28.3 18.7 45.3L448 416c0 35.3-28.7 64-64 64L64 480c-35.3 0-64-28.7-64-64L0 96C0 60.7 28.7 32 64 32l245.5 0c17 0 33.3 6.7 45.3 18.7l74.5 74.5-33.9 33.9L320.8 84.7c-.3-.3-.5-.5-.8-.8L320 184c0 13.3-10.7 24-24 24l-192 0c-13.3 0-24-10.7-24-24L80 80 64 80c-8.8 0-16 7.2-16 16zm80-16l0 80 144 0 0-80L128 80zm32 240a64 64 0 1 1 128 0 64 64 0 1 1 -128 0z"],
|
|
12555
|
-
"save": "floppy-disk",
|
|
12556
|
-
"fingerprint": [512, 512, [], "", "M48 256C48 141.1 141.1 48 256 48c63.1 0 119.6 28.1 157.8 72.5c8.6 10.1 23.8 11.2 33.8 2.6s11.2-23.8 2.6-33.8C403.3 34.6 333.7 0 256 0C114.6 0 0 114.6 0 256l0 40c0 13.3 10.7 24 24 24s24-10.7 24-24l0-40zm458.5-52.9c-2.7-13-15.5-21.3-28.4-18.5s-21.3 15.5-18.5 28.4c2.9 13.9 4.5 28.3 4.5 43.1l0 40c0 13.3 10.7 24 24 24s24-10.7 24-24l0-40c0-18.1-1.9-35.8-5.5-52.9zM256 80c-19 0-37.4 3-54.5 8.6c-15.2 5-18.7 23.7-8.3 35.9c7.1 8.3 18.8 10.8 29.4 7.9c10.6-2.9 21.8-4.4 33.4-4.4c70.7 0 128 57.3 128 128l0 24.9c0 25.2-1.5 50.3-4.4 75.3c-1.7 14.6 9.4 27.8 24.2 27.8c11.8 0 21.9-8.6 23.3-20.3c3.3-27.4 5-55 5-82.7l0-24.9c0-97.2-78.8-176-176-176zM150.7 148.7c-9.1-10.6-25.3-11.4-33.9-.4C93.7 178 80 215.4 80 256l0 24.9c0 24.2-2.6 48.4-7.8 71.9C68.8 368.4 80.1 384 96.1 384c10.5 0 19.9-7 22.2-17.3c6.4-28.1 9.7-56.8 9.7-85.8l0-24.9c0-27.2 8.5-52.4 22.9-73.1c7.2-10.4 8-24.6-.2-34.2zM256 160c-53 0-96 43-96 96l0 24.9c0 35.9-4.6 71.5-13.8 106.1c-3.8 14.3 6.7 29 21.5 29c9.5 0 17.9-6.2 20.4-15.4c10.5-39 15.9-79.2 15.9-119.7l0-24.9c0-28.7 23.3-52 52-52s52 23.3 52 52l0 24.9c0 36.3-3.5 72.4-10.4 107.9c-2.7 13.9 7.7 27.2 21.8 27.2c10.2 0 19-7 21-17c7.7-38.8 11.6-78.3 11.6-118.1l0-24.9c0-53-43-96-96-96zm24 96c0-13.3-10.7-24-24-24s-24 10.7-24 24l0 24.9c0 59.9-11 119.3-32.5 175.2l-5.9 15.3c-4.8 12.4 1.4 26.3 13.8 31s26.3-1.4 31-13.8l5.9-15.3C267.9 411.9 280 346.7 280 280.9l0-24.9z"],
|
|
12557
|
-
"eye": [576, 512, [], "", "M288 80c-65.2 0-118.8 29.6-159.9 67.7C89.6 183.5 63 226 49.4 256c13.6 30 40.2 72.5 78.6 108.3C169.2 402.4 222.8 432 288 432s118.8-29.6 159.9-67.7C486.4 328.5 513 286 526.6 256c-13.6-30-40.2-72.5-78.6-108.3C406.8 109.6 353.2 80 288 80zM95.4 112.6C142.5 68.8 207.2 32 288 32s145.5 36.8 192.6 80.6c46.8 43.5 78.1 95.4 93 131.1c3.3 7.9 3.3 16.7 0 24.6c-14.9 35.7-46.2 87.7-93 131.1C433.5 443.2 368.8 480 288 480s-145.5-36.8-192.6-80.6C48.6 356 17.3 304 2.5 268.3c-3.3-7.9-3.3-16.7 0-24.6C17.3 208 48.6 156 95.4 112.6zM288 336c44.2 0 80-35.8 80-80s-35.8-80-80-80c-.7 0-1.3 0-2 0c1.3 5.1 2 10.5 2 16c0 35.3-28.7 64-64 64c-5.5 0-10.9-.7-16-2c0 .7 0 1.3 0 2c0 44.2 35.8 80 80 80zm0-208a128 128 0 1 1 0 256 128 128 0 1 1 0-256z"],
|
|
12558
|
-
"eye-slash": [640, 512, [], "", "M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7L525.6 386.7c39.6-40.6 66.4-86.1 79.9-118.4c3.3-7.9 3.3-16.7 0-24.6c-14.9-35.7-46.2-87.7-93-131.1C465.5 68.8 400.8 32 320 32c-68.2 0-125 26.3-169.3 60.8L38.8 5.1zm151 118.3C226 97.7 269.5 80 320 80c65.2 0 118.8 29.6 159.9 67.7C518.4 183.5 545 226 558.6 256c-12.6 28-36.6 66.8-70.9 100.9l-53.8-42.2c9.1-17.6 14.2-37.5 14.2-58.7c0-70.7-57.3-128-128-128c-32.2 0-61.7 11.9-84.2 31.5l-46.1-36.1zM394.9 284.2l-81.5-63.9c4.2-8.5 6.6-18.2 6.6-28.3c0-5.5-.7-10.9-2-16c.7 0 1.3 0 2 0c44.2 0 80 35.8 80 80c0 9.9-1.8 19.4-5.1 28.2zm9.4 130.3C378.8 425.4 350.7 432 320 432c-65.2 0-118.8-29.6-159.9-67.7C121.6 328.5 95 286 81.4 256c8.3-18.4 21.5-41.5 39.4-64.8L83.1 161.5C60.3 191.2 44 220.8 34.5 243.7c-3.3 7.9-3.3 16.7 0 24.6c14.9 35.7 46.2 87.7 93 131.1C174.5 443.2 239.2 480 320 480c47.8 0 89.9-12.9 126.2-32.5l-41.9-33zM192 256c0 70.7 57.3 128 128 128c13.3 0 26.1-2 38.2-5.8L302 334c-23.5-5.4-43.1-21.2-53.7-42.3l-56.1-44.2c-.2 2.8-.3 5.6-.3 8.5z"],
|
|
12559
|
-
"folder": [512, 512, [], "", "M0 96C0 60.7 28.7 32 64 32l132.1 0c19.1 0 37.4 7.6 50.9 21.1L289.9 96 448 96c35.3 0 64 28.7 64 64l0 256c0 35.3-28.7 64-64 64L64 480c-35.3 0-64-28.7-64-64L0 96zM64 80c-8.8 0-16 7.2-16 16l0 320c0 8.8 7.2 16 16 16l384 0c8.8 0 16-7.2 16-16l0-256c0-8.8-7.2-16-16-16l-161.4 0c-10.6 0-20.8-4.2-28.3-11.7L213.1 87c-4.5-4.5-10.6-7-17-7L64 80z"],
|
|
12560
|
-
"folder-closed": [512, 512, [], "e185", "M251.7 127.6s0 0 0 0c10.5 10.5 24.7 16.4 39.6 16.4L448 144c8.8 0 16 7.2 16 16l0 32L48 192l0-96c0-8.8 7.2-16 16-16l133.5 0c4.2 0 8.3 1.7 11.3 4.7l33.9-33.9L208.8 84.7l42.9 42.9zM48 240l416 0 0 176c0 8.8-7.2 16-16 16L64 432c-8.8 0-16-7.2-16-16l0-176zM285.7 93.7L242.7 50.7c-12-12-28.3-18.7-45.3-18.7L64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l384 0c35.3 0 64-28.7 64-64l0-256c0-35.3-28.7-64-64-64L291.3 96c-2.1 0-4.2-.8-5.7-2.3z"],
|
|
12561
|
-
"folder-open": [576, 512, [], "", "M384 480l48 0c11.4 0 21.9-6 27.6-15.9l112-192c5.8-9.9 5.8-22.1 .1-32.1S555.5 224 544 224l-400 0c-11.4 0-21.9 6-27.6 15.9L48 357.1 48 96c0-8.8 7.2-16 16-16l117.5 0c4.2 0 8.3 1.7 11.3 4.7l26.5 26.5c21 21 49.5 32.8 79.2 32.8L416 144c8.8 0 16 7.2 16 16l0 32 48 0 0-32c0-35.3-28.7-64-64-64L298.5 96c-17 0-33.3-6.7-45.3-18.7L226.7 50.7c-12-12-28.3-18.7-45.3-18.7L64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l23.7 0L384 480z"],
|
|
12562
|
-
"github": [496, 512, [], "", "M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"],
|
|
12563
|
-
"grip-vertical": [320, 512, [], "", "M40 352l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40zm192 0l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40zM40 320c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0zM232 192l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40zM40 160c-22.1 0-40-17.9-40-40L0 72C0 49.9 17.9 32 40 32l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0zM232 32l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40z"],
|
|
12564
|
-
"image": [512, 512, [], "", "M448 80c8.8 0 16 7.2 16 16l0 319.8-5-6.5-136-176c-4.5-5.9-11.6-9.3-19-9.3s-14.4 3.4-19 9.3L202 340.7l-30.5-42.7C167 291.7 159.8 288 152 288s-15 3.7-19.5 10.1l-80 112L48 416.3l0-.3L48 96c0-8.8 7.2-16 16-16l384 0zM64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l384 0c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64L64 32zm80 192a48 48 0 1 0 0-96 48 48 0 1 0 0 96z"],
|
|
12565
|
-
"images": [576, 512, [], "", "M160 80l352 0c8.8 0 16 7.2 16 16l0 224c0 8.8-7.2 16-16 16l-21.2 0L388.1 178.9c-4.4-6.8-12-10.9-20.1-10.9s-15.7 4.1-20.1 10.9l-52.2 79.8-12.4-16.9c-4.5-6.2-11.7-9.8-19.4-9.8s-14.8 3.6-19.4 9.8L175.6 336 160 336c-8.8 0-16-7.2-16-16l0-224c0-8.8 7.2-16 16-16zM96 96l0 224c0 35.3 28.7 64 64 64l352 0c35.3 0 64-28.7 64-64l0-224c0-35.3-28.7-64-64-64L160 32c-35.3 0-64 28.7-64 64zM48 120c0-13.3-10.7-24-24-24S0 106.7 0 120L0 344c0 75.1 60.9 136 136 136l320 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-320 0c-48.6 0-88-39.4-88-88l0-224zm208 24a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z"],
|
|
12566
|
-
"left": [320, 512, [], "", "M41.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l160 160c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 256 246.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-160 160z"],
|
|
12567
|
-
"right": [320, 512, [], "", "M278.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-160 160c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L210.7 256 73.4 118.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l160 160z"],
|
|
12568
|
-
"up": [448, 512, [], "", "M201.4 137.4c12.5-12.5 32.8-12.5 45.3 0l160 160c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L224 205.3 86.6 342.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l160-160z"],
|
|
12569
|
-
"down": [448, 512, [], "", "M201.4 374.6c12.5 12.5 32.8 12.5 45.3 0l160-160c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 306.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160z"],
|
|
12570
|
-
"log-in": [512, 512, [], "", "M352 96l64 0c17.7 0 32 14.3 32 32l0 256c0 17.7-14.3 32-32 32l-64 0c-17.7 0-32 14.3-32 32s14.3 32 32 32l64 0c53 0 96-43 96-96l0-256c0-53-43-96-96-96l-64 0c-17.7 0-32 14.3-32 32s14.3 32 32 32zm-9.4 182.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L242.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l210.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z"],
|
|
12571
|
-
"log-out": [512, 512, [], "", "M502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 192 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l210.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128zM160 96c17.7 0 32-14.3 32-32s-14.3-32-32-32L96 32C43 32 0 75 0 128L0 384c0 53 43 96 96 96l64 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-64 0c-17.7 0-32-14.3-32-32l0-256c0-17.7 14.3-32 32-32l64 0z"],
|
|
12572
|
-
"menu-arrows": [512, 512, [], "", "M352 144l96 112-96 112M160 144L64 256l96 112", "transform=rotate(90)", "fill=none stroke=currentColor stroke-width=60 stroke-linejoin=round stroke-linecap=round"],
|
|
12573
|
-
"more": [128, 512, [], "", "M64 360a56 56 0 1 0 0 112 56 56 0 1 0 0-112zm0-160a56 56 0 1 0 0 112 56 56 0 1 0 0-112zM120 96A56 56 0 1 0 8 96a56 56 0 1 0 112 0z"],
|
|
12574
|
-
"minus": [448, 512, [], "", "M432 256c0 17.7-14.3 32-32 32L48 288c-17.7 0-32-14.3-32-32s14.3-32 32-32l352 0c17.7 0 32 14.3 32 32z"],
|
|
12575
|
-
"more-horizontal": [448, 512, [], "", "M8 256a56 56 0 1 1 112 0A56 56 0 1 1 8 256zm160 0a56 56 0 1 1 112 0 56 56 0 1 1 -112 0zm216-56a56 56 0 1 1 0 112 56 56 0 1 1 0-112z"],
|
|
12576
|
-
"plus": [448, 512, [], "", "M256 80c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 144L48 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l144 0 0 144c0 17.7 14.3 32 32 32s32-14.3 32-32l0-144 144 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-144 0 0-144z"],
|
|
12577
|
-
"search": [512, 512, [], "", "M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z"],
|
|
12578
|
-
"sidebar": [512, 512, [], "", "M64 64h384a32 32 0 0 1 32 32v320a32 32 0 0 1-32 32H64a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32zm128 0v384", null, "fill=none stroke=currentColor stroke-width=50 stroke-linejoin=round stroke-linecap=round"],
|
|
12579
|
-
"shuffle": [512, 512, [], "", "M403.8 34.4c12-5 25.7-2.2 34.9 6.9l64 64c6 6 9.4 14.1 9.4 22.6s-3.4 16.6-9.4 22.6l-64 64c-9.2 9.2-22.9 11.9-34.9 6.9s-19.8-16.6-19.8-29.6l0-32-32 0c-10.1 0-19.6 4.7-25.6 12.8L284 229.3 244 176l31.2-41.6C293.3 110.2 321.8 96 352 96l32 0 0-32c0-12.9 7.8-24.6 19.8-29.6zM164 282.7L204 336l-31.2 41.6C154.7 401.8 126.2 416 96 416l-64 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l64 0c10.1 0 19.6-4.7 25.6-12.8L164 282.7zm274.6 188c-9.2 9.2-22.9 11.9-34.9 6.9s-19.8-16.6-19.8-29.6l0-32-32 0c-30.2 0-58.7-14.2-76.8-38.4L121.6 172.8c-6-8.1-15.5-12.8-25.6-12.8l-64 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l64 0c30.2 0 58.7 14.2 76.8 38.4L326.4 339.2c6 8.1 15.5 12.8 25.6 12.8l32 0 0-32c0-12.9 7.8-24.6 19.8-29.6s25.7-2.2 34.9 6.9l64 64c6 6 9.4 14.1 9.4 22.6s-3.4 16.6-9.4 22.6l-64 64z"],
|
|
12580
|
-
"credit-card": [576, 512, [], "", "M512 80c8.8 0 16 7.2 16 16l0 32L48 128l0-32c0-8.8 7.2-16 16-16l448 0zm16 144l0 192c0 8.8-7.2 16-16 16L64 432c-8.8 0-16-7.2-16-16l0-192 480 0zM64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l448 0c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64L64 32zm56 304c-13.3 0-24 10.7-24 24s10.7 24 24 24l48 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-48 0zm128 0c-13.3 0-24 10.7-24 24s10.7 24 24 24l112 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-112 0z"],
|
|
12581
|
-
"trash-can": [448, 512, [], "", "M170.5 51.6L151.5 80l145 0-19-28.4c-1.5-2.2-4-3.6-6.7-3.6l-93.7 0c-2.7 0-5.2 1.3-6.7 3.6zm147-26.6L354.2 80 368 80l48 0 8 0c13.3 0 24 10.7 24 24s-10.7 24-24 24l-8 0 0 304c0 44.2-35.8 80-80 80l-224 0c-44.2 0-80-35.8-80-80l0-304-8 0c-13.3 0-24-10.7-24-24S10.7 80 24 80l8 0 48 0 13.8 0 36.7-55.1C140.9 9.4 158.4 0 177.1 0l93.7 0c18.7 0 36.2 9.4 46.6 24.9zM80 128l0 304c0 17.7 14.3 32 32 32l224 0c17.7 0 32-14.3 32-32l0-304L80 128zm80 64l0 208c0 8.8-7.2 16-16 16s-16-7.2-16-16l0-208c0-8.8 7.2-16 16-16s16 7.2 16 16zm80 0l0 208c0 8.8-7.2 16-16 16s-16-7.2-16-16l0-208c0-8.8 7.2-16 16-16s16 7.2 16 16zm80 0l0 208c0 8.8-7.2 16-16 16s-16-7.2-16-16l0-208c0-8.8 7.2-16 16-16s16 7.2 16 16z"],
|
|
12582
|
-
"user": [448, 512, [], "", "M304 128a80 80 0 1 0 -160 0 80 80 0 1 0 160 0zM96 128a128 128 0 1 1 256 0A128 128 0 1 1 96 128zM49.3 464l349.5 0c-8.9-63.3-63.3-112-129-112l-91.4 0c-65.7 0-120.1 48.7-129 112zM0 482.3C0 383.8 79.8 304 178.3 304l91.4 0C368.2 304 448 383.8 448 482.3c0 16.4-13.3 29.7-29.7 29.7L29.7 512C13.3 512 0 498.7 0 482.3z"],
|
|
12583
|
-
"closed-captioning": [576, 512, ["cc"], "", "M512 80c8.8 0 16 7.2 16 16l0 320c0 8.8-7.2 16-16 16L64 432c-8.8 0-16-7.2-16-16L48 96c0-8.8 7.2-16 16-16l448 0zM64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l448 0c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64L64 32zM200 208c14.2 0 27 6.1 35.8 16c8.8 9.9 24 10.7 33.9 1.9s10.7-24 1.9-33.9c-17.5-19.6-43.1-32-71.5-32c-53 0-96 43-96 96s43 96 96 96c28.4 0 54-12.4 71.5-32c8.8-9.9 8-25-1.9-33.9s-25-8-33.9 1.9c-8.8 9.9-21.6 16-35.8 16c-26.5 0-48-21.5-48-48s21.5-48 48-48zm144 48c0-26.5 21.5-48 48-48c14.2 0 27 6.1 35.8 16c8.8 9.9 24 10.7 33.9 1.9s10.7-24 1.9-33.9c-17.5-19.6-43.1-32-71.5-32c-53 0-96 43-96 96s43 96 96 96c28.4 0 54-12.4 71.5-32c8.8-9.9 8-25-1.9-33.9s-25-8-33.9 1.9c-8.8 9.9-21.6 16-35.8 16c-26.5 0-48-21.5-48-48z"],
|
|
12584
|
-
"cc": "closed-captioning",
|
|
12585
|
-
"heart": [512, 512, [], "", "M225.8 468.2l-2.5-2.3L48.1 303.2C17.4 274.7 0 234.7 0 192.8l0-3.3c0-70.4 50-130.8 119.2-144C158.6 37.9 198.9 47 231 69.6c9 6.4 17.4 13.8 25 22.3c4.2-4.8 8.7-9.2 13.5-13.3c3.7-3.2 7.5-6.2 11.5-9c0 0 0 0 0 0C313.1 47 353.4 37.9 392.8 45.4C462 58.6 512 119.1 512 189.5l0 3.3c0 41.9-17.4 81.9-48.1 110.4L288.7 465.9l-2.5 2.3c-8.2 7.6-19 11.9-30.2 11.9s-22-4.2-30.2-11.9zM239.1 145c-.4-.3-.7-.7-1-1.1l-17.8-20-.1-.1s0 0 0 0c-23.1-25.9-58-37.7-92-31.2C81.6 101.5 48 142.1 48 189.5l0 3.3c0 28.5 11.9 55.8 32.8 75.2L256 430.7 431.2 268c20.9-19.4 32.8-46.7 32.8-75.2l0-3.3c0-47.3-33.6-88-80.1-96.9c-34-6.5-69 5.4-92 31.2c0 0 0 0-.1 .1s0 0-.1 .1l-17.8 20c-.3 .4-.7 .7-1 1.1c-4.5 4.5-10.6 7-16.9 7s-12.4-2.5-16.9-7z"],
|
|
12586
|
-
"x-mark": [384, 512, [], "", "M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z"],
|
|
12587
|
-
"star": [576, 512, [], "", "M287.9 0c9.2 0 17.6 5.2 21.6 13.5l68.6 141.3 153.2 22.6c9 1.3 16.5 7.6 19.3 16.3s.5 18.1-5.9 24.5L433.6 328.4l26.2 155.6c1.5 9-2.2 18.1-9.7 23.5s-17.3 6-25.3 1.7l-137-73.2L151 509.1c-8.1 4.3-17.9 3.7-25.3-1.7s-11.2-14.5-9.7-23.5l26.2-155.6L31.1 218.2c-6.5-6.4-8.7-15.9-5.9-24.5s10.3-14.9 19.3-16.3l153.2-22.6L266.3 13.5C270.4 5.2 278.7 0 287.9 0zm0 79L235.4 187.2c-3.5 7.1-10.2 12.1-18.1 13.3L99 217.9 184.9 303c5.5 5.5 8.1 13.3 6.8 21L171.4 443.7l105.2-56.2c7.1-3.8 15.6-3.8 22.6 0l105.2 56.2L384.2 324.1c-1.3-7.7 1.2-15.5 6.8-21l85.9-85.1L358.6 200.5c-7.8-1.2-14.6-6.1-18.1-13.3L287.9 79z"],
|
|
12588
|
-
"square-js": [448, 512, [], "", "M448 96c0-35.3-28.7-64-64-64H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96zM180.9 444.9c-33.7 0-53.2-17.4-63.2-38.5L152 385.7c6.6 11.7 12.6 21.6 27.1 21.6c13.8 0 22.6-5.4 22.6-26.5V237.7h42.1V381.4c0 43.6-25.6 63.5-62.9 63.5zm85.8-43L301 382.1c9 14.7 20.8 25.6 41.5 25.6c17.4 0 28.6-8.7 28.6-20.8c0-14.4-11.4-19.5-30.7-28l-10.5-4.5c-30.4-12.9-50.5-29.2-50.5-63.5c0-31.6 24.1-55.6 61.6-55.6c26.8 0 46 9.3 59.8 33.7L368 290c-7.2-12.9-15-18-27.1-18c-12.3 0-20.1 7.8-20.1 18c0 12.6 7.8 17.7 25.9 25.6l10.5 4.5c35.8 15.3 55.9 31 55.9 66.2c0 37.8-29.8 58.6-69.7 58.6c-39.1 0-64.4-18.6-76.7-43z"],
|
|
12589
|
-
"python": [448, 512, [], "", "M439.8 200.5c-7.7-30.9-22.3-54.2-53.4-54.2h-40.1v47.4c0 36.8-31.2 67.8-66.8 67.8H172.7c-29.2 0-53.4 25-53.4 54.3v101.8c0 29 25.2 46 53.4 54.3 33.8 9.9 66.3 11.7 106.8 0 26.9-7.8 53.4-23.5 53.4-54.3v-40.7H226.2v-13.6h160.2c31.1 0 42.6-21.7 53.4-54.2 11.2-33.5 10.7-65.7 0-108.6zM286.2 404c11.1 0 20.1 9.1 20.1 20.3 0 11.3-9 20.4-20.1 20.4-11 0-20.1-9.2-20.1-20.4.1-11.3 9.1-20.3 20.1-20.3zM167.8 248.1h106.8c29.7 0 53.4-24.5 53.4-54.3V91.9c0-29-24.4-50.7-53.4-55.6-35.8-5.9-74.7-5.6-106.8.1-45.2 8-53.4 24.7-53.4 55.6v40.7h106.9v13.6h-147c-31.1 0-58.3 18.7-66.8 54.2-9.8 40.7-10.2 66.1 0 108.6 7.6 31.6 25.7 54.2 56.8 54.2H101v-48.8c0-35.3 30.5-66.4 66.8-66.4zm-6.7-142.6c-11.1 0-20.1-9.1-20.1-20.3.1-11.3 9-20.4 20.1-20.4 11 0 20.1 9.2 20.1 20.4s-9 20.3-20.1 20.3z"],
|
|
12590
|
-
"microsoft": [448, 512, [], "", "M0 32h214.6v214.6H0V32zm233.4 0H448v214.6H233.4V32zM0 265.4h214.6V480H0V265.4zm233.4 0H448V480H233.4V265.4z"],
|
|
12591
|
-
"apple": [384, 512, [], "f179", "M318.7 268.7c-.2-36.7 16.4-64.4 50-84.8-18.8-26.9-47.2-41.7-84.7-44.6-35.5-2.8-74.3 20.7-88.5 20.7-15 0-49.4-19.7-76.4-19.7C63.3 141.2 4 184.8 4 273.5q0 39.3 14.4 81.2c12.8 36.7 59 126.7 107.2 125.2 25.2-.6 43-17.9 75.8-17.9 31.8 0 48.3 17.9 76.4 17.9 48.6-.7 90.4-82.5 102.6-119.3-65.2-30.7-61.7-90-61.7-91.9zm-56.6-164.2c27.3-32.4 24.8-61.9 24-72.5-24.1 1.4-52 16.4-67.9 34.9-17.5 19.8-27.8 44.3-25.6 71.9 26.1 2 49.9-11.4 69.5-34.3z"],
|
|
12592
|
-
}
|
|
12593
|
-
|
|
12594
12817
|
LX.UTILS = {
|
|
12595
12818
|
getTime() { return new Date().getTime() },
|
|
12596
12819
|
compareThreshold( v, p, n, t ) { return Math.abs(v - p) >= t || Math.abs(v - n) >= t },
|
|
@@ -12665,4 +12888,130 @@ LX.UTILS = {
|
|
|
12665
12888
|
}
|
|
12666
12889
|
};
|
|
12667
12890
|
|
|
12891
|
+
LX.ICONS = {
|
|
12892
|
+
"align-center": [448, 512, [], "solid", "M352 64c0-17.7-14.3-32-32-32L128 32c-17.7 0-32 14.3-32 32s14.3 32 32 32l192 0c17.7 0 32-14.3 32-32zm96 128c0-17.7-14.3-32-32-32L32 160c-17.7 0-32 14.3-32 32s14.3 32 32 32l384 0c17.7 0 32-14.3 32-32zM0 448c0 17.7 14.3 32 32 32l384 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L32 416c-17.7 0-32 14.3-32 32zM352 320c0-17.7-14.3-32-32-32l-192 0c-17.7 0-32 14.3-32 32s14.3 32 32 32l192 0c17.7 0 32-14.3 32-32z"],
|
|
12893
|
+
"align-justify": [448, 512, [], "solid", "M448 64c0-17.7-14.3-32-32-32L32 32C14.3 32 0 46.3 0 64S14.3 96 32 96l384 0c17.7 0 32-14.3 32-32zm0 256c0-17.7-14.3-32-32-32L32 288c-17.7 0-32 14.3-32 32s14.3 32 32 32l384 0c17.7 0 32-14.3 32-32zM0 192c0 17.7 14.3 32 32 32l384 0c17.7 0 32-14.3 32-32s-14.3-32-32-32L32 160c-17.7 0-32 14.3-32 32zM448 448c0-17.7-14.3-32-32-32L32 416c-17.7 0-32 14.3-32 32s14.3 32 32 32l384 0c17.7 0 32-14.3 32-32z"],
|
|
12894
|
+
"align-left": [448, 512, [], "solid", "M288 64c0 17.7-14.3 32-32 32L32 96C14.3 96 0 81.7 0 64S14.3 32 32 32l224 0c17.7 0 32 14.3 32 32zm0 256c0 17.7-14.3 32-32 32L32 352c-17.7 0-32-14.3-32-32s14.3-32 32-32l224 0c17.7 0 32 14.3 32 32zM0 192c0-17.7 14.3-32 32-32l384 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 224c-17.7 0-32-14.3-32-32zM448 448c0 17.7-14.3 32-32 32L32 480c-17.7 0-32-14.3-32-32s14.3-32 32-32l384 0c17.7 0 32 14.3 32 32z"],
|
|
12895
|
+
"align-right": [448, 512, [], "solid", "M448 64c0 17.7-14.3 32-32 32L192 96c-17.7 0-32-14.3-32-32s14.3-32 32-32l224 0c17.7 0 32 14.3 32 32zm0 256c0 17.7-14.3 32-32 32l-224 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l224 0c17.7 0 32 14.3 32 32zM0 192c0-17.7 14.3-32 32-32l384 0c17.7 0 32 14.3 32 32s-14.3 32-32 32L32 224c-17.7 0-32-14.3-32-32zM448 448c0 17.7-14.3 32-32 32L32 480c-17.7 0-32-14.3-32-32s14.3-32 32-32l384 0c17.7 0 32 14.3 32 32z"],
|
|
12896
|
+
"bell": [448, 512, [], "regular", "M224 0c-17.7 0-32 14.3-32 32l0 19.2C119 66 64 130.6 64 208l0 25.4c0 45.4-15.5 89.5-43.8 124.9L5.3 377c-5.8 7.2-6.9 17.1-2.9 25.4S14.8 416 24 416l400 0c9.2 0 17.6-5.3 21.6-13.6s2.9-18.2-2.9-25.4l-14.9-18.6C399.5 322.9 384 278.8 384 233.4l0-25.4c0-77.4-55-142-128-156.8L256 32c0-17.7-14.3-32-32-32zm0 96c61.9 0 112 50.1 112 112l0 25.4c0 47.9 13.9 94.6 39.7 134.6L72.3 368C98.1 328 112 281.3 112 233.4l0-25.4c0-61.9 50.1-112 112-112zm64 352l-64 0-64 0c0 17 6.7 33.3 18.7 45.3s28.3 18.7 45.3 18.7s33.3-6.7 45.3-18.7s18.7-28.3 18.7-45.3z"],
|
|
12897
|
+
"bell-slash": [640, 512, [], "regular", "M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7L542.6 400c2.7-7.8 1.3-16.5-3.9-23l-14.9-18.6C495.5 322.9 480 278.8 480 233.4l0-33.4c0-75.8-55.5-138.6-128-150.1L352 32c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 17.9c-43.9 7-81.5 32.7-104.4 68.7L38.8 5.1zM221.7 148.4C239.6 117.1 273.3 96 312 96l8 0 8 0c57.4 0 104 46.6 104 104l0 33.4c0 32.7 6.4 64.8 18.7 94.5L221.7 148.4zM406.2 416l-60.9-48-176.9 0c21.2-32.8 34.4-70.3 38.4-109.1L160 222.1l0 11.4c0 45.4-15.5 89.5-43.8 124.9L101.3 377c-5.8 7.2-6.9 17.1-2.9 25.4s12.4 13.6 21.6 13.6l286.2 0zM384 448l-64 0-64 0c0 17 6.7 33.3 18.7 45.3s28.3 18.7 45.3 18.7s33.3-6.7 45.3-18.7s18.7-28.3 18.7-45.3z"],
|
|
12898
|
+
"display": [576, 512, [], "solid", "M64 0C28.7 0 0 28.7 0 64L0 352c0 35.3 28.7 64 64 64l176 0-10.7 32L160 448c-17.7 0-32 14.3-32 32s14.3 32 32 32l256 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-69.3 0L336 416l176 0c35.3 0 64-28.7 64-64l0-288c0-35.3-28.7-64-64-64L64 0zM512 64l0 288L64 352 64 64l448 0z"],
|
|
12899
|
+
"fingerprint": [512, 512, [], "regular", "M48 256C48 141.1 141.1 48 256 48c63.1 0 119.6 28.1 157.8 72.5c8.6 10.1 23.8 11.2 33.8 2.6s11.2-23.8 2.6-33.8C403.3 34.6 333.7 0 256 0C114.6 0 0 114.6 0 256l0 40c0 13.3 10.7 24 24 24s24-10.7 24-24l0-40zm458.5-52.9c-2.7-13-15.5-21.3-28.4-18.5s-21.3 15.5-18.5 28.4c2.9 13.9 4.5 28.3 4.5 43.1l0 40c0 13.3 10.7 24 24 24s24-10.7 24-24l0-40c0-18.1-1.9-35.8-5.5-52.9zM256 80c-19 0-37.4 3-54.5 8.6c-15.2 5-18.7 23.7-8.3 35.9c7.1 8.3 18.8 10.8 29.4 7.9c10.6-2.9 21.8-4.4 33.4-4.4c70.7 0 128 57.3 128 128l0 24.9c0 25.2-1.5 50.3-4.4 75.3c-1.7 14.6 9.4 27.8 24.2 27.8c11.8 0 21.9-8.6 23.3-20.3c3.3-27.4 5-55 5-82.7l0-24.9c0-97.2-78.8-176-176-176zM150.7 148.7c-9.1-10.6-25.3-11.4-33.9-.4C93.7 178 80 215.4 80 256l0 24.9c0 24.2-2.6 48.4-7.8 71.9C68.8 368.4 80.1 384 96.1 384c10.5 0 19.9-7 22.2-17.3c6.4-28.1 9.7-56.8 9.7-85.8l0-24.9c0-27.2 8.5-52.4 22.9-73.1c7.2-10.4 8-24.6-.2-34.2zM256 160c-53 0-96 43-96 96l0 24.9c0 35.9-4.6 71.5-13.8 106.1c-3.8 14.3 6.7 29 21.5 29c9.5 0 17.9-6.2 20.4-15.4c10.5-39 15.9-79.2 15.9-119.7l0-24.9c0-28.7 23.3-52 52-52s52 23.3 52 52l0 24.9c0 36.3-3.5 72.4-10.4 107.9c-2.7 13.9 7.7 27.2 21.8 27.2c10.2 0 19-7 21-17c7.7-38.8 11.6-78.3 11.6-118.1l0-24.9c0-53-43-96-96-96zm24 96c0-13.3-10.7-24-24-24s-24 10.7-24 24l0 24.9c0 59.9-11 119.3-32.5 175.2l-5.9 15.3c-4.8 12.4 1.4 26.3 13.8 31s26.3-1.4 31-13.8l5.9-15.3C267.9 411.9 280 346.7 280 280.9l0-24.9z"],
|
|
12900
|
+
"mobile-screen": [384, 512, [], "solid", "M16 64C16 28.7 44.7 0 80 0L304 0c35.3 0 64 28.7 64 64l0 384c0 35.3-28.7 64-64 64L80 512c-35.3 0-64-28.7-64-64L16 64zM144 448c0 8.8 7.2 16 16 16l64 0c8.8 0 16-7.2 16-16s-7.2-16-16-16l-64 0c-8.8 0-16 7.2-16 16zM304 64L80 64l0 320 224 0 0-320z"],
|
|
12901
|
+
"vr-cardboard": [640, 512, ["vr"], "solid", "M576 64L64 64C28.7 64 0 92.7 0 128L0 384c0 35.3 28.7 64 64 64l120.4 0c24.2 0 46.4-13.7 57.2-35.4l32-64c8.8-17.5 26.7-28.6 46.3-28.6s37.5 11.1 46.3 28.6l32 64c10.8 21.7 33 35.4 57.2 35.4L576 448c35.3 0 64-28.7 64-64l0-256c0-35.3-28.7-64-64-64zM96 240a64 64 0 1 1 128 0A64 64 0 1 1 96 240zm384-64a64 64 0 1 1 0 128 64 64 0 1 1 0-128z"],
|
|
12902
|
+
"gamepad": [640, 512, [], "solid", "M192 64C86 64 0 150 0 256S86 448 192 448l256 0c106 0 192-86 192-192s-86-192-192-192L192 64zM496 168a40 40 0 1 1 0 80 40 40 0 1 1 0-80zM392 304a40 40 0 1 1 80 0 40 40 0 1 1 -80 0zM168 200c0-13.3 10.7-24 24-24s24 10.7 24 24l0 32 32 0c13.3 0 24 10.7 24 24s-10.7 24-24 24l-32 0 0 32c0 13.3-10.7 24-24 24s-24-10.7-24-24l0-32-32 0c-13.3 0-24-10.7-24-24s10.7-24 24-24l32 0 0-32z"],
|
|
12903
|
+
"keyboard": [576, 512, [], "regular", "M64 112c-8.8 0-16 7.2-16 16l0 256c0 8.8 7.2 16 16 16l448 0c8.8 0 16-7.2 16-16l0-256c0-8.8-7.2-16-16-16L64 112zM0 128C0 92.7 28.7 64 64 64l448 0c35.3 0 64 28.7 64 64l0 256c0 35.3-28.7 64-64 64L64 448c-35.3 0-64-28.7-64-64L0 128zM176 320l224 0c8.8 0 16 7.2 16 16l0 16c0 8.8-7.2 16-16 16l-224 0c-8.8 0-16-7.2-16-16l0-16c0-8.8 7.2-16 16-16zm-72-72c0-8.8 7.2-16 16-16l16 0c8.8 0 16 7.2 16 16l0 16c0 8.8-7.2 16-16 16l-16 0c-8.8 0-16-7.2-16-16l0-16zm16-96l16 0c8.8 0 16 7.2 16 16l0 16c0 8.8-7.2 16-16 16l-16 0c-8.8 0-16-7.2-16-16l0-16c0-8.8 7.2-16 16-16zm64 96c0-8.8 7.2-16 16-16l16 0c8.8 0 16 7.2 16 16l0 16c0 8.8-7.2 16-16 16l-16 0c-8.8 0-16-7.2-16-16l0-16zm16-96l16 0c8.8 0 16 7.2 16 16l0 16c0 8.8-7.2 16-16 16l-16 0c-8.8 0-16-7.2-16-16l0-16c0-8.8 7.2-16 16-16zm64 96c0-8.8 7.2-16 16-16l16 0c8.8 0 16 7.2 16 16l0 16c0 8.8-7.2 16-16 16l-16 0c-8.8 0-16-7.2-16-16l0-16zm16-96l16 0c8.8 0 16 7.2 16 16l0 16c0 8.8-7.2 16-16 16l-16 0c-8.8 0-16-7.2-16-16l0-16c0-8.8 7.2-16 16-16zm64 96c0-8.8 7.2-16 16-16l16 0c8.8 0 16 7.2 16 16l0 16c0 8.8-7.2 16-16 16l-16 0c-8.8 0-16-7.2-16-16l0-16zm16-96l16 0c8.8 0 16 7.2 16 16l0 16c0 8.8-7.2 16-16 16l-16 0c-8.8 0-16-7.2-16-16l0-16c0-8.8 7.2-16 16-16zm64 96c0-8.8 7.2-16 16-16l16 0c8.8 0 16 7.2 16 16l0 16c0 8.8-7.2 16-16 16l-16 0c-8.8 0-16-7.2-16-16l0-16zm16-96l16 0c8.8 0 16 7.2 16 16l0 16c0 8.8-7.2 16-16 16l-16 0c-8.8 0-16-7.2-16-16l0-16c0-8.8 7.2-16 16-16z"],
|
|
12904
|
+
"headset": [512, 512, [], "solid", "M256 48C141.1 48 48 141.1 48 256l0 40c0 13.3-10.7 24-24 24s-24-10.7-24-24l0-40C0 114.6 114.6 0 256 0S512 114.6 512 256l0 144.1c0 48.6-39.4 88-88.1 88L313.6 488c-8.3 14.3-23.8 24-41.6 24l-32 0c-26.5 0-48-21.5-48-48s21.5-48 48-48l32 0c17.8 0 33.3 9.7 41.6 24l110.4 .1c22.1 0 40-17.9 40-40L464 256c0-114.9-93.1-208-208-208zM144 208l16 0c17.7 0 32 14.3 32 32l0 112c0 17.7-14.3 32-32 32l-16 0c-35.3 0-64-28.7-64-64l0-48c0-35.3 28.7-64 64-64zm224 0c35.3 0 64 28.7 64 64l0 48c0 35.3-28.7 64-64 64l-16 0c-17.7 0-32-14.3-32-32l0-112c0-17.7 14.3-32 32-32l16 0z"],
|
|
12905
|
+
"camera": [512, 512, [], "solid", "M149.1 64.8L138.7 96 64 96C28.7 96 0 124.7 0 160L0 416c0 35.3 28.7 64 64 64l384 0c35.3 0 64-28.7 64-64l0-256c0-35.3-28.7-64-64-64l-74.7 0L362.9 64.8C356.4 45.2 338.1 32 317.4 32L194.6 32c-20.7 0-39 13.2-45.5 32.8zM256 192a96 96 0 1 1 0 192 96 96 0 1 1 0-192z"],
|
|
12906
|
+
"print": [512, 512, [], "solid", "M128 0C92.7 0 64 28.7 64 64l0 96 64 0 0-96 226.7 0L384 93.3l0 66.7 64 0 0-66.7c0-17-6.7-33.3-18.7-45.3L400 18.7C388 6.7 371.7 0 354.7 0L128 0zM384 352l0 32 0 64-256 0 0-64 0-16 0-16 256 0zm64 32l32 0c17.7 0 32-14.3 32-32l0-96c0-35.3-28.7-64-64-64L64 192c-35.3 0-64 28.7-64 64l0 96c0 17.7 14.3 32 32 32l32 0 0 64c0 35.3 28.7 64 64 64l256 0c35.3 0 64-28.7 64-64l0-64zM432 248a24 24 0 1 1 0 48 24 24 0 1 1 0-48z"],
|
|
12907
|
+
"bookmark": [384, 512, [], "regular", "M0 48C0 21.5 21.5 0 48 0l0 48 0 393.4 130.1-92.9c8.3-6 19.6-6 27.9 0L336 441.4 336 48 48 48 48 0 336 0c26.5 0 48 21.5 48 48l0 440c0 9-5 17.2-13 21.3s-17.6 3.4-24.9-1.8L192 397.5 37.9 507.5c-7.3 5.2-16.9 5.9-24.9 1.8S0 497 0 488L0 48z"],
|
|
12908
|
+
"calendar": [448, 512, [], "regular", "M152 24c0-13.3-10.7-24-24-24s-24 10.7-24 24l0 40L64 64C28.7 64 0 92.7 0 128l0 16 0 48L0 448c0 35.3 28.7 64 64 64l320 0c35.3 0 64-28.7 64-64l0-256 0-48 0-16c0-35.3-28.7-64-64-64l-40 0 0-40c0-13.3-10.7-24-24-24s-24 10.7-24 24l0 40L152 64l0-40zM48 192l352 0 0 256c0 8.8-7.2 16-16 16L64 464c-8.8 0-16-7.2-16-16l0-256z"],
|
|
12909
|
+
"chart": [448, 512, [], "solid", "M160 80c0-26.5 21.5-48 48-48l32 0c26.5 0 48 21.5 48 48l0 352c0 26.5-21.5 48-48 48l-32 0c-26.5 0-48-21.5-48-48l0-352zM0 272c0-26.5 21.5-48 48-48l32 0c26.5 0 48 21.5 48 48l0 160c0 26.5-21.5 48-48 48l-32 0c-26.5 0-48-21.5-48-48L0 272zM368 96l32 0c26.5 0 48 21.5 48 48l0 288c0 26.5-21.5 48-48 48l-32 0c-26.5 0-48-21.5-48-48l0-288c0-26.5 21.5-48 48-48z"],
|
|
12910
|
+
"check": [448, 512, [], "solid", "M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z"],
|
|
12911
|
+
"clone": [512, 512, [], "regular", "M64 464l224 0c8.8 0 16-7.2 16-16l0-64 48 0 0 64c0 35.3-28.7 64-64 64L64 512c-35.3 0-64-28.7-64-64L0 224c0-35.3 28.7-64 64-64l64 0 0 48-64 0c-8.8 0-16 7.2-16 16l0 224c0 8.8 7.2 16 16 16zM224 304l224 0c8.8 0 16-7.2 16-16l0-224c0-8.8-7.2-16-16-16L224 48c-8.8 0-16 7.2-16 16l0 224c0 8.8 7.2 16 16 16zm-64-16l0-224c0-35.3 28.7-64 64-64L448 0c35.3 0 64 28.7 64 64l0 224c0 35.3-28.7 64-64 64l-224 0c-35.3 0-64-28.7-64-64z"],
|
|
12912
|
+
"copy": [448, 512, [], "regular", "M384 336l-192 0c-8.8 0-16-7.2-16-16l0-256c0-8.8 7.2-16 16-16l140.1 0L400 115.9 400 320c0 8.8-7.2 16-16 16zM192 384l192 0c35.3 0 64-28.7 64-64l0-204.1c0-12.7-5.1-24.9-14.1-33.9L366.1 14.1c-9-9-21.2-14.1-33.9-14.1L192 0c-35.3 0-64 28.7-64 64l0 256c0 35.3 28.7 64 64 64zM64 128c-35.3 0-64 28.7-64 64L0 448c0 35.3 28.7 64 64 64l192 0c35.3 0 64-28.7 64-64l0-32-48 0 0 32c0 8.8-7.2 16-16 16L64 464c-8.8 0-16-7.2-16-16l0-256c0-8.8 7.2-16 16-16l32 0 0-48-32 0z"],
|
|
12913
|
+
"paste": [512, 512, [], "regular", "M104.6 48L64 48C28.7 48 0 76.7 0 112L0 384c0 35.3 28.7 64 64 64l96 0 0-48-96 0c-8.8 0-16-7.2-16-16l0-272c0-8.8 7.2-16 16-16l16 0c0 17.7 14.3 32 32 32l72.4 0C202 108.4 227.6 96 256 96l62 0c-7.1-27.6-32.2-48-62-48l-40.6 0C211.6 20.9 188.2 0 160 0s-51.6 20.9-55.4 48zM144 56a16 16 0 1 1 32 0 16 16 0 1 1 -32 0zM448 464l-192 0c-8.8 0-16-7.2-16-16l0-256c0-8.8 7.2-16 16-16l140.1 0L464 243.9 464 448c0 8.8-7.2 16-16 16zM256 512l192 0c35.3 0 64-28.7 64-64l0-204.1c0-12.7-5.1-24.9-14.1-33.9l-67.9-67.9c-9-9-21.2-14.1-33.9-14.1L256 128c-35.3 0-64 28.7-64 64l0 256c0 35.3 28.7 64 64 64z"],
|
|
12914
|
+
"edit": [512, 512, [], "regular", "M441 58.9L453.1 71c9.4 9.4 9.4 24.6 0 33.9L424 134.1 377.9 88 407 58.9c9.4-9.4 24.6-9.4 33.9 0zM209.8 256.2L344 121.9 390.1 168 255.8 302.2c-2.9 2.9-6.5 5-10.4 6.1l-58.5 16.7 16.7-58.5c1.1-3.9 3.2-7.5 6.1-10.4zM373.1 25L175.8 222.2c-8.7 8.7-15 19.4-18.3 31.1l-28.6 100c-2.4 8.4-.1 17.4 6.1 23.6s15.2 8.5 23.6 6.1l100-28.6c11.8-3.4 22.5-9.7 31.1-18.3L487 138.9c28.1-28.1 28.1-73.7 0-101.8L474.9 25C446.8-3.1 401.2-3.1 373.1 25zM88 64C39.4 64 0 103.4 0 152L0 424c0 48.6 39.4 88 88 88l272 0c48.6 0 88-39.4 88-88l0-112c0-13.3-10.7-24-24-24s-24 10.7-24 24l0 112c0 22.1-17.9 40-40 40L88 464c-22.1 0-40-17.9-40-40l0-272c0-22.1 17.9-40 40-40l112 0c13.3 0 24-10.7 24-24s-10.7-24-24-24L88 64z"],
|
|
12915
|
+
"envelope": [512, 512, [], "regular", "M64 112c-8.8 0-16 7.2-16 16l0 22.1L220.5 291.7c20.7 17 50.4 17 71.1 0L464 150.1l0-22.1c0-8.8-7.2-16-16-16L64 112zM48 212.2L48 384c0 8.8 7.2 16 16 16l384 0c8.8 0 16-7.2 16-16l0-171.8L322 328.8c-38.4 31.5-93.7 31.5-132 0L48 212.2zM0 128C0 92.7 28.7 64 64 64l384 0c35.3 0 64 28.7 64 64l0 256c0 35.3-28.7 64-64 64L64 448c-35.3 0-64-28.7-64-64L0 128z"],
|
|
12916
|
+
"envelope-open": [512, 512, [], "regular", "M255.4 48.2c.2-.1 .4-.2 .6-.2s.4 .1 .6 .2L460.6 194c2.1 1.5 3.4 3.9 3.4 6.5l0 13.6L291.5 355.7c-20.7 17-50.4 17-71.1 0L48 214.1l0-13.6c0-2.6 1.2-5 3.4-6.5L255.4 48.2zM48 276.2L190 392.8c38.4 31.5 93.7 31.5 132 0L464 276.2 464 456c0 4.4-3.6 8-8 8L56 464c-4.4 0-8-3.6-8-8l0-179.8zM256 0c-10.2 0-20.2 3.2-28.5 9.1L23.5 154.9C8.7 165.4 0 182.4 0 200.5L0 456c0 30.9 25.1 56 56 56l400 0c30.9 0 56-25.1 56-56l0-255.5c0-18.1-8.7-35.1-23.4-45.6L284.5 9.1C276.2 3.2 266.2 0 256 0z"],
|
|
12917
|
+
"map": [576, 512, [], "regular", "M565.6 36.2C572.1 40.7 576 48.1 576 56l0 336c0 10-6.2 18.9-15.5 22.4l-168 64c-5.2 2-10.9 2.1-16.1 .3L192.5 417.5l-160 61c-7.4 2.8-15.7 1.8-22.2-2.7S0 463.9 0 456L0 120c0-10 6.1-18.9 15.5-22.4l168-64c5.2-2 10.9-2.1 16.1-.3L383.5 94.5l160-61c7.4-2.8 15.7-1.8 22.2 2.7zM48 136.5l0 284.6 120-45.7 0-284.6L48 136.5zM360 422.7l0-285.4-144-48 0 285.4 144 48zm48-1.5l120-45.7 0-284.6L408 136.5l0 284.6z"],
|
|
12918
|
+
"note-sticky": [448, 512, ["sticky-note"], "regular", "M64 80c-8.8 0-16 7.2-16 16l0 320c0 8.8 7.2 16 16 16l224 0 0-80c0-17.7 14.3-32 32-32l80 0 0-224c0-8.8-7.2-16-16-16L64 80zM288 480L64 480c-35.3 0-64-28.7-64-64L0 96C0 60.7 28.7 32 64 32l320 0c35.3 0 64 28.7 64 64l0 224 0 5.5c0 17-6.7 33.3-18.7 45.3l-90.5 90.5c-12 12-28.3 18.7-45.3 18.7l-5.5 0z"],
|
|
12919
|
+
"file": [384, 512, [], "regular", "M320 464c8.8 0 16-7.2 16-16l0-288-80 0c-17.7 0-32-14.3-32-32l0-80L64 48c-8.8 0-16 7.2-16 16l0 384c0 8.8 7.2 16 16 16l256 0zM0 64C0 28.7 28.7 0 64 0L229.5 0c17 0 33.3 6.7 45.3 18.7l90.5 90.5c12 12 18.7 28.3 18.7 45.3L384 448c0 35.3-28.7 64-64 64L64 512c-35.3 0-64-28.7-64-64L0 64z"],
|
|
12920
|
+
"file-video": [384, 512, [], "regular", "M320 464c8.8 0 16-7.2 16-16l0-288-80 0c-17.7 0-32-14.3-32-32l0-80L64 48c-8.8 0-16 7.2-16 16l0 384c0 8.8 7.2 16 16 16l256 0zM0 64C0 28.7 28.7 0 64 0L229.5 0c17 0 33.3 6.7 45.3 18.7l90.5 90.5c12 12 18.7 28.3 18.7 45.3L384 448c0 35.3-28.7 64-64 64L64 512c-35.3 0-64-28.7-64-64L0 64zM80 288c0-17.7 14.3-32 32-32l96 0c17.7 0 32 14.3 32 32l0 16 44.9-29.9c2-1.3 4.4-2.1 6.8-2.1c6.8 0 12.3 5.5 12.3 12.3l0 103.4c0 6.8-5.5 12.3-12.3 12.3c-2.4 0-4.8-.7-6.8-2.1L240 368l0 16c0 17.7-14.3 32-32 32l-96 0c-17.7 0-32-14.3-32-32l0-96z"],
|
|
12921
|
+
"file-code": [384, 512, [], "regular", "M64 464c-8.8 0-16-7.2-16-16L48 64c0-8.8 7.2-16 16-16l160 0 0 80c0 17.7 14.3 32 32 32l80 0 0 288c0 8.8-7.2 16-16 16L64 464zM64 0C28.7 0 0 28.7 0 64L0 448c0 35.3 28.7 64 64 64l256 0c35.3 0 64-28.7 64-64l0-293.5c0-17-6.7-33.3-18.7-45.3L274.7 18.7C262.7 6.7 246.5 0 229.5 0L64 0zm97 289c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0L79 303c-9.4 9.4-9.4 24.6 0 33.9l48 48c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9l-31-31 31-31zM257 255c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l31 31-31 31c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l48-48c9.4-9.4 9.4-24.6 0-33.9l-48-48z"],
|
|
12922
|
+
"file-zip": [384, 512, [], "regular", "M64 464c-8.8 0-16-7.2-16-16L48 64c0-8.8 7.2-16 16-16l48 0c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16l48 0 0 80c0 17.7 14.3 32 32 32l80 0 0 288c0 8.8-7.2 16-16 16L64 464zM64 0C28.7 0 0 28.7 0 64L0 448c0 35.3 28.7 64 64 64l256 0c35.3 0 64-28.7 64-64l0-293.5c0-17-6.7-33.3-18.7-45.3L274.7 18.7C262.7 6.7 246.5 0 229.5 0L64 0zm48 112c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16s-7.2-16-16-16l-32 0c-8.8 0-16 7.2-16 16zm0 64c0 8.8 7.2 16 16 16l32 0c8.8 0 16-7.2 16-16s-7.2-16-16-16l-32 0c-8.8 0-16 7.2-16 16zm-6.3 71.8L82.1 335.9c-1.4 5.4-2.1 10.9-2.1 16.4c0 35.2 28.8 63.7 64 63.7s64-28.5 64-63.7c0-5.5-.7-11.1-2.1-16.4l-23.5-88.2c-3.7-14-16.4-23.8-30.9-23.8l-14.8 0c-14.5 0-27.2 9.7-30.9 23.8zM128 336l32 0c8.8 0 16 7.2 16 16s-7.2 16-16 16l-32 0c-8.8 0-16-7.2-16-16s7.2-16 16-16z"],
|
|
12923
|
+
"file-pdf": [512, 512, [], "regular", "M64 464l48 0 0 48-48 0c-35.3 0-64-28.7-64-64L0 64C0 28.7 28.7 0 64 0L229.5 0c17 0 33.3 6.7 45.3 18.7l90.5 90.5c12 12 18.7 28.3 18.7 45.3L384 304l-48 0 0-144-80 0c-17.7 0-32-14.3-32-32l0-80L64 48c-8.8 0-16 7.2-16 16l0 384c0 8.8 7.2 16 16 16zM176 352l32 0c30.9 0 56 25.1 56 56s-25.1 56-56 56l-16 0 0 32c0 8.8-7.2 16-16 16s-16-7.2-16-16l0-48 0-80c0-8.8 7.2-16 16-16zm32 80c13.3 0 24-10.7 24-24s-10.7-24-24-24l-16 0 0 48 16 0zm96-80l32 0c26.5 0 48 21.5 48 48l0 64c0 26.5-21.5 48-48 48l-32 0c-8.8 0-16-7.2-16-16l0-128c0-8.8 7.2-16 16-16zm32 128c8.8 0 16-7.2 16-16l0-64c0-8.8-7.2-16-16-16l-16 0 0 96 16 0zm80-112c0-8.8 7.2-16 16-16l48 0c8.8 0 16 7.2 16 16s-7.2 16-16 16l-32 0 0 32 32 0c8.8 0 16 7.2 16 16s-7.2 16-16 16l-32 0 0 48c0 8.8-7.2 16-16 16s-16-7.2-16-16l0-64 0-64z"],
|
|
12924
|
+
"scroll": [576, 512, ["script"], "solid", "M0 80l0 48c0 17.7 14.3 32 32 32l16 0 48 0 0-80c0-26.5-21.5-48-48-48S0 53.5 0 80zM112 32c10 13.4 16 30 16 48l0 304c0 35.3 28.7 64 64 64s64-28.7 64-64l0-5.3c0-32.4 26.3-58.7 58.7-58.7L480 320l0-192c0-53-43-96-96-96L112 32zM464 480c61.9 0 112-50.1 112-112c0-8.8-7.2-16-16-16l-245.3 0c-14.7 0-26.7 11.9-26.7 26.7l0 5.3c0 53-43 96-96 96l176 0 96 0z"],
|
|
12925
|
+
"floppy-disk": [448, 512, ["save"], "regular", "M48 96l0 320c0 8.8 7.2 16 16 16l320 0c8.8 0 16-7.2 16-16l0-245.5c0-4.2-1.7-8.3-4.7-11.3l33.9-33.9c12 12 18.7 28.3 18.7 45.3L448 416c0 35.3-28.7 64-64 64L64 480c-35.3 0-64-28.7-64-64L0 96C0 60.7 28.7 32 64 32l245.5 0c17 0 33.3 6.7 45.3 18.7l74.5 74.5-33.9 33.9L320.8 84.7c-.3-.3-.5-.5-.8-.8L320 184c0 13.3-10.7 24-24 24l-192 0c-13.3 0-24-10.7-24-24L80 80 64 80c-8.8 0-16 7.2-16 16zm80-16l0 80 144 0 0-80L128 80zm32 240a64 64 0 1 1 128 0 64 64 0 1 1 -128 0z"],
|
|
12926
|
+
"download": [512, 512, [], "solid", "M288 32c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 242.7-73.4-73.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l128 128c12.5 12.5 32.8 12.5 45.3 0l128-128c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L288 274.7 288 32zM64 352c-35.3 0-64 28.7-64 64l0 32c0 35.3 28.7 64 64 64l384 0c35.3 0 64-28.7 64-64l0-32c0-35.3-28.7-64-64-64l-101.5 0-45.3 45.3c-25 25-65.5 25-90.5 0L165.5 352 64 352zm368 56a24 24 0 1 1 0 48 24 24 0 1 1 0-48z"],
|
|
12927
|
+
"upload": [512, 512, [], "solid", "M288 109.3L288 352c0 17.7-14.3 32-32 32s-32-14.3-32-32l0-242.7-73.4 73.4c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l128-128c12.5-12.5 32.8-12.5 45.3 0l128 128c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L288 109.3zM64 352l128 0c0 35.3 28.7 64 64 64s64-28.7 64-64l128 0c35.3 0 64 28.7 64 64l0 32c0 35.3-28.7 64-64 64L64 512c-35.3 0-64-28.7-64-64l0-32c0-35.3 28.7-64 64-64zM432 456a24 24 0 1 0 0-48 24 24 0 1 0 0 48z"],
|
|
12928
|
+
"gear": [512, 512, [], "solid", "M495.9 166.6c3.2 8.7 .5 18.4-6.4 24.6l-43.3 39.4c1.1 8.3 1.7 16.8 1.7 25.4s-.6 17.1-1.7 25.4l43.3 39.4c6.9 6.2 9.6 15.9 6.4 24.6c-4.4 11.9-9.7 23.3-15.8 34.3l-4.7 8.1c-6.6 11-14 21.4-22.1 31.2c-5.9 7.2-15.7 9.6-24.5 6.8l-55.7-17.7c-13.4 10.3-28.2 18.9-44 25.4l-12.5 57.1c-2 9.1-9 16.3-18.2 17.8c-13.8 2.3-28 3.5-42.5 3.5s-28.7-1.2-42.5-3.5c-9.2-1.5-16.2-8.7-18.2-17.8l-12.5-57.1c-15.8-6.5-30.6-15.1-44-25.4L83.1 425.9c-8.8 2.8-18.6 .3-24.5-6.8c-8.1-9.8-15.5-20.2-22.1-31.2l-4.7-8.1c-6.1-11-11.4-22.4-15.8-34.3c-3.2-8.7-.5-18.4 6.4-24.6l43.3-39.4C64.6 273.1 64 264.6 64 256s.6-17.1 1.7-25.4L22.4 191.2c-6.9-6.2-9.6-15.9-6.4-24.6c4.4-11.9 9.7-23.3 15.8-34.3l4.7-8.1c6.6-11 14-21.4 22.1-31.2c5.9-7.2 15.7-9.6 24.5-6.8l55.7 17.7c13.4-10.3 28.2-18.9 44-25.4l12.5-57.1c2-9.1 9-16.3 18.2-17.8C227.3 1.2 241.5 0 256 0s28.7 1.2 42.5 3.5c9.2 1.5 16.2 8.7 18.2 17.8l12.5 57.1c15.8 6.5 30.6 15.1 44 25.4l55.7-17.7c8.8-2.8 18.6-.3 24.5 6.8c8.1 9.8 15.5 20.2 22.1 31.2l4.7 8.1c6.1 11 11.4 22.4 15.8 34.3zM256 336a80 80 0 1 0 0-160 80 80 0 1 0 0 160z"],
|
|
12929
|
+
"gears": [640, 512, [], "solid", "M308.5 135.3c7.1-6.3 9.9-16.2 6.2-25c-2.3-5.3-4.8-10.5-7.6-15.5L304 89.4c-3-5-6.3-9.9-9.8-14.6c-5.7-7.6-15.7-10.1-24.7-7.1l-28.2 9.3c-10.7-8.8-23-16-36.2-20.9L199 27.1c-1.9-9.3-9.1-16.7-18.5-17.8C173.9 8.4 167.2 8 160.4 8l-.7 0c-6.8 0-13.5 .4-20.1 1.2c-9.4 1.1-16.6 8.6-18.5 17.8L115 56.1c-13.3 5-25.5 12.1-36.2 20.9L50.5 67.8c-9-3-19-.5-24.7 7.1c-3.5 4.7-6.8 9.6-9.9 14.6l-3 5.3c-2.8 5-5.3 10.2-7.6 15.6c-3.7 8.7-.9 18.6 6.2 25l22.2 19.8C32.6 161.9 32 168.9 32 176s.6 14.1 1.7 20.9L11.5 216.7c-7.1 6.3-9.9 16.2-6.2 25c2.3 5.3 4.8 10.5 7.6 15.6l3 5.2c3 5.1 6.3 9.9 9.9 14.6c5.7 7.6 15.7 10.1 24.7 7.1l28.2-9.3c10.7 8.8 23 16 36.2 20.9l6.1 29.1c1.9 9.3 9.1 16.7 18.5 17.8c6.7 .8 13.5 1.2 20.4 1.2s13.7-.4 20.4-1.2c9.4-1.1 16.6-8.6 18.5-17.8l6.1-29.1c13.3-5 25.5-12.1 36.2-20.9l28.2 9.3c9 3 19 .5 24.7-7.1c3.5-4.7 6.8-9.5 9.8-14.6l3.1-5.4c2.8-5 5.3-10.2 7.6-15.5c3.7-8.7 .9-18.6-6.2-25l-22.2-19.8c1.1-6.8 1.7-13.8 1.7-20.9s-.6-14.1-1.7-20.9l22.2-19.8zM112 176a48 48 0 1 1 96 0 48 48 0 1 1 -96 0zM504.7 500.5c6.3 7.1 16.2 9.9 25 6.2c5.3-2.3 10.5-4.8 15.5-7.6l5.4-3.1c5-3 9.9-6.3 14.6-9.8c7.6-5.7 10.1-15.7 7.1-24.7l-9.3-28.2c8.8-10.7 16-23 20.9-36.2l29.1-6.1c9.3-1.9 16.7-9.1 17.8-18.5c.8-6.7 1.2-13.5 1.2-20.4s-.4-13.7-1.2-20.4c-1.1-9.4-8.6-16.6-17.8-18.5L583.9 307c-5-13.3-12.1-25.5-20.9-36.2l9.3-28.2c3-9 .5-19-7.1-24.7c-4.7-3.5-9.6-6.8-14.6-9.9l-5.3-3c-5-2.8-10.2-5.3-15.6-7.6c-8.7-3.7-18.6-.9-25 6.2l-19.8 22.2c-6.8-1.1-13.8-1.7-20.9-1.7s-14.1 .6-20.9 1.7l-19.8-22.2c-6.3-7.1-16.2-9.9-25-6.2c-5.3 2.3-10.5 4.8-15.6 7.6l-5.2 3c-5.1 3-9.9 6.3-14.6 9.9c-7.6 5.7-10.1 15.7-7.1 24.7l9.3 28.2c-8.8 10.7-16 23-20.9 36.2L315.1 313c-9.3 1.9-16.7 9.1-17.8 18.5c-.8 6.7-1.2 13.5-1.2 20.4s.4 13.7 1.2 20.4c1.1 9.4 8.6 16.6 17.8 18.5l29.1 6.1c5 13.3 12.1 25.5 20.9 36.2l-9.3 28.2c-3 9-.5 19 7.1 24.7c4.7 3.5 9.5 6.8 14.6 9.8l5.4 3.1c5 2.8 10.2 5.3 15.5 7.6c8.7 3.7 18.6 .9 25-6.2l19.8-22.2c6.8 1.1 13.8 1.7 20.9 1.7s14.1-.6 20.9-1.7l19.8 22.2zM464 304a48 48 0 1 1 0 96 48 48 0 1 1 0-96z"],
|
|
12930
|
+
"sliders": [512, 512, [], "solid", "M0 416c0 17.7 14.3 32 32 32l54.7 0c12.3 28.3 40.5 48 73.3 48s61-19.7 73.3-48L480 448c17.7 0 32-14.3 32-32s-14.3-32-32-32l-246.7 0c-12.3-28.3-40.5-48-73.3-48s-61 19.7-73.3 48L32 384c-17.7 0-32 14.3-32 32zm128 0a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zM320 256a32 32 0 1 1 64 0 32 32 0 1 1 -64 0zm32-80c-32.8 0-61 19.7-73.3 48L32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l246.7 0c12.3 28.3 40.5 48 73.3 48s61-19.7 73.3-48l54.7 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-54.7 0c-12.3-28.3-40.5-48-73.3-48zM192 128a32 32 0 1 1 0-64 32 32 0 1 1 0 64zm73.3-64C253 35.7 224.8 16 192 16s-61 19.7-73.3 48L32 64C14.3 64 0 78.3 0 96s14.3 32 32 32l86.7 0c12.3 28.3 40.5 48 73.3 48s61-19.7 73.3-48L480 128c17.7 0 32-14.3 32-32s-14.3-32-32-32L265.3 64z"],
|
|
12931
|
+
"eye": [576, 512, [], "regular", "M288 80c-65.2 0-118.8 29.6-159.9 67.7C89.6 183.5 63 226 49.4 256c13.6 30 40.2 72.5 78.6 108.3C169.2 402.4 222.8 432 288 432s118.8-29.6 159.9-67.7C486.4 328.5 513 286 526.6 256c-13.6-30-40.2-72.5-78.6-108.3C406.8 109.6 353.2 80 288 80zM95.4 112.6C142.5 68.8 207.2 32 288 32s145.5 36.8 192.6 80.6c46.8 43.5 78.1 95.4 93 131.1c3.3 7.9 3.3 16.7 0 24.6c-14.9 35.7-46.2 87.7-93 131.1C433.5 443.2 368.8 480 288 480s-145.5-36.8-192.6-80.6C48.6 356 17.3 304 2.5 268.3c-3.3-7.9-3.3-16.7 0-24.6C17.3 208 48.6 156 95.4 112.6zM288 336c44.2 0 80-35.8 80-80s-35.8-80-80-80c-.7 0-1.3 0-2 0c1.3 5.1 2 10.5 2 16c0 35.3-28.7 64-64 64c-5.5 0-10.9-.7-16-2c0 .7 0 1.3 0 2c0 44.2 35.8 80 80 80zm0-208a128 128 0 1 1 0 256 128 128 0 1 1 0-256z"],
|
|
12932
|
+
"eye-slash": [640, 512, [], "regular", "M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7L525.6 386.7c39.6-40.6 66.4-86.1 79.9-118.4c3.3-7.9 3.3-16.7 0-24.6c-14.9-35.7-46.2-87.7-93-131.1C465.5 68.8 400.8 32 320 32c-68.2 0-125 26.3-169.3 60.8L38.8 5.1zm151 118.3C226 97.7 269.5 80 320 80c65.2 0 118.8 29.6 159.9 67.7C518.4 183.5 545 226 558.6 256c-12.6 28-36.6 66.8-70.9 100.9l-53.8-42.2c9.1-17.6 14.2-37.5 14.2-58.7c0-70.7-57.3-128-128-128c-32.2 0-61.7 11.9-84.2 31.5l-46.1-36.1zM394.9 284.2l-81.5-63.9c4.2-8.5 6.6-18.2 6.6-28.3c0-5.5-.7-10.9-2-16c.7 0 1.3 0 2 0c44.2 0 80 35.8 80 80c0 9.9-1.8 19.4-5.1 28.2zm9.4 130.3C378.8 425.4 350.7 432 320 432c-65.2 0-118.8-29.6-159.9-67.7C121.6 328.5 95 286 81.4 256c8.3-18.4 21.5-41.5 39.4-64.8L83.1 161.5C60.3 191.2 44 220.8 34.5 243.7c-3.3 7.9-3.3 16.7 0 24.6c14.9 35.7 46.2 87.7 93 131.1C174.5 443.2 239.2 480 320 480c47.8 0 89.9-12.9 126.2-32.5l-41.9-33zM192 256c0 70.7 57.3 128 128 128c13.3 0 26.1-2 38.2-5.8L302 334c-23.5-5.4-43.1-21.2-53.7-42.3l-56.1-44.2c-.2 2.8-.3 5.6-.3 8.5z"],
|
|
12933
|
+
"comment": [512, 512, [], "regular", "M123.6 391.3c12.9-9.4 29.6-11.8 44.6-6.4c26.5 9.6 56.2 15.1 87.8 15.1c124.7 0 208-80.5 208-160s-83.3-160-208-160S48 160.5 48 240c0 32 12.4 62.8 35.7 89.2c8.6 9.7 12.8 22.5 11.8 35.5c-1.4 18.1-5.7 34.7-11.3 49.4c17-7.9 31.1-16.7 39.4-22.7zM21.2 431.9c1.8-2.7 3.5-5.4 5.1-8.1c10-16.6 19.5-38.4 21.4-62.9C17.7 326.8 0 285.1 0 240C0 125.1 114.6 32 256 32s256 93.1 256 208s-114.6 208-256 208c-37.1 0-72.3-6.4-104.1-17.9c-11.9 8.7-31.3 20.6-54.3 30.6c-15.1 6.6-32.3 12.6-50.1 16.1c-.8 .2-1.6 .3-2.4 .5c-4.4 .8-8.7 1.5-13.2 1.9c-.2 0-.5 .1-.7 .1c-5.1 .5-10.2 .8-15.3 .8c-6.5 0-12.3-3.9-14.8-9.9c-2.5-6-1.1-12.8 3.4-17.4c4.1-4.2 7.8-8.7 11.3-13.5c1.7-2.3 3.3-4.6 4.8-6.9l.3-.5z"],
|
|
12934
|
+
"message": [512, 512, [], "regular", "M160 368c26.5 0 48 21.5 48 48l0 16 72.5-54.4c8.3-6.2 18.4-9.6 28.8-9.6L448 368c8.8 0 16-7.2 16-16l0-288c0-8.8-7.2-16-16-16L64 48c-8.8 0-16 7.2-16 16l0 288c0 8.8 7.2 16 16 16l96 0zm48 124l-.2 .2-5.1 3.8-17.1 12.8c-4.8 3.6-11.3 4.2-16.8 1.5s-8.8-8.2-8.8-14.3l0-21.3 0-6.4 0-.3 0-4 0-48-48 0-48 0c-35.3 0-64-28.7-64-64L0 64C0 28.7 28.7 0 64 0L448 0c35.3 0 64 28.7 64 64l0 288c0 35.3-28.7 64-64 64l-138.7 0L208 492z"],
|
|
12935
|
+
"folder": [512, 512, [], "regular", "M0 96C0 60.7 28.7 32 64 32l132.1 0c19.1 0 37.4 7.6 50.9 21.1L289.9 96 448 96c35.3 0 64 28.7 64 64l0 256c0 35.3-28.7 64-64 64L64 480c-35.3 0-64-28.7-64-64L0 96zM64 80c-8.8 0-16 7.2-16 16l0 320c0 8.8 7.2 16 16 16l384 0c8.8 0 16-7.2 16-16l0-256c0-8.8-7.2-16-16-16l-161.4 0c-10.6 0-20.8-4.2-28.3-11.7L213.1 87c-4.5-4.5-10.6-7-17-7L64 80z"],
|
|
12936
|
+
"folder-closed": [512, 512, [], "regular", "M251.7 127.6s0 0 0 0c10.5 10.5 24.7 16.4 39.6 16.4L448 144c8.8 0 16 7.2 16 16l0 32L48 192l0-96c0-8.8 7.2-16 16-16l133.5 0c4.2 0 8.3 1.7 11.3 4.7l33.9-33.9L208.8 84.7l42.9 42.9zM48 240l416 0 0 176c0 8.8-7.2 16-16 16L64 432c-8.8 0-16-7.2-16-16l0-176zM285.7 93.7L242.7 50.7c-12-12-28.3-18.7-45.3-18.7L64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l384 0c35.3 0 64-28.7 64-64l0-256c0-35.3-28.7-64-64-64L291.3 96c-2.1 0-4.2-.8-5.7-2.3z"],
|
|
12937
|
+
"folder-open": [576, 512, [], "regular", "M384 480l48 0c11.4 0 21.9-6 27.6-15.9l112-192c5.8-9.9 5.8-22.1 .1-32.1S555.5 224 544 224l-400 0c-11.4 0-21.9 6-27.6 15.9L48 357.1 48 96c0-8.8 7.2-16 16-16l117.5 0c4.2 0 8.3 1.7 11.3 4.7l26.5 26.5c21 21 49.5 32.8 79.2 32.8L416 144c8.8 0 16 7.2 16 16l0 32 48 0 0-32c0-35.3-28.7-64-64-64L298.5 96c-17 0-33.3-6.7-45.3-18.7L226.7 50.7c-12-12-28.3-18.7-45.3-18.7L64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l23.7 0L384 480z"],
|
|
12938
|
+
"grip-vertical": [320, 512, [], "solid", "M40 352l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40zm192 0l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40zM40 320c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0zM232 192l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40zM40 160c-22.1 0-40-17.9-40-40L0 72C0 49.9 17.9 32 40 32l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0zM232 32l48 0c22.1 0 40 17.9 40 40l0 48c0 22.1-17.9 40-40 40l-48 0c-22.1 0-40-17.9-40-40l0-48c0-22.1 17.9-40 40-40z"],
|
|
12939
|
+
"image": [512, 512, [], "regular", "M448 80c8.8 0 16 7.2 16 16l0 319.8-5-6.5-136-176c-4.5-5.9-11.6-9.3-19-9.3s-14.4 3.4-19 9.3L202 340.7l-30.5-42.7C167 291.7 159.8 288 152 288s-15 3.7-19.5 10.1l-80 112L48 416.3l0-.3L48 96c0-8.8 7.2-16 16-16l384 0zM64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l384 0c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64L64 32zm80 192a48 48 0 1 0 0-96 48 48 0 1 0 0 96z"],
|
|
12940
|
+
"images": [576, 512, [], "regular", "M160 80l352 0c8.8 0 16 7.2 16 16l0 224c0 8.8-7.2 16-16 16l-21.2 0L388.1 178.9c-4.4-6.8-12-10.9-20.1-10.9s-15.7 4.1-20.1 10.9l-52.2 79.8-12.4-16.9c-4.5-6.2-11.7-9.8-19.4-9.8s-14.8 3.6-19.4 9.8L175.6 336 160 336c-8.8 0-16-7.2-16-16l0-224c0-8.8 7.2-16 16-16zM96 96l0 224c0 35.3 28.7 64 64 64l352 0c35.3 0 64-28.7 64-64l0-224c0-35.3-28.7-64-64-64L160 32c-35.3 0-64 28.7-64 64zM48 120c0-13.3-10.7-24-24-24S0 106.7 0 120L0 344c0 75.1 60.9 136 136 136l320 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-320 0c-48.6 0-88-39.4-88-88l0-224zm208 24a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z"],
|
|
12941
|
+
"photo-film": [640, 512, ["media"], "solid", "M256 0L576 0c35.3 0 64 28.7 64 64l0 224c0 35.3-28.7 64-64 64l-320 0c-35.3 0-64-28.7-64-64l0-224c0-35.3 28.7-64 64-64zM476 106.7C471.5 100 464 96 456 96s-15.5 4-20 10.7l-56 84L362.7 169c-4.6-5.7-11.5-9-18.7-9s-14.2 3.3-18.7 9l-64 80c-5.8 7.2-6.9 17.1-2.9 25.4s12.4 13.6 21.6 13.6l80 0 48 0 144 0c8.9 0 17-4.9 21.2-12.7s3.7-17.3-1.2-24.6l-96-144zM336 96a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM64 128l96 0 0 256 0 32c0 17.7 14.3 32 32 32l128 0c17.7 0 32-14.3 32-32l0-32 160 0 0 64c0 35.3-28.7 64-64 64L64 512c-35.3 0-64-28.7-64-64L0 192c0-35.3 28.7-64 64-64zm8 64c-8.8 0-16 7.2-16 16l0 16c0 8.8 7.2 16 16 16l16 0c8.8 0 16-7.2 16-16l0-16c0-8.8-7.2-16-16-16l-16 0zm0 104c-8.8 0-16 7.2-16 16l0 16c0 8.8 7.2 16 16 16l16 0c8.8 0 16-7.2 16-16l0-16c0-8.8-7.2-16-16-16l-16 0zm0 104c-8.8 0-16 7.2-16 16l0 16c0 8.8 7.2 16 16 16l16 0c8.8 0 16-7.2 16-16l0-16c0-8.8-7.2-16-16-16l-16 0zm336 16l0 16c0 8.8 7.2 16 16 16l16 0c8.8 0 16-7.2 16-16l0-16c0-8.8-7.2-16-16-16l-16 0c-8.8 0-16 7.2-16 16z"],
|
|
12942
|
+
"left": [320, 512, [], "solid", "M41.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l160 160c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L109.3 256 246.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-160 160z"],
|
|
12943
|
+
"right": [320, 512, [], "solid", "M278.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-160 160c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L210.7 256 73.4 118.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l160 160z"],
|
|
12944
|
+
"up": [448, 512, [], "solid", "M201.4 137.4c12.5-12.5 32.8-12.5 45.3 0l160 160c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L224 205.3 86.6 342.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l160-160z"],
|
|
12945
|
+
"down": [448, 512, [], "solid", "M201.4 374.6c12.5 12.5 32.8 12.5 45.3 0l160-160c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 306.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160z"],
|
|
12946
|
+
"arrows": [512, 512, ["arrows-up-down-left-right"], "solid", "M278.6 9.4c-12.5-12.5-32.8-12.5-45.3 0l-64 64c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l9.4-9.4L224 224l-114.7 0 9.4-9.4c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-64 64c-12.5 12.5-12.5 32.8 0 45.3l64 64c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-9.4-9.4L224 288l0 114.7-9.4-9.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l64 64c12.5 12.5 32.8 12.5 45.3 0l64-64c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-9.4 9.4L288 288l114.7 0-9.4 9.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l64-64c12.5-12.5 12.5-32.8 0-45.3l-64-64c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l9.4 9.4L288 224l0-114.7 9.4 9.4c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-64-64z"],
|
|
12947
|
+
"rotate": [512, 512, [], "solid", "M142.9 142.9c-17.5 17.5-30.1 38-37.8 59.8c-5.9 16.7-24.2 25.4-40.8 19.5s-25.4-24.2-19.5-40.8C55.6 150.7 73.2 122 97.6 97.6c87.2-87.2 228.3-87.5 315.8-1L455 55c6.9-6.9 17.2-8.9 26.2-5.2s14.8 12.5 14.8 22.2l0 128c0 13.3-10.7 24-24 24l-8.4 0c0 0 0 0 0 0L344 224c-9.7 0-18.5-5.8-22.2-14.8s-1.7-19.3 5.2-26.2l41.1-41.1c-62.6-61.5-163.1-61.2-225.3 1zM16 312c0-13.3 10.7-24 24-24l7.6 0 .7 0L168 288c9.7 0 18.5 5.8 22.2 14.8s1.7 19.3-5.2 26.2l-41.1 41.1c62.6 61.5 163.1 61.2 225.3-1c17.5-17.5 30.1-38 37.8-59.8c5.9-16.7 24.2-25.4 40.8-19.5s25.4 24.2 19.5 40.8c-10.8 30.6-28.4 59.3-52.9 83.8c-87.2 87.2-228.3 87.5-315.8 1L57 457c-6.9 6.9-17.2 8.9-26.2 5.2S16 449.7 16 440l0-119.6 0-.7 0-7.6z"],
|
|
12948
|
+
"rotate-right": [512, 512, ["rotate-forward"], "solid", "M463.5 224l8.5 0c13.3 0 24-10.7 24-24l0-128c0-9.7-5.8-18.5-14.8-22.2s-19.3-1.7-26.2 5.2L413.4 96.6c-87.6-86.5-228.7-86.2-315.8 1c-87.5 87.5-87.5 229.3 0 316.8s229.3 87.5 316.8 0c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0c-62.5 62.5-163.8 62.5-226.3 0s-62.5-163.8 0-226.3c62.2-62.2 162.7-62.5 225.3-1L327 183c-6.9 6.9-8.9 17.2-5.2 26.2s12.5 14.8 22.2 14.8l119.5 0z"],
|
|
12949
|
+
"rotate-left": [512, 512, ["rotate-back"], "solid", "M48.5 224L40 224c-13.3 0-24-10.7-24-24L16 72c0-9.7 5.8-18.5 14.8-22.2s19.3-1.7 26.2 5.2L98.6 96.6c87.6-86.5 228.7-86.2 315.8 1c87.5 87.5 87.5 229.3 0 316.8s-229.3 87.5-316.8 0c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0c62.5 62.5 163.8 62.5 226.3 0s62.5-163.8 0-226.3c-62.2-62.2-162.7-62.5-225.3-1L185 183c6.9 6.9 8.9 17.2 5.2 26.2s-12.5 14.8-22.2 14.8L48.5 224z"],
|
|
12950
|
+
"arrow-pointer": [320, 512, [], "solid", "M0 55.2L0 426c0 12.2 9.9 22 22 22c6.3 0 12.4-2.7 16.6-7.5L121.2 346l58.1 116.3c7.9 15.8 27.1 22.2 42.9 14.3s22.2-27.1 14.3-42.9L179.8 320l118.1 0c12.2 0 22.1-9.9 22.1-22.1c0-6.3-2.7-12.3-7.4-16.5L38.6 37.9C34.3 34.1 28.9 32 23.2 32C10.4 32 0 42.4 0 55.2z"],
|
|
12951
|
+
"hand-pointer": [448, 512, [], "regular", "M160 64c0-8.8 7.2-16 16-16s16 7.2 16 16l0 136c0 10.3 6.6 19.5 16.4 22.8s20.6-.1 26.8-8.3c3-3.9 7.6-6.4 12.8-6.4c8.8 0 16 7.2 16 16c0 10.3 6.6 19.5 16.4 22.8s20.6-.1 26.8-8.3c3-3.9 7.6-6.4 12.8-6.4c7.8 0 14.3 5.6 15.7 13c1.6 8.2 7.3 15.1 15.1 18s16.7 1.6 23.3-3.6c2.7-2.1 6.1-3.4 9.9-3.4c8.8 0 16 7.2 16 16l0 16 0 104c0 39.8-32.2 72-72 72l-56 0-59.8 0-.9 0c-37.4 0-72.4-18.7-93.2-49.9L50.7 312.9c-4.9-7.4-2.9-17.3 4.4-22.2s17.3-2.9 22.2 4.4L116 353.2c5.9 8.8 16.8 12.7 26.9 9.7s17-12.4 17-23l0-19.9 0-256zM176 0c-35.3 0-64 28.7-64 64l0 197.7C91.2 238 55.5 232.8 28.5 250.7C-.9 270.4-8.9 310.1 10.8 339.5L78.3 440.8c29.7 44.5 79.6 71.2 133.1 71.2l.9 0 59.8 0 56 0c66.3 0 120-53.7 120-120l0-104 0-16c0-35.3-28.7-64-64-64c-4.5 0-8.8 .5-13 1.3c-11.7-15.4-30.2-25.3-51-25.3c-6.9 0-13.5 1.1-19.7 3.1C288.7 170.7 269.6 160 248 160c-2.7 0-5.4 .2-8 .5L240 64c0-35.3-28.7-64-64-64zm48 304c0-8.8-7.2-16-16-16s-16 7.2-16 16l0 96c0 8.8 7.2 16 16 16s16-7.2 16-16l0-96zm48-16c-8.8 0-16 7.2-16 16l0 96c0 8.8 7.2 16 16 16s16-7.2 16-16l0-96c0-8.8-7.2-16-16-16zm80 16c0-8.8-7.2-16-16-16s-16 7.2-16 16l0 96c0 8.8 7.2 16 16 16s16-7.2 16-16l0-96z"],
|
|
12952
|
+
"log-in": [512, 512, [], "solid", "M352 96l64 0c17.7 0 32 14.3 32 32l0 256c0 17.7-14.3 32-32 32l-64 0c-17.7 0-32 14.3-32 32s14.3 32 32 32l64 0c53 0 96-43 96-96l0-256c0-53-43-96-96-96l-64 0c-17.7 0-32 14.3-32 32s14.3 32 32 32zm-9.4 182.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L242.7 224 32 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l210.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128z"],
|
|
12953
|
+
"log-out": [512, 512, [], "solid", "M502.6 278.6c12.5-12.5 12.5-32.8 0-45.3l-128-128c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L402.7 224 192 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l210.7 0-73.4 73.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l128-128zM160 96c17.7 0 32-14.3 32-32s-14.3-32-32-32L96 32C43 32 0 75 0 128L0 384c0 53 43 96 96 96l64 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-64 0c-17.7 0-32-14.3-32-32l0-256c0-17.7 14.3-32 32-32l64 0z"],
|
|
12954
|
+
"menu-arrows": [512, 512, [], "solid", "M352 144l96 112-96 112M160 144L64 256l96 112", "transform=rotate(90)", "fill=none stroke=currentColor stroke-width=60 stroke-linejoin=round stroke-linecap=round"],
|
|
12955
|
+
"more": [128, 512, [], "solid", "M64 360a56 56 0 1 0 0 112 56 56 0 1 0 0-112zm0-160a56 56 0 1 0 0 112 56 56 0 1 0 0-112zM120 96A56 56 0 1 0 8 96a56 56 0 1 0 112 0z"],
|
|
12956
|
+
"minus": [448, 512, [], "solid", "M432 256c0 17.7-14.3 32-32 32L48 288c-17.7 0-32-14.3-32-32s14.3-32 32-32l352 0c17.7 0 32 14.3 32 32z"],
|
|
12957
|
+
"more-horizontal": [448, 512, [], "solid", "M8 256a56 56 0 1 1 112 0A56 56 0 1 1 8 256zm160 0a56 56 0 1 1 112 0 56 56 0 1 1 -112 0zm216-56a56 56 0 1 1 0 112 56 56 0 1 1 0-112z"],
|
|
12958
|
+
"plus": [448, 512, [], "solid", "M256 80c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 144L48 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l144 0 0 144c0 17.7 14.3 32 32 32s32-14.3 32-32l0-144 144 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-144 0 0-144z"],
|
|
12959
|
+
"circle-plus": [24, 24, [], "regular", "M12 8V16M8 12H16M22 12C22 17.5228 17.5228 22 12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12Z", null, "fill=none stroke-width=2 stroke-linecap=round stroke-linejoin=round"],
|
|
12960
|
+
"search": [512, 512, [], "solid", "M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z"],
|
|
12961
|
+
"compass": [512, 512, [], "regular", "M464 256A208 208 0 1 0 48 256a208 208 0 1 0 416 0zM0 256a256 256 0 1 1 512 0A256 256 0 1 1 0 256zm306.7 69.1L162.4 380.6c-19.4 7.5-38.5-11.6-31-31l55.5-144.3c3.3-8.5 9.9-15.1 18.4-18.4l144.3-55.5c19.4-7.5 38.5 11.6 31 31L325.1 306.7c-3.2 8.5-9.9 15.1-18.4 18.4zM288 256a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z"],
|
|
12962
|
+
"sidebar": [512, 512, [], "regular", "M64 64h384a32 32 0 0 1 32 32v320a32 32 0 0 1-32 32H64a32 32 0 0 1-32-32V96a32 32 0 0 1 32-32zm128 0v384", null, "fill=none stroke=currentColor stroke-width=50 stroke-linejoin=round stroke-linecap=round"],
|
|
12963
|
+
"table-cells": [512, 512, [], "solid", "M64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l384 0c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64L64 32zm88 64l0 64-88 0 0-64 88 0zm56 0l88 0 0 64-88 0 0-64zm240 0l0 64-88 0 0-64 88 0zM64 224l88 0 0 64-88 0 0-64zm232 0l0 64-88 0 0-64 88 0zm64 0l88 0 0 64-88 0 0-64zM152 352l0 64-88 0 0-64 88 0zm56 0l88 0 0 64-88 0 0-64zm240 0l0 64-88 0 0-64 88 0z"],
|
|
12964
|
+
"table-cells-large": [512, 512, [], "solid", "M448 96l0 128-160 0 0-128 160 0zm0 192l0 128-160 0 0-128 160 0zM224 224L64 224 64 96l160 0 0 128zM64 288l160 0 0 128L64 416l0-128zM64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l384 0c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64L64 32z"],
|
|
12965
|
+
"lightbulb": [384, 512, [], "regular", "M297.2 248.9C311.6 228.3 320 203.2 320 176c0-70.7-57.3-128-128-128S64 105.3 64 176c0 27.2 8.4 52.3 22.8 72.9c3.7 5.3 8.1 11.3 12.8 17.7c0 0 0 0 0 0c12.9 17.7 28.3 38.9 39.8 59.8c10.4 19 15.7 38.8 18.3 57.5L109 384c-2.2-12-5.9-23.7-11.8-34.5c-9.9-18-22.2-34.9-34.5-51.8c0 0 0 0 0 0s0 0 0 0c-5.2-7.1-10.4-14.2-15.4-21.4C27.6 247.9 16 213.3 16 176C16 78.8 94.8 0 192 0s176 78.8 176 176c0 37.3-11.6 71.9-31.4 100.3c-5 7.2-10.2 14.3-15.4 21.4c0 0 0 0 0 0s0 0 0 0c-12.3 16.8-24.6 33.7-34.5 51.8c-5.9 10.8-9.6 22.5-11.8 34.5l-48.6 0c2.6-18.7 7.9-38.6 18.3-57.5c11.5-20.9 26.9-42.1 39.8-59.8c0 0 0 0 0 0s0 0 0 0s0 0 0 0c4.7-6.4 9-12.4 12.7-17.7zM192 128c-26.5 0-48 21.5-48 48c0 8.8-7.2 16-16 16s-16-7.2-16-16c0-44.2 35.8-80 80-80c8.8 0 16 7.2 16 16s-7.2 16-16 16zm0 384c-44.2 0-80-35.8-80-80l0-16 160 0 0 16c0 44.2-35.8 80-80 80z"],
|
|
12966
|
+
"flag": [448, 512, [], "regular", "M48 24C48 10.7 37.3 0 24 0S0 10.7 0 24L0 64 0 350.5 0 400l0 88c0 13.3 10.7 24 24 24s24-10.7 24-24l0-100 80.3-20.1c41.1-10.3 84.6-5.5 122.5 13.4c44.2 22.1 95.5 24.8 141.7 7.4l34.7-13c12.5-4.7 20.8-16.6 20.8-30l0-279.7c0-23-24.2-38-44.8-27.7l-9.6 4.8c-46.3 23.2-100.8 23.2-147.1 0c-35.1-17.6-75.4-22-113.5-12.5L48 52l0-28zm0 77.5l96.6-24.2c27-6.7 55.5-3.6 80.4 8.8c54.9 27.4 118.7 29.7 175 6.8l0 241.8-24.4 9.1c-33.7 12.6-71.2 10.7-103.4-5.4c-48.2-24.1-103.3-30.1-155.6-17.1L48 338.5l0-237z"],
|
|
12967
|
+
"shuffle": [512, 512, [], "solid", "M403.8 34.4c12-5 25.7-2.2 34.9 6.9l64 64c6 6 9.4 14.1 9.4 22.6s-3.4 16.6-9.4 22.6l-64 64c-9.2 9.2-22.9 11.9-34.9 6.9s-19.8-16.6-19.8-29.6l0-32-32 0c-10.1 0-19.6 4.7-25.6 12.8L284 229.3 244 176l31.2-41.6C293.3 110.2 321.8 96 352 96l32 0 0-32c0-12.9 7.8-24.6 19.8-29.6zM164 282.7L204 336l-31.2 41.6C154.7 401.8 126.2 416 96 416l-64 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l64 0c10.1 0 19.6-4.7 25.6-12.8L164 282.7zm274.6 188c-9.2 9.2-22.9 11.9-34.9 6.9s-19.8-16.6-19.8-29.6l0-32-32 0c-30.2 0-58.7-14.2-76.8-38.4L121.6 172.8c-6-8.1-15.5-12.8-25.6-12.8l-64 0c-17.7 0-32-14.3-32-32s14.3-32 32-32l64 0c30.2 0 58.7 14.2 76.8 38.4L326.4 339.2c6 8.1 15.5 12.8 25.6 12.8l32 0 0-32c0-12.9 7.8-24.6 19.8-29.6s25.7-2.2 34.9 6.9l64 64c6 6 9.4 14.1 9.4 22.6s-3.4 16.6-9.4 22.6l-64 64z"],
|
|
12968
|
+
"credit-card": [576, 512, [], "regular", "M512 80c8.8 0 16 7.2 16 16l0 32L48 128l0-32c0-8.8 7.2-16 16-16l448 0zm16 144l0 192c0 8.8-7.2 16-16 16L64 432c-8.8 0-16-7.2-16-16l0-192 480 0zM64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l448 0c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64L64 32zm56 304c-13.3 0-24 10.7-24 24s10.7 24 24 24l48 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-48 0zm128 0c-13.3 0-24 10.7-24 24s10.7 24 24 24l112 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-112 0z"],
|
|
12969
|
+
"lock": [448, 512, [], "solid", "M144 144l0 48 160 0 0-48c0-44.2-35.8-80-80-80s-80 35.8-80 80zM80 192l0-48C80 64.5 144.5 0 224 0s144 64.5 144 144l0 48 16 0c35.3 0 64 28.7 64 64l0 192c0 35.3-28.7 64-64 64L64 512c-35.3 0-64-28.7-64-64L0 256c0-35.3 28.7-64 64-64l16 0z"],
|
|
12970
|
+
"lock-open": [576, 512, [], "solid", "M352 144c0-44.2 35.8-80 80-80s80 35.8 80 80l0 48c0 17.7 14.3 32 32 32s32-14.3 32-32l0-48C576 64.5 511.5 0 432 0S288 64.5 288 144l0 48L64 192c-35.3 0-64 28.7-64 64L0 448c0 35.3 28.7 64 64 64l320 0c35.3 0 64-28.7 64-64l0-192c0-35.3-28.7-64-64-64l-32 0 0-48z"],
|
|
12971
|
+
"trash-can": [448, 512, [], "regular", "M170.5 51.6L151.5 80l145 0-19-28.4c-1.5-2.2-4-3.6-6.7-3.6l-93.7 0c-2.7 0-5.2 1.3-6.7 3.6zm147-26.6L354.2 80 368 80l48 0 8 0c13.3 0 24 10.7 24 24s-10.7 24-24 24l-8 0 0 304c0 44.2-35.8 80-80 80l-224 0c-44.2 0-80-35.8-80-80l0-304-8 0c-13.3 0-24-10.7-24-24S10.7 80 24 80l8 0 48 0 13.8 0 36.7-55.1C140.9 9.4 158.4 0 177.1 0l93.7 0c18.7 0 36.2 9.4 46.6 24.9zM80 128l0 304c0 17.7 14.3 32 32 32l224 0c17.7 0 32-14.3 32-32l0-304L80 128zm80 64l0 208c0 8.8-7.2 16-16 16s-16-7.2-16-16l0-208c0-8.8 7.2-16 16-16s16 7.2 16 16zm80 0l0 208c0 8.8-7.2 16-16 16s-16-7.2-16-16l0-208c0-8.8 7.2-16 16-16s16 7.2 16 16zm80 0l0 208c0 8.8-7.2 16-16 16s-16-7.2-16-16l0-208c0-8.8 7.2-16 16-16s16 7.2 16 16z"],
|
|
12972
|
+
"user": [448, 512, [], "regular", "M304 128a80 80 0 1 0 -160 0 80 80 0 1 0 160 0zM96 128a128 128 0 1 1 256 0A128 128 0 1 1 96 128zM49.3 464l349.5 0c-8.9-63.3-63.3-112-129-112l-91.4 0c-65.7 0-120.1 48.7-129 112zM0 482.3C0 383.8 79.8 304 178.3 304l91.4 0C368.2 304 448 383.8 448 482.3c0 16.4-13.3 29.7-29.7 29.7L29.7 512C13.3 512 0 498.7 0 482.3z"],
|
|
12973
|
+
"street-view": [512, 512, [], "solid", "M320 64A64 64 0 1 0 192 64a64 64 0 1 0 128 0zm-96 96c-35.3 0-64 28.7-64 64l0 48c0 17.7 14.3 32 32 32l1.8 0 11.1 99.5c1.8 16.2 15.5 28.5 31.8 28.5l38.7 0c16.3 0 30-12.3 31.8-28.5L318.2 304l1.8 0c17.7 0 32-14.3 32-32l0-48c0-35.3-28.7-64-64-64l-64 0zM132.3 394.2c13-2.4 21.7-14.9 19.3-27.9s-14.9-21.7-27.9-19.3c-32.4 5.9-60.9 14.2-82 24.8c-10.5 5.3-20.3 11.7-27.8 19.6C6.4 399.5 0 410.5 0 424c0 21.4 15.5 36.1 29.1 45c14.7 9.6 34.3 17.3 56.4 23.4C130.2 504.7 190.4 512 256 512s125.8-7.3 170.4-19.6c22.1-6.1 41.8-13.8 56.4-23.4c13.7-8.9 29.1-23.6 29.1-45c0-13.5-6.4-24.5-14-32.6c-7.5-7.9-17.3-14.3-27.8-19.6c-21-10.6-49.5-18.9-82-24.8c-13-2.4-25.5 6.3-27.9 19.3s6.3 25.5 19.3 27.9c30.2 5.5 53.7 12.8 69 20.5c3.2 1.6 5.8 3.1 7.9 4.5c3.6 2.4 3.6 7.2 0 9.6c-8.8 5.7-23.1 11.8-43 17.3C374.3 457 318.5 464 256 464s-118.3-7-157.7-17.9c-19.9-5.5-34.2-11.6-43-17.3c-3.6-2.4-3.6-7.2 0-9.6c2.1-1.4 4.8-2.9 7.9-4.5c15.3-7.7 38.8-14.9 69-20.5z"],
|
|
12974
|
+
"closed-captioning": [576, 512, ["cc"], "regular", "M512 80c8.8 0 16 7.2 16 16l0 320c0 8.8-7.2 16-16 16L64 432c-8.8 0-16-7.2-16-16L48 96c0-8.8 7.2-16 16-16l448 0zM64 32C28.7 32 0 60.7 0 96L0 416c0 35.3 28.7 64 64 64l448 0c35.3 0 64-28.7 64-64l0-320c0-35.3-28.7-64-64-64L64 32zM200 208c14.2 0 27 6.1 35.8 16c8.8 9.9 24 10.7 33.9 1.9s10.7-24 1.9-33.9c-17.5-19.6-43.1-32-71.5-32c-53 0-96 43-96 96s43 96 96 96c28.4 0 54-12.4 71.5-32c8.8-9.9 8-25-1.9-33.9s-25-8-33.9 1.9c-8.8 9.9-21.6 16-35.8 16c-26.5 0-48-21.5-48-48s21.5-48 48-48zm144 48c0-26.5 21.5-48 48-48c14.2 0 27 6.1 35.8 16c8.8 9.9 24 10.7 33.9 1.9s10.7-24 1.9-33.9c-17.5-19.6-43.1-32-71.5-32c-53 0-96 43-96 96s43 96 96 96c28.4 0 54-12.4 71.5-32c8.8-9.9 8-25-1.9-33.9s-25-8-33.9 1.9c-8.8 9.9-21.6 16-35.8 16c-26.5 0-48-21.5-48-48z"],
|
|
12975
|
+
"bone": [576, 512, [], "solid", "M153.7 144.8c6.9 16.3 20.6 31.2 38.3 31.2l192 0c17.7 0 31.4-14.9 38.3-31.2C434.4 116.1 462.9 96 496 96c44.2 0 80 35.8 80 80c0 30.4-17 56.9-42 70.4c-3.6 1.9-6 5.5-6 9.6s2.4 7.7 6 9.6c25 13.5 42 40 42 70.4c0 44.2-35.8 80-80 80c-33.1 0-61.6-20.1-73.7-48.8C415.4 350.9 401.7 336 384 336l-192 0c-17.7 0-31.4 14.9-38.3 31.2C141.6 395.9 113.1 416 80 416c-44.2 0-80-35.8-80-80c0-30.4 17-56.9 42-70.4c3.6-1.9 6-5.5 6-9.6s-2.4-7.7-6-9.6C17 232.9 0 206.4 0 176c0-44.2 35.8-80 80-80c33.1 0 61.6 20.1 73.7 48.8z"],
|
|
12976
|
+
"hands-asl-interpreting": [640, 512, ["asl"], "solid", "M156.6 46.3c7.9-15.8 1.5-35-14.3-42.9s-35-1.5-42.9 14.3L13.5 189.4C4.6 207.2 0 226.8 0 246.7L0 256c0 70.7 57.3 128 128 128l72 0 8 0 0-.3c35.2-2.7 65.4-22.8 82.1-51.7c8.8-15.3 3.6-34.9-11.7-43.7s-34.9-3.6-43.7 11.7c-7 12-19.9 20-34.7 20c-22.1 0-40-17.9-40-40s17.9-40 40-40c14.8 0 27.7 8 34.7 20c8.8 15.3 28.4 20.5 43.7 11.7s20.5-28.4 11.7-43.7c-12.8-22.1-33.6-39.1-58.4-47.1l80.8-22c17-4.6 27.1-22.2 22.5-39.3s-22.2-27.1-39.3-22.5L194.9 124.6l81.6-68c13.6-11.3 15.4-31.5 4.1-45.1S249.1-3.9 235.5 7.4L133.6 92.3l23-46zM483.4 465.7c-7.9 15.8-1.5 35 14.3 42.9s35 1.5 42.9-14.3l85.9-171.7c8.9-17.8 13.5-37.4 13.5-57.2l0-9.3c0-70.7-57.3-128-128-128l-72 0-8 0 0 .3c-35.2 2.7-65.4 22.8-82.1 51.7c-8.9 15.3-3.6 34.9 11.7 43.7s34.9 3.6 43.7-11.7c7-12 19.9-20 34.7-20c22.1 0 40 17.9 40 40s-17.9 40-40 40c-14.8 0-27.7-8-34.7-20c-8.9-15.3-28.4-20.5-43.7-11.7s-20.5 28.4-11.7 43.7c12.8 22.1 33.6 39.1 58.4 47.1l-80.8 22c-17.1 4.7-27.1 22.2-22.5 39.3s22.2 27.1 39.3 22.5l100.7-27.5-81.6 68c-13.6 11.3-15.4 31.5-4.1 45.1s31.5 15.4 45.1 4.1l101.9-84.9-23 46z"],
|
|
12977
|
+
"sun": [512, 512, [], "regular", "M375.7 19.7c-1.5-8-6.9-14.7-14.4-17.8s-16.1-2.2-22.8 2.4L256 61.1 173.5 4.2c-6.7-4.6-15.3-5.5-22.8-2.4s-12.9 9.8-14.4 17.8l-18.1 98.5L19.7 136.3c-8 1.5-14.7 6.9-17.8 14.4s-2.2 16.1 2.4 22.8L61.1 256 4.2 338.5c-4.6 6.7-5.5 15.3-2.4 22.8s9.8 13 17.8 14.4l98.5 18.1 18.1 98.5c1.5 8 6.9 14.7 14.4 17.8s16.1 2.2 22.8-2.4L256 450.9l82.5 56.9c6.7 4.6 15.3 5.5 22.8 2.4s12.9-9.8 14.4-17.8l18.1-98.5 98.5-18.1c8-1.5 14.7-6.9 17.8-14.4s2.2-16.1-2.4-22.8L450.9 256l56.9-82.5c4.6-6.7 5.5-15.3 2.4-22.8s-9.8-12.9-17.8-14.4l-98.5-18.1L375.7 19.7zM269.6 110l65.6-45.2 14.4 78.3c1.8 9.8 9.5 17.5 19.3 19.3l78.3 14.4L402 242.4c-5.7 8.2-5.7 19 0 27.2l45.2 65.6-78.3 14.4c-9.8 1.8-17.5 9.5-19.3 19.3l-14.4 78.3L269.6 402c-8.2-5.7-19-5.7-27.2 0l-65.6 45.2-14.4-78.3c-1.8-9.8-9.5-17.5-19.3-19.3L64.8 335.2 110 269.6c5.7-8.2 5.7-19 0-27.2L64.8 176.8l78.3-14.4c9.8-1.8 17.5-9.5 19.3-19.3l14.4-78.3L242.4 110c8.2 5.7 19 5.7 27.2 0zM256 368a112 112 0 1 0 0-224 112 112 0 1 0 0 224zM192 256a64 64 0 1 1 128 0 64 64 0 1 1 -128 0z"],
|
|
12978
|
+
"moon": [384, 512, [], "regular", "M144.7 98.7c-21 34.1-33.1 74.3-33.1 117.3c0 98 62.8 181.4 150.4 211.7c-12.4 2.8-25.3 4.3-38.6 4.3C126.6 432 48 353.3 48 256c0-68.9 39.4-128.4 96.8-157.3zm62.1-66C91.1 41.2 0 137.9 0 256C0 379.7 100 480 223.5 480c47.8 0 92-15 128.4-40.6c1.9-1.3 3.7-2.7 5.5-4c4.8-3.6 9.4-7.4 13.9-11.4c2.7-2.4 5.3-4.8 7.9-7.3c5-4.9 6.3-12.5 3.1-18.7s-10.1-9.7-17-8.5c-3.7 .6-7.4 1.2-11.1 1.6c-5 .5-10.1 .9-15.3 1c-1.2 0-2.5 0-3.7 0l-.3 0c-96.8-.2-175.2-78.9-175.2-176c0-54.8 24.9-103.7 64.1-136c1-.9 2.1-1.7 3.2-2.6c4-3.2 8.2-6.2 12.5-9c3.1-2 6.3-4 9.6-5.8c6.1-3.5 9.2-10.5 7.7-17.3s-7.3-11.9-14.3-12.5c-3.6-.3-7.1-.5-10.7-.6c-2.7-.1-5.5-.1-8.2-.1c-3.3 0-6.5 .1-9.8 .2c-2.3 .1-4.6 .2-6.9 .4z"],
|
|
12979
|
+
"heart": [512, 512, [], "regular", "M225.8 468.2l-2.5-2.3L48.1 303.2C17.4 274.7 0 234.7 0 192.8l0-3.3c0-70.4 50-130.8 119.2-144C158.6 37.9 198.9 47 231 69.6c9 6.4 17.4 13.8 25 22.3c4.2-4.8 8.7-9.2 13.5-13.3c3.7-3.2 7.5-6.2 11.5-9c0 0 0 0 0 0C313.1 47 353.4 37.9 392.8 45.4C462 58.6 512 119.1 512 189.5l0 3.3c0 41.9-17.4 81.9-48.1 110.4L288.7 465.9l-2.5 2.3c-8.2 7.6-19 11.9-30.2 11.9s-22-4.2-30.2-11.9zM239.1 145c-.4-.3-.7-.7-1-1.1l-17.8-20-.1-.1s0 0 0 0c-23.1-25.9-58-37.7-92-31.2C81.6 101.5 48 142.1 48 189.5l0 3.3c0 28.5 11.9 55.8 32.8 75.2L256 430.7 431.2 268c20.9-19.4 32.8-46.7 32.8-75.2l0-3.3c0-47.3-33.6-88-80.1-96.9c-34-6.5-69 5.4-92 31.2c0 0 0 0-.1 .1s0 0-.1 .1l-17.8 20c-.3 .4-.7 .7-1 1.1c-4.5 4.5-10.6 7-16.9 7s-12.4-2.5-16.9-7z"],
|
|
12980
|
+
"xmark": [384, 512, [], "solid", "M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z"],
|
|
12981
|
+
"wand-sparkles": [512, 512, [], "solid", "M464 6.1c9.5-8.5 24-8.1 33 .9l8 8c9 9 9.4 23.5 .9 33l-85.8 95.9c-2.6 2.9-4.1 6.7-4.1 10.7l0 21.4c0 8.8-7.2 16-16 16l-15.8 0c-4.6 0-8.9 1.9-11.9 5.3L100.7 500.9C94.3 508 85.3 512 75.8 512c-8.8 0-17.3-3.5-23.5-9.8L9.7 459.7C3.5 453.4 0 445 0 436.2c0-9.5 4-18.5 11.1-24.8l111.6-99.8c3.4-3 5.3-7.4 5.3-11.9l0-27.6c0-8.8 7.2-16 16-16l34.6 0c3.9 0 7.7-1.5 10.7-4.1L464 6.1zM432 288c3.6 0 6.7 2.4 7.7 5.8l14.8 51.7 51.7 14.8c3.4 1 5.8 4.1 5.8 7.7s-2.4 6.7-5.8 7.7l-51.7 14.8-14.8 51.7c-1 3.4-4.1 5.8-7.7 5.8s-6.7-2.4-7.7-5.8l-14.8-51.7-51.7-14.8c-3.4-1-5.8-4.1-5.8-7.7s2.4-6.7 5.8-7.7l51.7-14.8 14.8-51.7c1-3.4 4.1-5.8 7.7-5.8zM87.7 69.8l14.8 51.7 51.7 14.8c3.4 1 5.8 4.1 5.8 7.7s-2.4 6.7-5.8 7.7l-51.7 14.8L87.7 218.2c-1 3.4-4.1 5.8-7.7 5.8s-6.7-2.4-7.7-5.8L57.5 166.5 5.8 151.7c-3.4-1-5.8-4.1-5.8-7.7s2.4-6.7 5.8-7.7l51.7-14.8L72.3 69.8c1-3.4 4.1-5.8 7.7-5.8s6.7 2.4 7.7 5.8zM208 0c3.7 0 6.9 2.5 7.8 6.1l6.8 27.3 27.3 6.8c3.6 .9 6.1 4.1 6.1 7.8s-2.5 6.9-6.1 7.8l-27.3 6.8-6.8 27.3c-.9 3.6-4.1 6.1-7.8 6.1s-6.9-2.5-7.8-6.1l-6.8-27.3-27.3-6.8c-3.6-.9-6.1-4.1-6.1-7.8s2.5-6.9 6.1-7.8l27.3-6.8 6.8-27.3c.9-3.6 4.1-6.1 7.8-6.1z"],
|
|
12982
|
+
"star": [576, 512, [], "regular", "M287.9 0c9.2 0 17.6 5.2 21.6 13.5l68.6 141.3 153.2 22.6c9 1.3 16.5 7.6 19.3 16.3s.5 18.1-5.9 24.5L433.6 328.4l26.2 155.6c1.5 9-2.2 18.1-9.7 23.5s-17.3 6-25.3 1.7l-137-73.2L151 509.1c-8.1 4.3-17.9 3.7-25.3-1.7s-11.2-14.5-9.7-23.5l26.2-155.6L31.1 218.2c-6.5-6.4-8.7-15.9-5.9-24.5s10.3-14.9 19.3-16.3l153.2-22.6L266.3 13.5C270.4 5.2 278.7 0 287.9 0zm0 79L235.4 187.2c-3.5 7.1-10.2 12.1-18.1 13.3L99 217.9 184.9 303c5.5 5.5 8.1 13.3 6.8 21L171.4 443.7l105.2-56.2c7.1-3.8 15.6-3.8 22.6 0l105.2 56.2L384.2 324.1c-1.3-7.7 1.2-15.5 6.8-21l85.9-85.1L358.6 200.5c-7.8-1.2-14.6-6.1-18.1-13.3L287.9 79z"],
|
|
12983
|
+
"puzzle-piece": [512, 512, [], "solid", "M192 104.8c0-9.2-5.8-17.3-13.2-22.8C167.2 73.3 160 61.3 160 48c0-26.5 28.7-48 64-48s64 21.5 64 48c0 13.3-7.2 25.3-18.8 34c-7.4 5.5-13.2 13.6-13.2 22.8c0 12.8 10.4 23.2 23.2 23.2l56.8 0c26.5 0 48 21.5 48 48l0 56.8c0 12.8 10.4 23.2 23.2 23.2c9.2 0 17.3-5.8 22.8-13.2c8.7-11.6 20.7-18.8 34-18.8c26.5 0 48 28.7 48 64s-21.5 64-48 64c-13.3 0-25.3-7.2-34-18.8c-5.5-7.4-13.6-13.2-22.8-13.2c-12.8 0-23.2 10.4-23.2 23.2L384 464c0 26.5-21.5 48-48 48l-56.8 0c-12.8 0-23.2-10.4-23.2-23.2c0-9.2 5.8-17.3 13.2-22.8c11.6-8.7 18.8-20.7 18.8-34c0-26.5-28.7-48-64-48s-64 21.5-64 48c0 13.3 7.2 25.3 18.8 34c7.4 5.5 13.2 13.6 13.2 22.8c0 12.8-10.4 23.2-23.2 23.2L48 512c-26.5 0-48-21.5-48-48L0 343.2C0 330.4 10.4 320 23.2 320c9.2 0 17.3 5.8 22.8 13.2C54.7 344.8 66.7 352 80 352c26.5 0 48-28.7 48-64s-21.5-64-48-64c-13.3 0-25.3 7.2-34 18.8C40.5 250.2 32.4 256 23.2 256C10.4 256 0 245.6 0 232.8L0 176c0-26.5 21.5-48 48-48l120.8 0c12.8 0 23.2-10.4 23.2-23.2z"],
|
|
12984
|
+
// brands
|
|
12985
|
+
"discord": [640, 512, [], "brands", "M524.531,69.836a1.5,1.5,0,0,0-.764-.7A485.065,485.065,0,0,0,404.081,32.03a1.816,1.816,0,0,0-1.923.91,337.461,337.461,0,0,0-14.9,30.6,447.848,447.848,0,0,0-134.426,0,309.541,309.541,0,0,0-15.135-30.6,1.89,1.89,0,0,0-1.924-.91A483.689,483.689,0,0,0,116.085,69.137a1.712,1.712,0,0,0-.788.676C39.068,183.651,18.186,294.69,28.43,404.354a2.016,2.016,0,0,0,.765,1.375A487.666,487.666,0,0,0,176.02,479.918a1.9,1.9,0,0,0,2.063-.676A348.2,348.2,0,0,0,208.12,430.4a1.86,1.86,0,0,0-1.019-2.588,321.173,321.173,0,0,1-45.868-21.853,1.885,1.885,0,0,1-.185-3.126c3.082-2.309,6.166-4.711,9.109-7.137a1.819,1.819,0,0,1,1.9-.256c96.229,43.917,200.41,43.917,295.5,0a1.812,1.812,0,0,1,1.924.233c2.944,2.426,6.027,4.851,9.132,7.16a1.884,1.884,0,0,1-.162,3.126,301.407,301.407,0,0,1-45.89,21.83,1.875,1.875,0,0,0-1,2.611,391.055,391.055,0,0,0,30.014,48.815,1.864,1.864,0,0,0,2.063.7A486.048,486.048,0,0,0,610.7,405.729a1.882,1.882,0,0,0,.765-1.352C623.729,277.594,590.933,167.465,524.531,69.836ZM222.491,337.58c-28.972,0-52.844-26.587-52.844-59.239S193.056,219.1,222.491,219.1c29.665,0,53.306,26.82,52.843,59.239C275.334,310.993,251.924,337.58,222.491,337.58Zm195.38,0c-28.971,0-52.843-26.587-52.843-59.239S388.437,219.1,417.871,219.1c29.667,0,53.307,26.82,52.844,59.239C470.715,310.993,447.538,337.58,417.871,337.58Z"],
|
|
12986
|
+
"github": [496, 512, [], "brands", "M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"],
|
|
12987
|
+
"square-js": [448, 512, [], "brands", "M448 96c0-35.3-28.7-64-64-64H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V96zM180.9 444.9c-33.7 0-53.2-17.4-63.2-38.5L152 385.7c6.6 11.7 12.6 21.6 27.1 21.6c13.8 0 22.6-5.4 22.6-26.5V237.7h42.1V381.4c0 43.6-25.6 63.5-62.9 63.5zm85.8-43L301 382.1c9 14.7 20.8 25.6 41.5 25.6c17.4 0 28.6-8.7 28.6-20.8c0-14.4-11.4-19.5-30.7-28l-10.5-4.5c-30.4-12.9-50.5-29.2-50.5-63.5c0-31.6 24.1-55.6 61.6-55.6c26.8 0 46 9.3 59.8 33.7L368 290c-7.2-12.9-15-18-27.1-18c-12.3 0-20.1 7.8-20.1 18c0 12.6 7.8 17.7 25.9 25.6l10.5 4.5c35.8 15.3 55.9 31 55.9 66.2c0 37.8-29.8 58.6-69.7 58.6c-39.1 0-64.4-18.6-76.7-43z"],
|
|
12988
|
+
"python": [448, 512, [], "brands", "M439.8 200.5c-7.7-30.9-22.3-54.2-53.4-54.2h-40.1v47.4c0 36.8-31.2 67.8-66.8 67.8H172.7c-29.2 0-53.4 25-53.4 54.3v101.8c0 29 25.2 46 53.4 54.3 33.8 9.9 66.3 11.7 106.8 0 26.9-7.8 53.4-23.5 53.4-54.3v-40.7H226.2v-13.6h160.2c31.1 0 42.6-21.7 53.4-54.2 11.2-33.5 10.7-65.7 0-108.6zM286.2 404c11.1 0 20.1 9.1 20.1 20.3 0 11.3-9 20.4-20.1 20.4-11 0-20.1-9.2-20.1-20.4.1-11.3 9.1-20.3 20.1-20.3zM167.8 248.1h106.8c29.7 0 53.4-24.5 53.4-54.3V91.9c0-29-24.4-50.7-53.4-55.6-35.8-5.9-74.7-5.6-106.8.1-45.2 8-53.4 24.7-53.4 55.6v40.7h106.9v13.6h-147c-31.1 0-58.3 18.7-66.8 54.2-9.8 40.7-10.2 66.1 0 108.6 7.6 31.6 25.7 54.2 56.8 54.2H101v-48.8c0-35.3 30.5-66.4 66.8-66.4zm-6.7-142.6c-11.1 0-20.1-9.1-20.1-20.3.1-11.3 9-20.4 20.1-20.4 11 0 20.1 9.2 20.1 20.4s-9 20.3-20.1 20.3z"],
|
|
12989
|
+
"microsoft": [448, 512, [], "brands", "M0 32h214.6v214.6H0V32zm233.4 0H448v214.6H233.4V32zM0 265.4h214.6V480H0V265.4zm233.4 0H448V480H233.4V265.4z"],
|
|
12990
|
+
"apple": [384, 512, [], "brands", "M318.7 268.7c-.2-36.7 16.4-64.4 50-84.8-18.8-26.9-47.2-41.7-84.7-44.6-35.5-2.8-74.3 20.7-88.5 20.7-15 0-49.4-19.7-76.4-19.7C63.3 141.2 4 184.8 4 273.5q0 39.3 14.4 81.2c12.8 36.7 59 126.7 107.2 125.2 25.2-.6 43-17.9 75.8-17.9 31.8 0 48.3 17.9 76.4 17.9 48.6-.7 90.4-82.5 102.6-119.3-65.2-30.7-61.7-90-61.7-91.9zm-56.6-164.2c27.3-32.4 24.8-61.9 24-72.5-24.1 1.4-52 16.4-67.9 34.9-17.5 19.8-27.8 44.3-25.6 71.9 26.1 2 49.9-11.4 69.5-34.3z"],
|
|
12991
|
+
"youtube": [576, 512, [], "brands", "M549.655 124.083c-6.281-23.65-24.787-42.276-48.284-48.597C458.781 64 288 64 288 64S117.22 64 74.629 75.486c-23.497 6.322-42.003 24.947-48.284 48.597-11.412 42.867-11.412 132.305-11.412 132.305s0 89.438 11.412 132.305c6.281 23.65 24.787 41.5 48.284 47.821C117.22 448 288 448 288 448s170.78 0 213.371-11.486c23.497-6.321 42.003-24.171 48.284-47.821 11.412-42.867 11.412-132.305 11.412-132.305s0-89.438-11.412-132.305zm-317.51 213.508V175.185l142.739 81.205-142.739 81.201z"],
|
|
12992
|
+
"x-twitter": [512, 512, [], "brands", "M389.2 48h70.6L305.6 224.2 487 464H345L233.7 318.6 106.5 464H35.8L200.7 275.5 26.8 48H172.4L272.9 180.9 389.2 48zM364.4 421.8h39.1L151.1 88h-42L364.4 421.8z"],
|
|
12993
|
+
"chrome": [512, 512, [], "brands", "M0 256C0 209.4 12.47 165.6 34.27 127.1L144.1 318.3C166 357.5 207.9 384 256 384C270.3 384 283.1 381.7 296.8 377.4L220.5 509.6C95.9 492.3 0 385.3 0 256zM365.1 321.6C377.4 302.4 384 279.1 384 256C384 217.8 367.2 183.5 340.7 160H493.4C505.4 189.6 512 222.1 512 256C512 397.4 397.4 511.1 256 512L365.1 321.6zM477.8 128H256C193.1 128 142.3 172.1 130.5 230.7L54.19 98.47C101 38.53 174 0 256 0C350.8 0 433.5 51.48 477.8 128V128zM168 256C168 207.4 207.4 168 256 168C304.6 168 344 207.4 344 256C344 304.6 304.6 344 256 344C207.4 344 168 304.6 168 256z"],
|
|
12994
|
+
"reddit": [512, 512, [], "brands", "M0 256C0 114.6 114.6 0 256 0S512 114.6 512 256s-114.6 256-256 256L37.1 512c-13.7 0-20.5-16.5-10.9-26.2L75 437C28.7 390.7 0 326.7 0 256zM349.6 153.6c23.6 0 42.7-19.1 42.7-42.7s-19.1-42.7-42.7-42.7c-20.6 0-37.8 14.6-41.8 34c-34.5 3.7-61.4 33-61.4 68.4l0 .2c-37.5 1.6-71.8 12.3-99 29.1c-10.1-7.8-22.8-12.5-36.5-12.5c-33 0-59.8 26.8-59.8 59.8c0 24 14.1 44.6 34.4 54.1c2 69.4 77.6 125.2 170.6 125.2s168.7-55.9 170.6-125.3c20.2-9.6 34.1-30.2 34.1-54c0-33-26.8-59.8-59.8-59.8c-13.7 0-26.3 4.6-36.4 12.4c-27.4-17-62.1-27.7-100-29.1l0-.2c0-25.4 18.9-46.5 43.4-49.9l0 0c4.4 18.8 21.3 32.8 41.5 32.8zM177.1 246.9c16.7 0 29.5 17.6 28.5 39.3s-13.5 29.6-30.3 29.6s-31.4-8.8-30.4-30.5s15.4-38.3 32.1-38.3zm190.1 38.3c1 21.7-13.7 30.5-30.4 30.5s-29.3-7.9-30.3-29.6c-1-21.7 11.8-39.3 28.5-39.3s31.2 16.6 32.1 38.3zm-48.1 56.7c-10.3 24.6-34.6 41.9-63 41.9s-52.7-17.3-63-41.9c-1.2-2.9 .8-6.2 3.9-6.5c18.4-1.9 38.3-2.9 59.1-2.9s40.7 1 59.1 2.9c3.1 .3 5.1 3.6 3.9 6.5z"],
|
|
12995
|
+
"ubuntu": [576, 512, [], "brands", "M469.2 75A75.6 75.6 0 1 0 317.9 75a75.6 75.6 0 1 0 151.2 0zM154.2 240.7A75.6 75.6 0 1 0 3 240.7a75.6 75.6 0 1 0 151.2 0zM57 346C75.6 392.9 108 433 150 461.1s91.5 42.6 142 41.7c-14.7-18.6-22.9-41.5-23.2-65.2c-6.8-.9-13.3-2.1-19.5-3.4c-26.8-5.7-51.9-17.3-73.6-34s-39.3-38.1-51.7-62.5c-20.9 9.9-44.5 12.8-67.1 8.2zm395.1 89.8a75.6 75.6 0 1 0 -151.2 0 75.6 75.6 0 1 0 151.2 0zM444 351.6c18.5 14.8 31.6 35.2 37.2 58.2c33.3-41.3 52.6-92.2 54.8-145.2s-12.5-105.4-42.2-149.4c-8.6 21.5-24 39.6-43.8 51.6c15.4 28.6 22.9 60.8 21.9 93.2s-10.7 64-28 91.6zM101.1 135.4c12.4 2.7 24.3 7.5 35.1 14.3c16.6-24.2 38.9-44.1 64.8-58S255.8 70.4 285.2 70c.2-5.9 .9-11.9 2-17.7c3.6-16.7 11.1-32.3 21.8-45.5c-47.7-3.8-95.4 6-137.6 28.5S94.3 91.7 70.8 133.4c2.7-.2 5.3-.3 8-.3c7.5 0 15 .8 22.4 2.3z"],
|
|
12996
|
+
"whatsapp": [448, 512, [], "brands", "M380.9 97.1C339 55.1 283.2 32 223.9 32c-122.4 0-222 99.6-222 222 0 39.1 10.2 77.3 29.6 111L0 480l117.7-30.9c32.4 17.7 68.9 27 106.1 27h.1c122.3 0 224.1-99.6 224.1-222 0-59.3-25.2-115-67.1-157zm-157 341.6c-33.2 0-65.7-8.9-94-25.7l-6.7-4-69.8 18.3L72 359.2l-4.4-7c-18.5-29.4-28.2-63.3-28.2-98.2 0-101.7 82.8-184.5 184.6-184.5 49.3 0 95.6 19.2 130.4 54.1 34.8 34.9 56.2 81.2 56.1 130.5 0 101.8-84.9 184.6-186.6 184.6zm101.2-138.2c-5.5-2.8-32.8-16.2-37.9-18-5.1-1.9-8.8-2.8-12.5 2.8-3.7 5.6-14.3 18-17.6 21.8-3.2 3.7-6.5 4.2-12 1.4-32.6-16.3-54-29.1-75.5-66-5.7-9.8 5.7-9.1 16.3-30.3 1.8-3.7.9-6.9-.5-9.7-1.4-2.8-12.5-30.1-17.1-41.2-4.5-10.8-9.1-9.3-12.5-9.5-3.2-.2-6.9-.2-10.6-.2-3.7 0-9.7 1.4-14.8 6.9-5.1 5.6-19.4 19-19.4 46.3 0 27.3 19.9 53.7 22.6 57.4 2.8 3.7 39.1 59.7 94.8 83.8 35.2 15.2 49 16.5 66.6 13.9 10.7-1.6 32.8-13.4 37.4-26.4 4.6-13 4.6-24.1 3.2-26.4-1.3-2.5-5-3.9-10.5-6.6z"],
|
|
12997
|
+
"linux": [448, 512, [], "brands", "M220.8 123.3c1 .5 1.8 1.7 3 1.7 1.1 0 2.8-.4 2.9-1.5.2-1.4-1.9-2.3-3.2-2.9-1.7-.7-3.9-1-5.5-.1-.4.2-.8.7-.6 1.1.3 1.3 2.3 1.1 3.4 1.7zm-21.9 1.7c1.2 0 2-1.2 3-1.7 1.1-.6 3.1-.4 3.5-1.6.2-.4-.2-.9-.6-1.1-1.6-.9-3.8-.6-5.5.1-1.3.6-3.4 1.5-3.2 2.9.1 1 1.8 1.5 2.8 1.4zM420 403.8c-3.6-4-5.3-11.6-7.2-19.7-1.8-8.1-3.9-16.8-10.5-22.4-1.3-1.1-2.6-2.1-4-2.9-1.3-.8-2.7-1.5-4.1-2 9.2-27.3 5.6-54.5-3.7-79.1-11.4-30.1-31.3-56.4-46.5-74.4-17.1-21.5-33.7-41.9-33.4-72C311.1 85.4 315.7.1 234.8 0 132.4-.2 158 103.4 156.9 135.2c-1.7 23.4-6.4 41.8-22.5 64.7-18.9 22.5-45.5 58.8-58.1 96.7-6 17.9-8.8 36.1-6.2 53.3-6.5 5.8-11.4 14.7-16.6 20.2-4.2 4.3-10.3 5.9-17 8.3s-14 6-18.5 14.5c-2.1 3.9-2.8 8.1-2.8 12.4 0 3.9.6 7.9 1.2 11.8 1.2 8.1 2.5 15.7.8 20.8-5.2 14.4-5.9 24.4-2.2 31.7 3.8 7.3 11.4 10.5 20.1 12.3 17.3 3.6 40.8 2.7 59.3 12.5 19.8 10.4 39.9 14.1 55.9 10.4 11.6-2.6 21.1-9.6 25.9-20.2 12.5-.1 26.3-5.4 48.3-6.6 14.9-1.2 33.6 5.3 55.1 4.1.6 2.3 1.4 4.6 2.5 6.7v.1c8.3 16.7 23.8 24.3 40.3 23 16.6-1.3 34.1-11 48.3-27.9 13.6-16.4 36-23.2 50.9-32.2 7.4-4.5 13.4-10.1 13.9-18.3.4-8.2-4.4-17.3-15.5-29.7zM223.7 87.3c9.8-22.2 34.2-21.8 44-.4 6.5 14.2 3.6 30.9-4.3 40.4-1.6-.8-5.9-2.6-12.6-4.9 1.1-1.2 3.1-2.7 3.9-4.6 4.8-11.8-.2-27-9.1-27.3-7.3-.5-13.9 10.8-11.8 23-4.1-2-9.4-3.5-13-4.4-1-6.9-.3-14.6 2.9-21.8zM183 75.8c10.1 0 20.8 14.2 19.1 33.5-3.5 1-7.1 2.5-10.2 4.6 1.2-8.9-3.3-20.1-9.6-19.6-8.4.7-9.8 21.2-1.8 28.1 1 .8 1.9-.2-5.9 5.5-15.6-14.6-10.5-52.1 8.4-52.1zm-13.6 60.7c6.2-4.6 13.6-10 14.1-10.5 4.7-4.4 13.5-14.2 27.9-14.2 7.1 0 15.6 2.3 25.9 8.9 6.3 4.1 11.3 4.4 22.6 9.3 8.4 3.5 13.7 9.7 10.5 18.2-2.6 7.1-11 14.4-22.7 18.1-11.1 3.6-19.8 16-38.2 14.9-3.9-.2-7-1-9.6-2.1-8-3.5-12.2-10.4-20-15-8.6-4.8-13.2-10.4-14.7-15.3-1.4-4.9 0-9 4.2-12.3zm3.3 334c-2.7 35.1-43.9 34.4-75.3 18-29.9-15.8-68.6-6.5-76.5-21.9-2.4-4.7-2.4-12.7 2.6-26.4v-.2c2.4-7.6.6-16-.6-23.9-1.2-7.8-1.8-15 .9-20 3.5-6.7 8.5-9.1 14.8-11.3 10.3-3.7 11.8-3.4 19.6-9.9 5.5-5.7 9.5-12.9 14.3-18 5.1-5.5 10-8.1 17.7-6.9 8.1 1.2 15.1 6.8 21.9 16l19.6 35.6c9.5 19.9 43.1 48.4 41 68.9zm-1.4-25.9c-4.1-6.6-9.6-13.6-14.4-19.6 7.1 0 14.2-2.2 16.7-8.9 2.3-6.2 0-14.9-7.4-24.9-13.5-18.2-38.3-32.5-38.3-32.5-13.5-8.4-21.1-18.7-24.6-29.9s-3-23.3-.3-35.2c5.2-22.9 18.6-45.2 27.2-59.2 2.3-1.7.8 3.2-8.7 20.8-8.5 16.1-24.4 53.3-2.6 82.4.6-20.7 5.5-41.8 13.8-61.5 12-27.4 37.3-74.9 39.3-112.7 1.1.8 4.6 3.2 6.2 4.1 4.6 2.7 8.1 6.7 12.6 10.3 12.4 10 28.5 9.2 42.4 1.2 6.2-3.5 11.2-7.5 15.9-9 9.9-3.1 17.8-8.6 22.3-15 7.7 30.4 25.7 74.3 37.2 95.7 6.1 11.4 18.3 35.5 23.6 64.6 3.3-.1 7 .4 10.9 1.4 13.8-35.7-11.7-74.2-23.3-84.9-4.7-4.6-4.9-6.6-2.6-6.5 12.6 11.2 29.2 33.7 35.2 59 2.8 11.6 3.3 23.7.4 35.7 16.4 6.8 35.9 17.9 30.7 34.8-2.2-.1-3.2 0-4.2 0 3.2-10.1-3.9-17.6-22.8-26.1-19.6-8.6-36-8.6-38.3 12.5-12.1 4.2-18.3 14.7-21.4 27.3-2.8 11.2-3.6 24.7-4.4 39.9-.5 7.7-3.6 18-6.8 29-32.1 22.9-76.7 32.9-114.3 7.2zm257.4-11.5c-.9 16.8-41.2 19.9-63.2 46.5-13.2 15.7-29.4 24.4-43.6 25.5s-26.5-4.8-33.7-19.3c-4.7-11.1-2.4-23.1 1.1-36.3 3.7-14.2 9.2-28.8 9.9-40.6.8-15.2 1.7-28.5 4.2-38.7 2.6-10.3 6.6-17.2 13.7-21.1.3-.2.7-.3 1-.5.8 13.2 7.3 26.6 18.8 29.5 12.6 3.3 30.7-7.5 38.4-16.3 9-.3 15.7-.9 22.6 5.1 9.9 8.5 7.1 30.3 17.1 41.6 10.6 11.6 14 19.5 13.7 24.6zM173.3 148.7c2 1.9 4.7 4.5 8 7.1 6.6 5.2 15.8 10.6 27.3 10.6 11.6 0 22.5-5.9 31.8-10.8 4.9-2.6 10.9-7 14.8-10.4s5.9-6.3 3.1-6.6-2.6 2.6-6 5.1c-4.4 3.2-9.7 7.4-13.9 9.8-7.4 4.2-19.5 10.2-29.9 10.2s-18.7-4.8-24.9-9.7c-3.1-2.5-5.7-5-7.7-6.9-1.5-1.4-1.9-4.6-4.3-4.9-1.4-.1-1.8 3.7 1.7 6.5z"],
|
|
12998
|
+
"instagram": [448, 512, [], "brands", "M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z"],
|
|
12999
|
+
"facebook": [512, 512, [], "brands", "M512 256C512 114.6 397.4 0 256 0S0 114.6 0 256C0 376 82.7 476.8 194.2 504.5V334.2H141.4V256h52.8V222.3c0-87.1 39.4-127.5 125-127.5c16.2 0 44.2 3.2 55.7 6.4V172c-6-.6-16.5-1-29.6-1c-42 0-58.2 15.9-58.2 57.2V256h83.6l-14.4 78.2H287V510.1C413.8 494.8 512 386.9 512 256h0z"],
|
|
13000
|
+
"safari": [512, 512, [], "brands", "M274.69,274.69l-37.38-37.38L166,346ZM256,8C119,8,8,119,8,256S119,504,256,504,504,393,504,256,393,8,256,8ZM411.85,182.79l14.78-6.13A8,8,0,0,1,437.08,181h0a8,8,0,0,1-4.33,10.46L418,197.57a8,8,0,0,1-10.45-4.33h0A8,8,0,0,1,411.85,182.79ZM314.43,94l6.12-14.78A8,8,0,0,1,331,74.92h0a8,8,0,0,1,4.33,10.45l-6.13,14.78a8,8,0,0,1-10.45,4.33h0A8,8,0,0,1,314.43,94ZM256,60h0a8,8,0,0,1,8,8V84a8,8,0,0,1-8,8h0a8,8,0,0,1-8-8V68A8,8,0,0,1,256,60ZM181,74.92a8,8,0,0,1,10.46,4.33L197.57,94a8,8,0,1,1-14.78,6.12l-6.13-14.78A8,8,0,0,1,181,74.92Zm-63.58,42.49h0a8,8,0,0,1,11.31,0L140,128.72A8,8,0,0,1,140,140h0a8,8,0,0,1-11.31,0l-11.31-11.31A8,8,0,0,1,117.41,117.41ZM60,256h0a8,8,0,0,1,8-8H84a8,8,0,0,1,8,8h0a8,8,0,0,1-8,8H68A8,8,0,0,1,60,256Zm40.15,73.21-14.78,6.13A8,8,0,0,1,74.92,331h0a8,8,0,0,1,4.33-10.46L94,314.43a8,8,0,0,1,10.45,4.33h0A8,8,0,0,1,100.15,329.21Zm4.33-136h0A8,8,0,0,1,94,197.57l-14.78-6.12A8,8,0,0,1,74.92,181h0a8,8,0,0,1,10.45-4.33l14.78,6.13A8,8,0,0,1,104.48,193.24ZM197.57,418l-6.12,14.78a8,8,0,0,1-14.79-6.12l6.13-14.78A8,8,0,1,1,197.57,418ZM264,444a8,8,0,0,1-8,8h0a8,8,0,0,1-8-8V428a8,8,0,0,1,8-8h0a8,8,0,0,1,8,8Zm67-6.92h0a8,8,0,0,1-10.46-4.33L314.43,418a8,8,0,0,1,4.33-10.45h0a8,8,0,0,1,10.45,4.33l6.13,14.78A8,8,0,0,1,331,437.08Zm63.58-42.49h0a8,8,0,0,1-11.31,0L372,383.28A8,8,0,0,1,372,372h0a8,8,0,0,1,11.31,0l11.31,11.31A8,8,0,0,1,394.59,394.59ZM286.25,286.25,110.34,401.66,225.75,225.75,401.66,110.34ZM437.08,331h0a8,8,0,0,1-10.45,4.33l-14.78-6.13a8,8,0,0,1-4.33-10.45h0A8,8,0,0,1,418,314.43l14.78,6.12A8,8,0,0,1,437.08,331ZM444,264H428a8,8,0,0,1-8-8h0a8,8,0,0,1,8-8h16a8,8,0,0,1,8,8h0A8,8,0,0,1,444,264Z"],
|
|
13001
|
+
"google": [488, 512, [], "brands", "M488 261.8C488 403.3 391.1 504 248 504 110.8 504 0 393.2 0 256S110.8 8 248 8c66.8 0 123 24.5 166.3 64.9l-67.5 64.9C258.5 52.6 94.3 116.6 94.3 256c0 86.5 69.1 156.6 153.7 156.6 98.2 0 135-70.4 140.8-106.9H248v-85.3h236.1c2.3 12.7 3.9 24.9 3.9 41.4z"],
|
|
13002
|
+
"npm": [576, 512, [], "brands", "M288 288h-32v-64h32v64zm288-128v192H288v32H160v-32H0V160h576zm-416 32H32v128h64v-96h32v96h32V192zm160 0H192v160h64v-32h64V192zm224 0H352v128h64v-96h32v96h32v-96h32v96h32V192z"],
|
|
13003
|
+
"bluetooth-b": [320, 512, [], "brands", "M196.48 260.023l92.626-103.333L143.125 0v206.33l-86.111-86.111-31.406 31.405 108.061 108.399L25.608 368.422l31.406 31.405 86.111-86.111L145.84 512l148.552-148.644-97.912-103.333zm40.86-102.996l-49.977 49.978-.338-100.295 50.315 50.317zM187.363 313.04l49.977 49.978-50.315 50.316.338-100.294z"],
|
|
13004
|
+
// Some Aliases
|
|
13005
|
+
"vr": "vr-cardboard",
|
|
13006
|
+
"sticky-note": "note-sticky",
|
|
13007
|
+
"script": "scroll",
|
|
13008
|
+
"save": "floppy-disk",
|
|
13009
|
+
"media": "photo-film",
|
|
13010
|
+
"arrows-up-down-left-right": "arrows",
|
|
13011
|
+
"rotate-forward": "rotate-right",
|
|
13012
|
+
"rotate-back": "rotate-left",
|
|
13013
|
+
"cc": "closed-captioning",
|
|
13014
|
+
"asl": "hands-asl-interpreting",
|
|
13015
|
+
}
|
|
13016
|
+
|
|
12668
13017
|
})( typeof(window) != 'undefined' ? window : (typeof(self) != 'undefined' ? self : global ) );
|