@tecof/theme-editor 0.0.26 → 0.0.28

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/styles.css CHANGED
@@ -104,6 +104,7 @@
104
104
  display: flex;
105
105
  align-items: center;
106
106
  gap: 8px;
107
+ min-width: 0;
107
108
  }
108
109
 
109
110
  .tecof-color-swatch {
@@ -136,6 +137,7 @@
136
137
 
137
138
  .tecof-color-hex-input {
138
139
  flex: 1;
140
+ min-width: 0;
139
141
  padding: 8px 12px;
140
142
  font-size: 14px;
141
143
  line-height: 1.5;
@@ -148,6 +150,8 @@
148
150
  letter-spacing: 0.5px;
149
151
  box-sizing: border-box;
150
152
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
153
+ overflow: hidden;
154
+ text-overflow: ellipsis;
151
155
  }
152
156
 
153
157
  .tecof-color-hex-input:focus {
@@ -1797,4 +1801,234 @@
1797
1801
  .tecof-field-error-retry:hover {
1798
1802
  background: #fef2f2;
1799
1803
  border-color: #f87171;
1804
+ }
1805
+
1806
+ /* ─── RepeaterField ─── */
1807
+
1808
+ .tecof-repeater-container {
1809
+ width: 100%;
1810
+ font-family: 'Inter', system-ui, -apple-system, sans-serif;
1811
+ }
1812
+
1813
+ .tecof-repeater-header {
1814
+ display: flex;
1815
+ align-items: center;
1816
+ justify-content: space-between;
1817
+ margin-bottom: 8px;
1818
+ }
1819
+
1820
+ .tecof-repeater-count {
1821
+ font-size: 11px;
1822
+ font-weight: 500;
1823
+ color: #a1a1aa;
1824
+ letter-spacing: 0.02em;
1825
+ }
1826
+
1827
+ /* ── Empty State ── */
1828
+
1829
+ .tecof-repeater-empty {
1830
+ display: flex;
1831
+ flex-direction: column;
1832
+ align-items: center;
1833
+ gap: 10px;
1834
+ padding: 24px 16px;
1835
+ background: #fafafa;
1836
+ border: 1px dashed #e4e4e7;
1837
+ border-radius: 10px;
1838
+ text-align: center;
1839
+ }
1840
+
1841
+ .tecof-repeater-empty-text {
1842
+ font-size: 12px;
1843
+ color: #a1a1aa;
1844
+ margin: 0;
1845
+ }
1846
+
1847
+ /* ── Rows ── */
1848
+
1849
+ .tecof-repeater-rows {
1850
+ display: flex;
1851
+ flex-direction: column;
1852
+ gap: 4px;
1853
+ }
1854
+
1855
+ .tecof-repeater-row {
1856
+ border: 1px solid #e4e4e7;
1857
+ border-radius: 10px;
1858
+ background: #ffffff;
1859
+ overflow: hidden;
1860
+ transition: border-color 0.2s ease, box-shadow 0.2s ease;
1861
+ }
1862
+
1863
+ .tecof-repeater-row:hover {
1864
+ border-color: #d4d4d8;
1865
+ }
1866
+
1867
+ .tecof-repeater-row.expanded {
1868
+ border-color: var(--tecof-primary-500, #3b82f6);
1869
+ box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.08);
1870
+ }
1871
+
1872
+ /* ── Row Header ── */
1873
+
1874
+ .tecof-repeater-row-header {
1875
+ display: flex;
1876
+ align-items: center;
1877
+ justify-content: space-between;
1878
+ padding: 8px 12px;
1879
+ cursor: pointer;
1880
+ user-select: none;
1881
+ transition: background-color 0.15s ease;
1882
+ min-height: 40px;
1883
+ }
1884
+
1885
+ .tecof-repeater-row-header:hover {
1886
+ background-color: #fafafa;
1887
+ }
1888
+
1889
+ .tecof-repeater-row-left {
1890
+ display: flex;
1891
+ align-items: center;
1892
+ gap: 8px;
1893
+ min-width: 0;
1894
+ flex: 1;
1895
+ }
1896
+
1897
+ .tecof-repeater-grip {
1898
+ color: #d4d4d8;
1899
+ flex-shrink: 0;
1900
+ cursor: grab;
1901
+ }
1902
+
1903
+ .tecof-repeater-row-index {
1904
+ display: inline-flex;
1905
+ align-items: center;
1906
+ justify-content: center;
1907
+ width: 20px;
1908
+ height: 20px;
1909
+ font-size: 10px;
1910
+ font-weight: 700;
1911
+ color: var(--tecof-primary-600, #2563eb);
1912
+ background: var(--tecof-primary-50, #eff6ff);
1913
+ border-radius: 6px;
1914
+ flex-shrink: 0;
1915
+ }
1916
+
1917
+ .tecof-repeater-row-preview {
1918
+ font-size: 13px;
1919
+ font-weight: 500;
1920
+ color: #3f3f46;
1921
+ white-space: nowrap;
1922
+ overflow: hidden;
1923
+ text-overflow: ellipsis;
1924
+ min-width: 0;
1925
+ }
1926
+
1927
+ /* ── Row Actions ── */
1928
+
1929
+ .tecof-repeater-row-actions {
1930
+ display: flex;
1931
+ align-items: center;
1932
+ gap: 2px;
1933
+ flex-shrink: 0;
1934
+ margin-left: 8px;
1935
+ }
1936
+
1937
+ .tecof-repeater-action-btn {
1938
+ display: inline-flex;
1939
+ align-items: center;
1940
+ justify-content: center;
1941
+ width: 26px;
1942
+ height: 26px;
1943
+ background: none;
1944
+ border: none;
1945
+ border-radius: 6px;
1946
+ cursor: pointer;
1947
+ color: #a1a1aa;
1948
+ font-size: 10px;
1949
+ transition: all 0.15s ease;
1950
+ padding: 0;
1951
+ }
1952
+
1953
+ .tecof-repeater-action-btn:hover {
1954
+ background-color: #f4f4f5;
1955
+ color: #52525b;
1956
+ }
1957
+
1958
+ .tecof-repeater-action-btn-danger:hover {
1959
+ background-color: #fef2f2;
1960
+ color: #ef4444;
1961
+ }
1962
+
1963
+ /* ── Chevron ── */
1964
+
1965
+ .tecof-repeater-chevron {
1966
+ color: #a1a1aa;
1967
+ transition: transform 0.2s ease;
1968
+ flex-shrink: 0;
1969
+ }
1970
+
1971
+ .tecof-repeater-chevron.rotated {
1972
+ transform: rotate(180deg);
1973
+ }
1974
+
1975
+ /* ── Row Content (expanded sub-fields) ── */
1976
+
1977
+ .tecof-repeater-row-content {
1978
+ padding: 12px 14px 16px;
1979
+ border-top: 1px solid #f4f4f5;
1980
+ display: flex;
1981
+ flex-direction: column;
1982
+ gap: 12px;
1983
+ background: #fafbfc;
1984
+ }
1985
+
1986
+ .tecof-repeater-subfield {
1987
+ width: 100%;
1988
+ }
1989
+
1990
+ /* ── Add Buttons ── */
1991
+
1992
+ .tecof-repeater-add-btn {
1993
+ display: inline-flex;
1994
+ align-items: center;
1995
+ gap: 6px;
1996
+ padding: 8px 16px;
1997
+ font-size: 12px;
1998
+ font-weight: 600;
1999
+ color: var(--tecof-primary-600, #2563eb);
2000
+ background: var(--tecof-primary-50, #eff6ff);
2001
+ border: 1px solid var(--tecof-primary-200, #bfdbfe);
2002
+ border-radius: 8px;
2003
+ cursor: pointer;
2004
+ transition: all 0.15s ease;
2005
+ }
2006
+
2007
+ .tecof-repeater-add-btn:hover {
2008
+ background: var(--tecof-primary-100, #dbeafe);
2009
+ border-color: var(--tecof-primary-300, #93c5fd);
2010
+ }
2011
+
2012
+ .tecof-repeater-add-btn-bottom {
2013
+ display: flex;
2014
+ align-items: center;
2015
+ justify-content: center;
2016
+ gap: 6px;
2017
+ width: 100%;
2018
+ padding: 8px;
2019
+ margin-top: 6px;
2020
+ font-size: 12px;
2021
+ font-weight: 500;
2022
+ color: #a1a1aa;
2023
+ background: none;
2024
+ border: 1px dashed #e4e4e7;
2025
+ border-radius: 8px;
2026
+ cursor: pointer;
2027
+ transition: all 0.15s ease;
2028
+ }
2029
+
2030
+ .tecof-repeater-add-btn-bottom:hover {
2031
+ color: var(--tecof-primary-600, #2563eb);
2032
+ border-color: var(--tecof-primary-400, #60a5fa);
2033
+ background: var(--tecof-primary-50, #eff6ff);
1800
2034
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tecof/theme-editor",
3
- "version": "0.0.26",
3
+ "version": "0.0.28",
4
4
  "description": "React theme editor library for Tecof projects",
5
5
  "keywords": [
6
6
  "react",