@float.js/core 2.0.3 → 2.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli/index.js +143 -460
- package/dist/cli/index.js.map +1 -1
- package/dist/devtools/index.js +1 -1
- package/dist/devtools/index.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.js +142 -459
- package/dist/index.js.map +1 -1
- package/dist/server/index.js +142 -459
- package/dist/server/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -566,7 +566,7 @@ function generateDashboardHTML(state) {
|
|
|
566
566
|
<div class="logo-icon">\u26A1</div>
|
|
567
567
|
<div class="logo-text">
|
|
568
568
|
<span class="logo-title">Float.js</span>
|
|
569
|
-
<span class="logo-version">v2.0.
|
|
569
|
+
<span class="logo-version">v2.0.4</span>
|
|
570
570
|
</div>
|
|
571
571
|
</div>
|
|
572
572
|
</div>
|
|
@@ -869,7 +869,7 @@ init_esm_shims();
|
|
|
869
869
|
|
|
870
870
|
// src/version.ts
|
|
871
871
|
init_esm_shims();
|
|
872
|
-
var VERSION = "2.0.
|
|
872
|
+
var VERSION = "2.0.4";
|
|
873
873
|
|
|
874
874
|
// src/router/index.ts
|
|
875
875
|
init_esm_shims();
|
|
@@ -1332,7 +1332,7 @@ var FLOAT_INDICATOR_SCRIPT = `
|
|
|
1332
1332
|
|
|
1333
1333
|
var indicator = document.createElement('div');
|
|
1334
1334
|
indicator.id = '__float-dev-indicator';
|
|
1335
|
-
indicator.innerHTML = '<div class="float-btn" id="float-btn"><svg width="16" height="16" viewBox="0 0 200 200" fill="none"><path d="M50 145C50 136.716 56.7157 130 65 130H105C113.284 130 120 136.716 120 145C120 153.284 113.284 160 105 160H65C56.7157 160 50 153.284 50 145Z" fill="#3B82F6"/><path d="M50 100C50 91.7157 56.7157 85 65 85H135C143.284 85 150 91.7157 150 100C150 108.284 143.284 115 135 115H65C56.7157 115 50 108.284 50 100Z" fill="#6366F1"/><path d="M50 55C50 46.7157 56.7157 40 65 40H155C163.284 40 170 46.7157 170 55C170 63.2843 163.284 70 155 70H65C56.7157 70 50 63.2843 50 55Z" fill="#8B5CF6"/></svg><span class="float-dot" id="float-dot"></span></div><div class="float-panel" id="float-panel"><div class="float-panel-header"><svg width="20" height="20" viewBox="0 0 200 200" fill="none"><path d="M50 145C50 136.716 56.7157 130 65 130H105C113.284 130 120 136.716 120 145C120 153.284 113.284 160 105 160H65C56.7157 160 50 153.284 50 145Z" fill="#3B82F6"/><path d="M50 100C50 91.7157 56.7157 85 65 85H135C143.284 85 150 91.7157 150 100C150 108.284 143.284 115 135 115H65C56.7157 115 50 108.284 50 100Z" fill="#6366F1"/><path d="M50 55C50 46.7157 56.7157 40 65 40H155C163.284 40 170 46.7157 170 55C170 63.2843 163.284 70 155 70H65C56.7157 70 50 63.2843 50 55Z" fill="#8B5CF6"/></svg><span>Float.js</span><span class="float-version">v2.0.
|
|
1335
|
+
indicator.innerHTML = '<div class="float-btn" id="float-btn"><svg width="16" height="16" viewBox="0 0 200 200" fill="none"><path d="M50 145C50 136.716 56.7157 130 65 130H105C113.284 130 120 136.716 120 145C120 153.284 113.284 160 105 160H65C56.7157 160 50 153.284 50 145Z" fill="#3B82F6"/><path d="M50 100C50 91.7157 56.7157 85 65 85H135C143.284 85 150 91.7157 150 100C150 108.284 143.284 115 135 115H65C56.7157 115 50 108.284 50 100Z" fill="#6366F1"/><path d="M50 55C50 46.7157 56.7157 40 65 40H155C163.284 40 170 46.7157 170 55C170 63.2843 163.284 70 155 70H65C56.7157 70 50 63.2843 50 55Z" fill="#8B5CF6"/></svg><span class="float-dot" id="float-dot"></span></div><div class="float-panel" id="float-panel"><div class="float-panel-header"><svg width="20" height="20" viewBox="0 0 200 200" fill="none"><path d="M50 145C50 136.716 56.7157 130 65 130H105C113.284 130 120 136.716 120 145C120 153.284 113.284 160 105 160H65C56.7157 160 50 153.284 50 145Z" fill="#3B82F6"/><path d="M50 100C50 91.7157 56.7157 85 65 85H135C143.284 85 150 91.7157 150 100C150 108.284 143.284 115 135 115H65C56.7157 115 50 108.284 50 100Z" fill="#6366F1"/><path d="M50 55C50 46.7157 56.7157 40 65 40H155C163.284 40 170 46.7157 170 55C170 63.2843 163.284 70 155 70H65C56.7157 70 50 63.2843 50 55Z" fill="#8B5CF6"/></svg><span>Float.js</span><span class="float-version">v2.0.4</span></div><div class="float-panel-body"><div class="float-row"><span class="float-label">Estado</span><span class="float-value" id="float-state">Conectando...</span></div><div class="float-row"><span class="float-label">HMR</span><span class="float-value" id="float-hmr">\u2014</span></div><div class="float-row"><span class="float-label">Build</span><span class="float-value" id="float-build">\u2014</span></div></div><div class="float-panel-footer"><a href="/__float" class="float-link">Dashboard</a><a href="https://floatjs.dev/docs" target="_blank" class="float-link">Docs</a></div></div>';
|
|
1336
1336
|
|
|
1337
1337
|
var styles = document.createElement('style');
|
|
1338
1338
|
styles.textContent = '#__float-dev-indicator{position:fixed;bottom:16px;left:16px;z-index:99999;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:13px}.float-btn{display:flex;align-items:center;gap:6px;padding:8px 10px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 2px rgba(0,0,0,0.05);cursor:pointer;transition:all 0.15s}.float-btn:hover{border-color:#d1d5db;box-shadow:0 2px 8px rgba(0,0,0,0.08)}.float-dot{width:8px;height:8px;border-radius:50%;background:#d1d5db;transition:background 0.2s}.float-dot.connected{background:#22c55e}.float-dot.error{background:#ef4444}.float-dot.building{background:#eab308;animation:blink 0.8s infinite}@keyframes blink{0%,100%{opacity:1}50%{opacity:0.4}}.float-panel{position:absolute;bottom:48px;left:0;width:240px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 4px 16px rgba(0,0,0,0.1);opacity:0;visibility:hidden;transform:translateY(8px);transition:all 0.2s ease}.float-panel.open{opacity:1;visibility:visible;transform:translateY(0)}.float-panel-header{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid #f3f4f6;font-weight:600;color:#111827}.float-version{margin-left:auto;font-size:11px;font-weight:400;color:#9ca3af}.float-panel-body{padding:8px 0}.float-row{display:flex;justify-content:space-between;padding:8px 14px}.float-label{color:#6b7280}.float-value{color:#111827;font-weight:500}.float-value.success{color:#16a34a}.float-value.error{color:#dc2626}.float-panel-footer{display:flex;gap:8px;padding:12px 14px;border-top:1px solid #f3f4f6}.float-link{flex:1;text-align:center;padding:8px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;color:#374151;text-decoration:none;font-size:12px;font-weight:500;transition:all 0.15s}.float-link:hover{background:#f3f4f6;border-color:#d1d5db}';
|
|
@@ -1764,486 +1764,169 @@ function generateWelcomePage() {
|
|
|
1764
1764
|
<meta charset="UTF-8">
|
|
1765
1765
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
1766
1766
|
<title>Welcome to Float.js</title>
|
|
1767
|
-
<link rel="icon" href="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0
|
|
1767
|
+
<link rel="icon" href="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'><defs><linearGradient id='g' x1='0%25' y1='100%25' x2='100%25' y2='0%25'><stop offset='0%25' stop-color='%233B82F6'/><stop offset='100%25' stop-color='%238B5CF6'/></linearGradient></defs><path d='M50 145C50 136.716 56.7157 130 65 130H105C113.284 130 120 136.716 120 145C120 153.284 113.284 160 105 160H65C56.7157 160 50 153.284 50 145Z' fill='url(%23g)'/><path d='M50 100C50 91.7157 56.7157 85 65 85H135C143.284 85 150 91.7157 150 100C150 108.284 143.284 115 135 115H65C56.7157 115 50 108.284 50 100Z' fill='url(%23g)'/><path d='M50 55C50 46.7157 56.7157 40 65 40H155C163.284 40 170 46.7157 170 55C170 63.2843 163.284 70 155 70H65C56.7157 70 50 63.2843 50 55Z' fill='url(%23g)'/></svg>">
|
|
1768
|
+
<script src="https://cdn.tailwindcss.com"></script>
|
|
1768
1769
|
<style>
|
|
1769
|
-
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700
|
|
1770
|
+
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');
|
|
1770
1771
|
|
|
1771
|
-
* {
|
|
1772
|
-
|
|
1773
|
-
:root {
|
|
1774
|
-
--float-purple: #8b5cf6;
|
|
1775
|
-
--float-indigo: #6366f1;
|
|
1776
|
-
--float-pink: #d946ef;
|
|
1777
|
-
--float-cyan: #06b6d4;
|
|
1778
|
-
}
|
|
1779
|
-
|
|
1780
|
-
body {
|
|
1781
|
-
font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
|
|
1782
|
-
background: #0a0a0b;
|
|
1783
|
-
color: white;
|
|
1784
|
-
min-height: 100vh;
|
|
1785
|
-
overflow-x: hidden;
|
|
1786
|
-
}
|
|
1787
|
-
|
|
1788
|
-
/* Animated background */
|
|
1789
|
-
.bg-gradient {
|
|
1790
|
-
position: fixed;
|
|
1791
|
-
inset: 0;
|
|
1792
|
-
background:
|
|
1793
|
-
radial-gradient(ellipse 80% 50% at 50% -20%, rgba(99, 102, 241, 0.3), transparent),
|
|
1794
|
-
radial-gradient(ellipse 60% 40% at 80% 60%, rgba(139, 92, 246, 0.15), transparent),
|
|
1795
|
-
radial-gradient(ellipse 40% 30% at 20% 80%, rgba(217, 70, 239, 0.1), transparent);
|
|
1796
|
-
pointer-events: none;
|
|
1797
|
-
}
|
|
1798
|
-
|
|
1799
|
-
.bg-grid {
|
|
1800
|
-
position: fixed;
|
|
1801
|
-
inset: 0;
|
|
1802
|
-
background-image:
|
|
1803
|
-
linear-gradient(rgba(255,255,255,0.02) 1px, transparent 1px),
|
|
1804
|
-
linear-gradient(90deg, rgba(255,255,255,0.02) 1px, transparent 1px);
|
|
1805
|
-
background-size: 60px 60px;
|
|
1806
|
-
pointer-events: none;
|
|
1807
|
-
}
|
|
1808
|
-
|
|
1809
|
-
/* Floating orbs */
|
|
1810
|
-
.orb {
|
|
1811
|
-
position: fixed;
|
|
1812
|
-
border-radius: 50%;
|
|
1813
|
-
filter: blur(80px);
|
|
1814
|
-
opacity: 0.5;
|
|
1815
|
-
animation: float 20s ease-in-out infinite;
|
|
1816
|
-
pointer-events: none;
|
|
1817
|
-
}
|
|
1818
|
-
|
|
1819
|
-
.orb-1 {
|
|
1820
|
-
width: 400px;
|
|
1821
|
-
height: 400px;
|
|
1822
|
-
background: var(--float-purple);
|
|
1823
|
-
top: -100px;
|
|
1824
|
-
right: -100px;
|
|
1825
|
-
animation-delay: 0s;
|
|
1826
|
-
}
|
|
1772
|
+
* { font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif; }
|
|
1827
1773
|
|
|
1828
|
-
|
|
1829
|
-
|
|
1830
|
-
|
|
1831
|
-
background: var(--float-pink);
|
|
1832
|
-
bottom: -50px;
|
|
1833
|
-
left: -50px;
|
|
1834
|
-
animation-delay: -7s;
|
|
1835
|
-
}
|
|
1836
|
-
|
|
1837
|
-
.orb-3 {
|
|
1838
|
-
width: 200px;
|
|
1839
|
-
height: 200px;
|
|
1840
|
-
background: var(--float-cyan);
|
|
1841
|
-
top: 50%;
|
|
1842
|
-
left: 50%;
|
|
1843
|
-
animation-delay: -14s;
|
|
1774
|
+
@keyframes fade-in {
|
|
1775
|
+
from { opacity: 0; transform: translateY(20px); }
|
|
1776
|
+
to { opacity: 1; transform: translateY(0); }
|
|
1844
1777
|
}
|
|
1845
1778
|
|
|
1846
1779
|
@keyframes float {
|
|
1847
|
-
0%, 100% { transform:
|
|
1848
|
-
|
|
1849
|
-
50% { transform: translate(-20px, 20px) scale(0.9); }
|
|
1850
|
-
75% { transform: translate(20px, 10px) scale(1.05); }
|
|
1851
|
-
}
|
|
1852
|
-
|
|
1853
|
-
/* Main content */
|
|
1854
|
-
.container {
|
|
1855
|
-
position: relative;
|
|
1856
|
-
max-width: 1200px;
|
|
1857
|
-
margin: 0 auto;
|
|
1858
|
-
padding: 60px 24px;
|
|
1859
|
-
min-height: 100vh;
|
|
1860
|
-
display: flex;
|
|
1861
|
-
flex-direction: column;
|
|
1862
|
-
align-items: center;
|
|
1863
|
-
justify-content: center;
|
|
1864
|
-
}
|
|
1865
|
-
|
|
1866
|
-
/* Logo */
|
|
1867
|
-
.logo {
|
|
1868
|
-
margin-bottom: 48px;
|
|
1869
|
-
animation: fadeInUp 0.8s ease-out;
|
|
1870
|
-
}
|
|
1871
|
-
|
|
1872
|
-
.logo svg {
|
|
1873
|
-
width: 80px;
|
|
1874
|
-
height: 80px;
|
|
1875
|
-
filter: drop-shadow(0 0 40px rgba(139, 92, 246, 0.5));
|
|
1876
|
-
}
|
|
1877
|
-
|
|
1878
|
-
/* Hero */
|
|
1879
|
-
.hero {
|
|
1880
|
-
text-align: center;
|
|
1881
|
-
margin-bottom: 64px;
|
|
1882
|
-
}
|
|
1883
|
-
|
|
1884
|
-
.hero h1 {
|
|
1885
|
-
font-size: clamp(48px, 10vw, 80px);
|
|
1886
|
-
font-weight: 800;
|
|
1887
|
-
letter-spacing: -0.03em;
|
|
1888
|
-
line-height: 1.1;
|
|
1889
|
-
margin-bottom: 24px;
|
|
1890
|
-
animation: fadeInUp 0.8s ease-out 0.1s both;
|
|
1891
|
-
}
|
|
1892
|
-
|
|
1893
|
-
.hero h1 .gradient {
|
|
1894
|
-
background: linear-gradient(135deg, var(--float-indigo), var(--float-purple), var(--float-pink));
|
|
1895
|
-
-webkit-background-clip: text;
|
|
1896
|
-
-webkit-text-fill-color: transparent;
|
|
1897
|
-
background-clip: text;
|
|
1898
|
-
}
|
|
1899
|
-
|
|
1900
|
-
.hero p {
|
|
1901
|
-
font-size: 20px;
|
|
1902
|
-
color: rgba(255,255,255,0.6);
|
|
1903
|
-
max-width: 600px;
|
|
1904
|
-
margin: 0 auto;
|
|
1905
|
-
line-height: 1.7;
|
|
1906
|
-
animation: fadeInUp 0.8s ease-out 0.2s both;
|
|
1907
|
-
}
|
|
1908
|
-
|
|
1909
|
-
/* Features */
|
|
1910
|
-
.features {
|
|
1911
|
-
display: grid;
|
|
1912
|
-
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
|
|
1913
|
-
gap: 20px;
|
|
1914
|
-
width: 100%;
|
|
1915
|
-
max-width: 900px;
|
|
1916
|
-
margin-bottom: 64px;
|
|
1917
|
-
}
|
|
1918
|
-
|
|
1919
|
-
.feature {
|
|
1920
|
-
background: rgba(255,255,255,0.03);
|
|
1921
|
-
border: 1px solid rgba(255,255,255,0.06);
|
|
1922
|
-
border-radius: 20px;
|
|
1923
|
-
padding: 28px;
|
|
1924
|
-
transition: all 0.3s ease;
|
|
1925
|
-
animation: fadeInUp 0.8s ease-out both;
|
|
1926
|
-
}
|
|
1927
|
-
|
|
1928
|
-
.feature:nth-child(1) { animation-delay: 0.3s; }
|
|
1929
|
-
.feature:nth-child(2) { animation-delay: 0.4s; }
|
|
1930
|
-
.feature:nth-child(3) { animation-delay: 0.5s; }
|
|
1931
|
-
|
|
1932
|
-
.feature:hover {
|
|
1933
|
-
background: rgba(255,255,255,0.05);
|
|
1934
|
-
border-color: rgba(139, 92, 246, 0.3);
|
|
1935
|
-
transform: translateY(-4px);
|
|
1936
|
-
}
|
|
1937
|
-
|
|
1938
|
-
.feature-icon {
|
|
1939
|
-
width: 48px;
|
|
1940
|
-
height: 48px;
|
|
1941
|
-
background: linear-gradient(135deg, rgba(99, 102, 241, 0.2), rgba(139, 92, 246, 0.2));
|
|
1942
|
-
border-radius: 14px;
|
|
1943
|
-
display: flex;
|
|
1944
|
-
align-items: center;
|
|
1945
|
-
justify-content: center;
|
|
1946
|
-
margin-bottom: 16px;
|
|
1947
|
-
font-size: 24px;
|
|
1948
|
-
}
|
|
1949
|
-
|
|
1950
|
-
.feature h3 {
|
|
1951
|
-
font-size: 18px;
|
|
1952
|
-
font-weight: 600;
|
|
1953
|
-
margin-bottom: 8px;
|
|
1954
|
-
}
|
|
1955
|
-
|
|
1956
|
-
.feature p {
|
|
1957
|
-
font-size: 14px;
|
|
1958
|
-
color: rgba(255,255,255,0.5);
|
|
1959
|
-
line-height: 1.6;
|
|
1960
|
-
}
|
|
1961
|
-
|
|
1962
|
-
/* Code block */
|
|
1963
|
-
.code-section {
|
|
1964
|
-
width: 100%;
|
|
1965
|
-
max-width: 600px;
|
|
1966
|
-
animation: fadeInUp 0.8s ease-out 0.6s both;
|
|
1967
|
-
margin-bottom: 48px;
|
|
1968
|
-
}
|
|
1969
|
-
|
|
1970
|
-
.code-header {
|
|
1971
|
-
background: rgba(255,255,255,0.05);
|
|
1972
|
-
border: 1px solid rgba(255,255,255,0.08);
|
|
1973
|
-
border-bottom: none;
|
|
1974
|
-
border-radius: 16px 16px 0 0;
|
|
1975
|
-
padding: 14px 20px;
|
|
1976
|
-
display: flex;
|
|
1977
|
-
align-items: center;
|
|
1978
|
-
gap: 8px;
|
|
1979
|
-
}
|
|
1980
|
-
|
|
1981
|
-
.code-dots {
|
|
1982
|
-
display: flex;
|
|
1983
|
-
gap: 6px;
|
|
1984
|
-
}
|
|
1985
|
-
|
|
1986
|
-
.code-dot {
|
|
1987
|
-
width: 12px;
|
|
1988
|
-
height: 12px;
|
|
1989
|
-
border-radius: 50%;
|
|
1990
|
-
background: rgba(255,255,255,0.1);
|
|
1991
|
-
}
|
|
1992
|
-
|
|
1993
|
-
.code-dot:nth-child(1) { background: #ff5f57; }
|
|
1994
|
-
.code-dot:nth-child(2) { background: #febc2e; }
|
|
1995
|
-
.code-dot:nth-child(3) { background: #28c840; }
|
|
1996
|
-
|
|
1997
|
-
.code-title {
|
|
1998
|
-
margin-left: auto;
|
|
1999
|
-
font-size: 12px;
|
|
2000
|
-
color: rgba(255,255,255,0.4);
|
|
2001
|
-
}
|
|
2002
|
-
|
|
2003
|
-
.code-block {
|
|
2004
|
-
background: rgba(0,0,0,0.4);
|
|
2005
|
-
border: 1px solid rgba(255,255,255,0.08);
|
|
2006
|
-
border-radius: 0 0 16px 16px;
|
|
2007
|
-
padding: 24px;
|
|
2008
|
-
font-family: 'Monaco', 'Menlo', monospace;
|
|
2009
|
-
font-size: 14px;
|
|
2010
|
-
line-height: 1.8;
|
|
2011
|
-
overflow-x: auto;
|
|
2012
|
-
}
|
|
2013
|
-
|
|
2014
|
-
.code-line {
|
|
2015
|
-
display: flex;
|
|
2016
|
-
}
|
|
2017
|
-
|
|
2018
|
-
.code-number {
|
|
2019
|
-
color: rgba(255,255,255,0.2);
|
|
2020
|
-
width: 40px;
|
|
2021
|
-
flex-shrink: 0;
|
|
2022
|
-
user-select: none;
|
|
2023
|
-
}
|
|
2024
|
-
|
|
2025
|
-
.code-content {
|
|
2026
|
-
color: rgba(255,255,255,0.8);
|
|
2027
|
-
}
|
|
2028
|
-
|
|
2029
|
-
.code-keyword { color: #c792ea; }
|
|
2030
|
-
.code-string { color: #c3e88d; }
|
|
2031
|
-
.code-function { color: #82aaff; }
|
|
2032
|
-
.code-comment { color: rgba(255,255,255,0.3); }
|
|
2033
|
-
.code-tag { color: #f07178; }
|
|
2034
|
-
.code-attr { color: #ffcb6b; }
|
|
2035
|
-
|
|
2036
|
-
/* Quick start */
|
|
2037
|
-
.quick-start {
|
|
2038
|
-
text-align: center;
|
|
2039
|
-
animation: fadeInUp 0.8s ease-out 0.7s both;
|
|
2040
|
-
}
|
|
2041
|
-
|
|
2042
|
-
.quick-start h2 {
|
|
2043
|
-
font-size: 14px;
|
|
2044
|
-
font-weight: 500;
|
|
2045
|
-
color: rgba(255,255,255,0.4);
|
|
2046
|
-
text-transform: uppercase;
|
|
2047
|
-
letter-spacing: 0.1em;
|
|
2048
|
-
margin-bottom: 20px;
|
|
2049
|
-
}
|
|
2050
|
-
|
|
2051
|
-
.quick-start-cmd {
|
|
2052
|
-
display: inline-flex;
|
|
2053
|
-
align-items: center;
|
|
2054
|
-
gap: 12px;
|
|
2055
|
-
background: rgba(255,255,255,0.05);
|
|
2056
|
-
border: 1px solid rgba(255,255,255,0.1);
|
|
2057
|
-
border-radius: 12px;
|
|
2058
|
-
padding: 16px 24px;
|
|
2059
|
-
font-family: 'Monaco', 'Menlo', monospace;
|
|
2060
|
-
font-size: 15px;
|
|
2061
|
-
cursor: pointer;
|
|
2062
|
-
transition: all 0.2s;
|
|
2063
|
-
}
|
|
2064
|
-
|
|
2065
|
-
.quick-start-cmd:hover {
|
|
2066
|
-
background: rgba(255,255,255,0.08);
|
|
2067
|
-
border-color: rgba(139, 92, 246, 0.4);
|
|
2068
|
-
}
|
|
2069
|
-
|
|
2070
|
-
.quick-start-cmd .prompt {
|
|
2071
|
-
color: var(--float-purple);
|
|
2072
|
-
}
|
|
2073
|
-
|
|
2074
|
-
.quick-start-cmd .text {
|
|
2075
|
-
color: rgba(255,255,255,0.8);
|
|
2076
|
-
}
|
|
2077
|
-
|
|
2078
|
-
.quick-start-cmd .copy {
|
|
2079
|
-
opacity: 0.4;
|
|
2080
|
-
transition: opacity 0.2s;
|
|
2081
|
-
}
|
|
2082
|
-
|
|
2083
|
-
.quick-start-cmd:hover .copy {
|
|
2084
|
-
opacity: 0.8;
|
|
2085
|
-
}
|
|
2086
|
-
|
|
2087
|
-
/* Links */
|
|
2088
|
-
.links {
|
|
2089
|
-
display: flex;
|
|
2090
|
-
gap: 24px;
|
|
2091
|
-
margin-top: 48px;
|
|
2092
|
-
animation: fadeInUp 0.8s ease-out 0.8s both;
|
|
2093
|
-
}
|
|
2094
|
-
|
|
2095
|
-
.link {
|
|
2096
|
-
color: rgba(255,255,255,0.5);
|
|
2097
|
-
text-decoration: none;
|
|
2098
|
-
font-size: 14px;
|
|
2099
|
-
display: flex;
|
|
2100
|
-
align-items: center;
|
|
2101
|
-
gap: 6px;
|
|
2102
|
-
transition: color 0.2s;
|
|
2103
|
-
}
|
|
2104
|
-
|
|
2105
|
-
.link:hover {
|
|
2106
|
-
color: var(--float-purple);
|
|
2107
|
-
}
|
|
2108
|
-
|
|
2109
|
-
/* Footer */
|
|
2110
|
-
.footer {
|
|
2111
|
-
position: absolute;
|
|
2112
|
-
bottom: 24px;
|
|
2113
|
-
font-size: 12px;
|
|
2114
|
-
color: rgba(255,255,255,0.3);
|
|
2115
|
-
animation: fadeInUp 0.8s ease-out 0.9s both;
|
|
1780
|
+
0%, 100% { transform: translateY(0); }
|
|
1781
|
+
50% { transform: translateY(-10px); }
|
|
2116
1782
|
}
|
|
2117
1783
|
|
|
2118
|
-
@keyframes
|
|
2119
|
-
|
|
2120
|
-
|
|
2121
|
-
transform: translateY(20px);
|
|
2122
|
-
}
|
|
2123
|
-
to {
|
|
2124
|
-
opacity: 1;
|
|
2125
|
-
transform: translateY(0);
|
|
2126
|
-
}
|
|
1784
|
+
@keyframes pulse-glow {
|
|
1785
|
+
0%, 100% { opacity: 0.4; }
|
|
1786
|
+
50% { opacity: 0.8; }
|
|
2127
1787
|
}
|
|
2128
1788
|
|
|
2129
|
-
|
|
2130
|
-
|
|
2131
|
-
|
|
2132
|
-
|
|
2133
|
-
|
|
2134
|
-
|
|
2135
|
-
.feature { padding: 20px; }
|
|
2136
|
-
}
|
|
1789
|
+
.animate-fade-in { animation: fade-in 0.8s ease-out forwards; }
|
|
1790
|
+
.animate-fade-in-delay { animation: fade-in 0.8s ease-out 0.2s forwards; opacity: 0; }
|
|
1791
|
+
.animate-fade-in-delay-2 { animation: fade-in 0.8s ease-out 0.4s forwards; opacity: 0; }
|
|
1792
|
+
.animate-fade-in-delay-3 { animation: fade-in 0.8s ease-out 0.6s forwards; opacity: 0; }
|
|
1793
|
+
.animate-float { animation: float 3s ease-in-out infinite; }
|
|
1794
|
+
.animate-pulse-glow { animation: pulse-glow 4s ease-in-out infinite; }
|
|
2137
1795
|
</style>
|
|
2138
1796
|
</head>
|
|
2139
|
-
<body>
|
|
2140
|
-
<div class="bg-gradient"></div>
|
|
2141
|
-
<div class="bg-grid"></div>
|
|
2142
|
-
<div class="orb orb-1"></div>
|
|
2143
|
-
<div class="orb orb-2"></div>
|
|
2144
|
-
<div class="orb orb-3"></div>
|
|
1797
|
+
<body class="bg-black text-white min-h-screen flex flex-col">
|
|
2145
1798
|
|
|
2146
|
-
|
|
2147
|
-
|
|
2148
|
-
|
|
2149
|
-
|
|
2150
|
-
|
|
2151
|
-
<stop offset="0%" stop-color="#6366f1"/>
|
|
2152
|
-
<stop offset="50%" stop-color="#8b5cf6"/>
|
|
2153
|
-
<stop offset="100%" stop-color="#d946ef"/>
|
|
2154
|
-
</linearGradient>
|
|
2155
|
-
</defs>
|
|
2156
|
-
<circle cx="40" cy="40" r="36" stroke="url(#logoGrad)" stroke-width="3" fill="none">
|
|
2157
|
-
<animateTransform attributeName="transform" type="rotate" from="0 40 40" to="360 40 40" dur="20s" repeatCount="indefinite"/>
|
|
2158
|
-
</circle>
|
|
2159
|
-
<circle cx="40" cy="40" r="28" stroke="url(#logoGrad)" stroke-width="2" fill="none" opacity="0.5">
|
|
2160
|
-
<animateTransform attributeName="transform" type="rotate" from="360 40 40" to="0 40 40" dur="15s" repeatCount="indefinite"/>
|
|
2161
|
-
</circle>
|
|
2162
|
-
<path d="M30 28 L54 40 L30 52 Z" fill="url(#logoGrad)"/>
|
|
2163
|
-
</svg>
|
|
2164
|
-
</div>
|
|
2165
|
-
|
|
2166
|
-
<div class="hero">
|
|
2167
|
-
<h1>Welcome to <span class="gradient">Float.js</span></h1>
|
|
2168
|
-
<p>Tu framework ultramoderno est\xE1 listo. Comienza a crear experiencias web incre\xEDbles con SSR, routing inteligente y desarrollo instant\xE1neo.</p>
|
|
2169
|
-
</div>
|
|
1799
|
+
<!-- Background Effects -->
|
|
1800
|
+
<div class="fixed inset-0 pointer-events-none overflow-hidden">
|
|
1801
|
+
<!-- Gradient orbs -->
|
|
1802
|
+
<div class="absolute -top-40 -right-40 w-96 h-96 bg-blue-500/20 rounded-full blur-3xl animate-pulse-glow"></div>
|
|
1803
|
+
<div class="absolute -bottom-40 -left-40 w-96 h-96 bg-violet-500/20 rounded-full blur-3xl animate-pulse-glow" style="animation-delay: 2s;"></div>
|
|
2170
1804
|
|
|
2171
|
-
|
|
2172
|
-
|
|
2173
|
-
|
|
2174
|
-
|
|
2175
|
-
|
|
2176
|
-
|
|
2177
|
-
|
|
2178
|
-
|
|
2179
|
-
|
|
2180
|
-
|
|
2181
|
-
|
|
2182
|
-
|
|
2183
|
-
|
|
2184
|
-
|
|
2185
|
-
|
|
1805
|
+
<!-- Grid pattern -->
|
|
1806
|
+
<div class="absolute inset-0 bg-[linear-gradient(rgba(255,255,255,0.02)_1px,transparent_1px),linear-gradient(90deg,rgba(255,255,255,0.02)_1px,transparent_1px)] bg-[size:64px_64px]"></div>
|
|
1807
|
+
</div>
|
|
1808
|
+
|
|
1809
|
+
<!-- Main Content -->
|
|
1810
|
+
<main class="flex-1 flex items-center justify-center px-6 relative z-10">
|
|
1811
|
+
<div class="max-w-2xl w-full text-center">
|
|
1812
|
+
|
|
1813
|
+
<!-- Logo -->
|
|
1814
|
+
<div class="animate-fade-in animate-float mb-8">
|
|
1815
|
+
<svg class="w-20 h-20 mx-auto" viewBox="0 0 200 200" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
1816
|
+
<defs>
|
|
1817
|
+
<linearGradient id="logo-gradient" x1="50" y1="160" x2="170" y2="40" gradientUnits="userSpaceOnUse">
|
|
1818
|
+
<stop stop-color="#3B82F6"/>
|
|
1819
|
+
<stop offset="1" stop-color="#8B5CF6"/>
|
|
1820
|
+
</linearGradient>
|
|
1821
|
+
</defs>
|
|
1822
|
+
<path d="M50 145C50 136.716 56.7157 130 65 130H105C113.284 130 120 136.716 120 145C120 153.284 113.284 160 105 160H65C56.7157 160 50 153.284 50 145Z" fill="url(#logo-gradient)"/>
|
|
1823
|
+
<path d="M50 100C50 91.7157 56.7157 85 65 85H135C143.284 85 150 91.7157 150 100C150 108.284 143.284 115 135 115H65C56.7157 115 50 108.284 50 100Z" fill="url(#logo-gradient)"/>
|
|
1824
|
+
<path d="M50 55C50 46.7157 56.7157 40 65 40H155C163.284 40 170 46.7157 170 55C170 63.2843 163.284 70 155 70H65C56.7157 70 50 63.2843 50 55Z" fill="url(#logo-gradient)"/>
|
|
1825
|
+
</svg>
|
|
2186
1826
|
</div>
|
|
2187
|
-
|
|
2188
|
-
|
|
2189
|
-
|
|
2190
|
-
|
|
2191
|
-
|
|
2192
|
-
|
|
2193
|
-
|
|
2194
|
-
|
|
1827
|
+
|
|
1828
|
+
<!-- Title -->
|
|
1829
|
+
<h1 class="animate-fade-in-delay text-4xl sm:text-5xl font-semibold tracking-tight mb-4">
|
|
1830
|
+
Welcome to <span class="bg-gradient-to-r from-blue-400 to-violet-400 bg-clip-text text-transparent">Float.js</span>
|
|
1831
|
+
</h1>
|
|
1832
|
+
|
|
1833
|
+
<!-- Subtitle -->
|
|
1834
|
+
<p class="animate-fade-in-delay-2 text-lg text-zinc-400 mb-12 max-w-md mx-auto">
|
|
1835
|
+
The React framework built for speed. Get started by editing your first page.
|
|
1836
|
+
</p>
|
|
1837
|
+
|
|
1838
|
+
<!-- Code Block -->
|
|
1839
|
+
<div class="animate-fade-in-delay-3 bg-zinc-900/80 backdrop-blur-sm border border-zinc-800 rounded-xl p-6 mb-8 text-left">
|
|
1840
|
+
<div class="flex items-center gap-2 mb-4">
|
|
1841
|
+
<div class="w-3 h-3 rounded-full bg-zinc-700"></div>
|
|
1842
|
+
<div class="w-3 h-3 rounded-full bg-zinc-700"></div>
|
|
1843
|
+
<div class="w-3 h-3 rounded-full bg-zinc-700"></div>
|
|
1844
|
+
<span class="ml-3 text-xs text-zinc-500 font-mono">app/page.tsx</span>
|
|
2195
1845
|
</div>
|
|
2196
|
-
<span class="
|
|
1846
|
+
<pre class="text-sm font-mono overflow-x-auto"><code><span class="text-violet-400">export default</span> <span class="text-blue-400">function</span> <span class="text-yellow-300">Page</span>() {
|
|
1847
|
+
<span class="text-violet-400">return</span> (
|
|
1848
|
+
<span class="text-zinc-500"><</span><span class="text-blue-300">h1</span><span class="text-zinc-500">></span><span class="text-zinc-300">Hello, Float.js!</span><span class="text-zinc-500"></</span><span class="text-blue-300">h1</span><span class="text-zinc-500">></span>
|
|
1849
|
+
);
|
|
1850
|
+
}</code></pre>
|
|
2197
1851
|
</div>
|
|
2198
|
-
|
|
2199
|
-
|
|
2200
|
-
|
|
2201
|
-
|
|
2202
|
-
|
|
2203
|
-
|
|
2204
|
-
|
|
2205
|
-
|
|
2206
|
-
|
|
2207
|
-
|
|
2208
|
-
|
|
2209
|
-
|
|
1852
|
+
|
|
1853
|
+
<!-- Action Buttons -->
|
|
1854
|
+
<div class="animate-fade-in-delay-3 flex flex-col sm:flex-row gap-4 justify-center">
|
|
1855
|
+
<a href="https://floatjs.dev/docs" target="_blank"
|
|
1856
|
+
class="inline-flex items-center justify-center gap-2 px-6 py-3 bg-white text-black font-medium rounded-lg hover:bg-zinc-200 transition-colors">
|
|
1857
|
+
<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
|
1858
|
+
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 6.253v13m0-13C10.832 5.477 9.246 5 7.5 5S4.168 5.477 3 6.253v13C4.168 18.477 5.754 18 7.5 18s3.332.477 4.5 1.253m0-13C13.168 5.477 14.754 5 16.5 5c1.747 0 3.332.477 4.5 1.253v13C19.832 18.477 18.247 18 16.5 18c-1.746 0-3.332.477-4.5 1.253"/>
|
|
1859
|
+
</svg>
|
|
1860
|
+
Read the Docs
|
|
1861
|
+
</a>
|
|
1862
|
+
<a href="https://github.com/float-js/float-js" target="_blank"
|
|
1863
|
+
class="inline-flex items-center justify-center gap-2 px-6 py-3 bg-zinc-900 text-white font-medium rounded-lg border border-zinc-800 hover:bg-zinc-800 hover:border-zinc-700 transition-colors">
|
|
1864
|
+
<svg class="w-4 h-4" fill="currentColor" viewBox="0 0 24 24">
|
|
1865
|
+
<path d="M12 0C5.37 0 0 5.37 0 12c0 5.31 3.435 9.795 8.205 11.385.6.105.825-.255.825-.57 0-.285-.015-1.23-.015-2.235-3.015.555-3.795-.735-4.035-1.41-.135-.345-.72-1.41-1.23-1.695-.42-.225-1.02-.78-.015-.795.945-.015 1.62.87 1.845 1.23 1.08 1.815 2.805 1.305 3.495.99.105-.78.42-1.305.765-1.605-2.67-.3-5.46-1.335-5.46-5.925 0-1.305.465-2.385 1.23-3.225-.12-.3-.54-1.53.12-3.18 0 0 1.005-.315 3.3 1.23.96-.27 1.98-.405 3-.405s2.04.135 3 .405c2.295-1.56 3.3-1.23 3.3-1.23.66 1.65.24 2.88.12 3.18.765.84 1.23 1.905 1.23 3.225 0 4.605-2.805 5.625-5.475 5.925.435.375.81 1.095.81 2.22 0 1.605-.015 2.895-.015 3.3 0 .315.225.69.825.57A12.02 12.02 0 0024 12c0-6.63-5.37-12-12-12z"/>
|
|
1866
|
+
</svg>
|
|
1867
|
+
View on GitHub
|
|
1868
|
+
</a>
|
|
1869
|
+
</div>
|
|
1870
|
+
|
|
1871
|
+
<!-- Quick Commands -->
|
|
1872
|
+
<div class="animate-fade-in-delay-3 mt-12 grid grid-cols-1 sm:grid-cols-3 gap-4 text-left">
|
|
1873
|
+
<div class="p-4 bg-zinc-900/50 border border-zinc-800/50 rounded-lg">
|
|
1874
|
+
<div class="text-xs text-zinc-500 mb-1 font-mono">Create page</div>
|
|
1875
|
+
<code class="text-sm text-zinc-300 font-mono">mkdir app && touch app/page.tsx</code>
|
|
2210
1876
|
</div>
|
|
2211
|
-
<div class="
|
|
2212
|
-
<
|
|
2213
|
-
<
|
|
1877
|
+
<div class="p-4 bg-zinc-900/50 border border-zinc-800/50 rounded-lg">
|
|
1878
|
+
<div class="text-xs text-zinc-500 mb-1 font-mono">Add route</div>
|
|
1879
|
+
<code class="text-sm text-zinc-300 font-mono">touch app/about/page.tsx</code>
|
|
2214
1880
|
</div>
|
|
2215
|
-
<div class="
|
|
2216
|
-
<
|
|
2217
|
-
<
|
|
1881
|
+
<div class="p-4 bg-zinc-900/50 border border-zinc-800/50 rounded-lg">
|
|
1882
|
+
<div class="text-xs text-zinc-500 mb-1 font-mono">API route</div>
|
|
1883
|
+
<code class="text-sm text-zinc-300 font-mono">touch app/api/route.ts</code>
|
|
2218
1884
|
</div>
|
|
2219
1885
|
</div>
|
|
1886
|
+
|
|
2220
1887
|
</div>
|
|
2221
|
-
|
|
2222
|
-
|
|
2223
|
-
|
|
2224
|
-
|
|
2225
|
-
|
|
2226
|
-
|
|
2227
|
-
|
|
1888
|
+
</main>
|
|
1889
|
+
|
|
1890
|
+
<!-- Footer -->
|
|
1891
|
+
<footer class="relative z-10 border-t border-zinc-800/50 py-8 px-6">
|
|
1892
|
+
<div class="max-w-2xl mx-auto flex flex-col sm:flex-row items-center justify-between gap-4">
|
|
1893
|
+
|
|
1894
|
+
<!-- Left: Logo + Version -->
|
|
1895
|
+
<div class="flex items-center gap-3">
|
|
1896
|
+
<svg class="w-6 h-6" viewBox="0 0 200 200" fill="none">
|
|
1897
|
+
<defs>
|
|
1898
|
+
<linearGradient id="footer-gradient" x1="50" y1="160" x2="170" y2="40" gradientUnits="userSpaceOnUse">
|
|
1899
|
+
<stop stop-color="#3B82F6"/>
|
|
1900
|
+
<stop offset="1" stop-color="#8B5CF6"/>
|
|
1901
|
+
</linearGradient>
|
|
1902
|
+
</defs>
|
|
1903
|
+
<path d="M50 145C50 136.716 56.7157 130 65 130H105C113.284 130 120 136.716 120 145C120 153.284 113.284 160 105 160H65C56.7157 160 50 153.284 50 145Z" fill="url(#footer-gradient)"/>
|
|
1904
|
+
<path d="M50 100C50 91.7157 56.7157 85 65 85H135C143.284 85 150 91.7157 150 100C150 108.284 143.284 115 135 115H65C56.7157 115 50 108.284 50 100Z" fill="url(#footer-gradient)"/>
|
|
1905
|
+
<path d="M50 55C50 46.7157 56.7157 40 65 40H155C163.284 40 170 46.7157 170 55C170 63.2843 163.284 70 155 70H65C56.7157 70 50 63.2843 50 55Z" fill="url(#footer-gradient)"/>
|
|
1906
|
+
</svg>
|
|
1907
|
+
<span class="text-sm text-zinc-500">Float.js v2.0.4</span>
|
|
2228
1908
|
</div>
|
|
1909
|
+
|
|
1910
|
+
<!-- Center: Creator Info -->
|
|
1911
|
+
<div class="text-center">
|
|
1912
|
+
<p class="text-sm text-zinc-400">
|
|
1913
|
+
Created by <span class="text-white font-medium">Peter Fulle</span>
|
|
1914
|
+
</p>
|
|
1915
|
+
<a href="mailto:prfulle@gmail.com" class="text-xs text-zinc-500 hover:text-zinc-400 transition-colors">
|
|
1916
|
+
prfulle@gmail.com
|
|
1917
|
+
</a>
|
|
1918
|
+
</div>
|
|
1919
|
+
|
|
1920
|
+
<!-- Right: Links -->
|
|
1921
|
+
<div class="flex items-center gap-4">
|
|
1922
|
+
<a href="https://floatjs.dev" target="_blank" class="text-sm text-zinc-500 hover:text-white transition-colors">Docs</a>
|
|
1923
|
+
<a href="https://github.com/float-js/float-js" target="_blank" class="text-sm text-zinc-500 hover:text-white transition-colors">GitHub</a>
|
|
1924
|
+
<a href="https://x.com/floatjs" target="_blank" class="text-sm text-zinc-500 hover:text-white transition-colors">Twitter</a>
|
|
1925
|
+
</div>
|
|
1926
|
+
|
|
2229
1927
|
</div>
|
|
2230
|
-
|
|
2231
|
-
|
|
2232
|
-
<a href="https://floatjs.dev/docs" target="_blank" class="link">
|
|
2233
|
-
<span>\u{1F4D6}</span> Documentaci\xF3n
|
|
2234
|
-
</a>
|
|
2235
|
-
<a href="https://github.com/floatjs/float" target="_blank" class="link">
|
|
2236
|
-
<span>\u2B50</span> GitHub
|
|
2237
|
-
</a>
|
|
2238
|
-
<a href="https://floatjs.dev/examples" target="_blank" class="link">
|
|
2239
|
-
<span>\u{1F3A8}</span> Ejemplos
|
|
2240
|
-
</a>
|
|
2241
|
-
</div>
|
|
2242
|
-
|
|
2243
|
-
<div class="footer">
|
|
2244
|
-
Float.js v2.0.1 \u2014 Made with \u26A1 for the modern web
|
|
2245
|
-
</div>
|
|
2246
|
-
</div>
|
|
1928
|
+
</footer>
|
|
1929
|
+
|
|
2247
1930
|
</body>
|
|
2248
1931
|
</html>`;
|
|
2249
1932
|
}
|