@websolutespa/bom-mixer-llm 1.8.5 → 1.8.7
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/CHANGELOG.md +12 -0
- package/dist/cjs/index.css +133 -36
- package/dist/cjs/index.js +100 -51
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/index.css +133 -36
- package/dist/esm/llm/components/Font/font.js +45 -0
- package/dist/esm/llm/components/Font/font.js.map +1 -0
- package/dist/esm/llm/components/Intro/intro.js +1 -1
- package/dist/esm/llm/components/Product/product.js +11 -31
- package/dist/esm/llm/components/Product/product.js.map +1 -1
- package/dist/esm/llm/components/ProductGroup/product-group.js +1 -1
- package/dist/esm/llm/components/ProductGroup/product-group.js.map +1 -1
- package/dist/esm/llm/components/Text/text.js.map +1 -1
- package/dist/esm/llm/components/Trigger/trigger.js +2 -2
- package/dist/esm/llm/components/Trigger/trigger.js.map +1 -1
- package/dist/esm/llm/llm.js +4 -3
- package/dist/esm/llm/llm.js.map +1 -1
- package/dist/esm/llm/theme.json.js +46 -14
- package/dist/esm/llm/theme.json.js.map +1 -1
- package/dist/types/llm/components/Font/font.d.ts +3 -0
- package/dist/types/llm/components/Font/font.d.ts.map +1 -0
- package/dist/types/llm/components/Product/product.d.ts.map +1 -1
- package/dist/types/llm/components/Text/text.d.ts.map +1 -1
- package/dist/types/llm/llm.d.ts.map +1 -1
- package/dist/types/llm/theme.d.ts +36 -8
- package/dist/types/llm/theme.d.ts.map +1 -1
- package/dist/types/useLlm/mock-app.gs1.d.ts +3 -0
- package/dist/types/useLlm/mock-app.gs1.d.ts.map +1 -0
- package/dist/types/useLlm/mock-app.lfo.d.ts.map +1 -1
- package/dist/types/useLlm/mock-app.silicon.d.ts.map +1 -1
- package/dist/types/useLlm/mock-thread.gs1.d.ts +3 -0
- package/dist/types/useLlm/mock-thread.gs1.d.ts.map +1 -0
- package/package.json +1 -1
- package/src/llm/components/Font/font.tsx +55 -0
- package/src/llm/components/Grid/_style.scss +14 -11
- package/src/llm/components/Header/_style.scss +1 -1
- package/src/llm/components/Hints/_style.scss +5 -2
- package/src/llm/components/Intro/_style.scss +1 -0
- package/src/llm/components/Intro/intro.tsx +1 -1
- package/src/llm/components/Product/_style.scss +6 -4
- package/src/llm/components/Product/product.tsx +11 -25
- package/src/llm/components/ProductGroup/product-group.tsx +1 -1
- package/src/llm/components/Prompt/_style.scss +9 -3
- package/src/llm/components/Text/_style.scss +13 -8
- package/src/llm/components/Text/text.tsx +2 -0
- package/src/llm/components/Trigger/_style.scss +6 -5
- package/src/llm/components/Trigger/trigger.tsx +2 -2
- package/src/llm/llm.tsx +2 -0
- package/src/llm/scss/_fonts.scss +2 -0
- package/src/llm/theme.json +38 -10
- package/src/useLlm/mock-app.gs1.ts +244 -0
- package/src/useLlm/mock-app.lfo.ts +2 -13
- package/src/useLlm/mock-app.silicon.ts +2 -1
- package/src/useLlm/mock-thread.gs1.ts +122 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @websolutespa/bom-mixer-llm
|
|
2
2
|
|
|
3
|
+
## 1.8.7
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Modified: theme settings, Added: Font component
|
|
8
|
+
|
|
9
|
+
## 1.8.6
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- Modified: Product Card & Product Card Group style
|
|
14
|
+
|
|
3
15
|
## 1.8.5
|
|
4
16
|
|
|
5
17
|
### Patch Changes
|
package/dist/cjs/index.css
CHANGED
|
@@ -1,33 +1,43 @@
|
|
|
1
|
-
|
|
2
|
-
@import url(
|
|
1
|
+
/*
|
|
2
|
+
@import url('https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,200..1000;1,200..1000&display=swap');
|
|
3
|
+
@import url('https://fonts.googleapis.com/css2?family=Work+Sans:ital,wght@0,100..900;1,100..900&display=swap');
|
|
4
|
+
|
|
3
5
|
@font-face {
|
|
4
|
-
font-family:
|
|
5
|
-
src:
|
|
6
|
+
font-family: 'Aeonik';
|
|
7
|
+
src:
|
|
8
|
+
url('https://design.wslabs.it/llm/fonts/Aeonik-Medium.woff2') format('woff2'),
|
|
9
|
+
url('https://design.wslabs.it/llm/fonts/Aeonik-Medium.woff2') format('woff');
|
|
6
10
|
font-weight: 500;
|
|
7
11
|
font-style: normal;
|
|
8
12
|
font-display: swap;
|
|
9
13
|
}
|
|
14
|
+
|
|
10
15
|
@font-face {
|
|
11
|
-
font-family:
|
|
12
|
-
src:
|
|
16
|
+
font-family: 'Aeonik';
|
|
17
|
+
src:
|
|
18
|
+
url('https://design.wslabs.it/llm/fonts/Aeonik-Bold.woff2') format('woff2'),
|
|
19
|
+
url('https://design.wslabs.it/llm/fonts/Aeonik-Bold.woff') format('woff');
|
|
13
20
|
font-weight: 700;
|
|
14
21
|
font-style: normal;
|
|
15
22
|
font-display: swap;
|
|
16
23
|
}
|
|
24
|
+
|
|
17
25
|
@font-face {
|
|
18
|
-
font-family:
|
|
19
|
-
src: url(
|
|
26
|
+
font-family: 'Capraia';
|
|
27
|
+
src: url('https://design.wslabs.it/llm/fonts/Capraia-Regular.woff2') format('woff2');
|
|
20
28
|
font-style: normal;
|
|
21
29
|
font-weight: 400;
|
|
22
30
|
font-display: swap;
|
|
23
31
|
}
|
|
32
|
+
|
|
24
33
|
@font-face {
|
|
25
|
-
font-family:
|
|
26
|
-
src: url(
|
|
34
|
+
font-family: 'Capraia';
|
|
35
|
+
src: url('https://design.wslabs.it/llm/fonts/Capraia-Light_W.woff2') format('woff2');
|
|
27
36
|
font-weight: 300;
|
|
28
37
|
font-style: normal;
|
|
29
38
|
font-display: swap;
|
|
30
39
|
}
|
|
40
|
+
*/
|
|
31
41
|
/*
|
|
32
42
|
@font-face {
|
|
33
43
|
font-family: 'Capraia';
|
|
@@ -881,16 +891,16 @@ llm-embed {
|
|
|
881
891
|
}
|
|
882
892
|
}
|
|
883
893
|
@media (hover: hover) {
|
|
884
|
-
.llm .llm__trigger-btn--hover:hover + .llm__trigger-
|
|
894
|
+
.llm .llm__trigger-btn--hover:hover + .llm__trigger-popup > div {
|
|
885
895
|
opacity: 0;
|
|
886
896
|
translate: -50% 10%;
|
|
887
897
|
}
|
|
888
|
-
.llm .llm__trigger-btn--hover:hover + .llm__trigger-
|
|
898
|
+
.llm .llm__trigger-btn--hover:hover + .llm__trigger-popup > div + div {
|
|
889
899
|
opacity: 1;
|
|
890
900
|
translate: -50% 0%;
|
|
891
901
|
}
|
|
892
902
|
}
|
|
893
|
-
.llm .llm__trigger-
|
|
903
|
+
.llm .llm__trigger-popup > div {
|
|
894
904
|
position: absolute;
|
|
895
905
|
padding: clamp(16px, 16px + (100vw - 375px) / 1545 * 8, 24px);
|
|
896
906
|
width: calc(100vw - 40px);
|
|
@@ -900,23 +910,24 @@ llm-embed {
|
|
|
900
910
|
translate: -50% 0%;
|
|
901
911
|
border-radius: 12px;
|
|
902
912
|
text-align: center;
|
|
903
|
-
background: var(--llm-
|
|
904
|
-
color: var(--llm-
|
|
913
|
+
background: var(--llm-popup-background);
|
|
914
|
+
color: var(--llm-popup-foreground);
|
|
915
|
+
border: var(--llm-popup-border, none);
|
|
905
916
|
transition: 0.4s;
|
|
906
917
|
pointer-events: auto;
|
|
907
918
|
overflow: hidden;
|
|
908
919
|
cursor: pointer;
|
|
909
920
|
}
|
|
910
|
-
.llm .llm__trigger-
|
|
921
|
+
.llm .llm__trigger-popup > div > span {
|
|
911
922
|
position: relative;
|
|
912
923
|
}
|
|
913
|
-
.llm .llm__trigger-
|
|
924
|
+
.llm .llm__trigger-popup > div + div {
|
|
914
925
|
width: calc(100vw - 40px);
|
|
915
926
|
max-width: var(--llm-popup-max-width);
|
|
916
927
|
translate: -50% 10%;
|
|
917
928
|
opacity: 0;
|
|
918
929
|
}
|
|
919
|
-
.llm .llm__trigger-
|
|
930
|
+
.llm .llm__trigger-cta {
|
|
920
931
|
position: relative;
|
|
921
932
|
display: block;
|
|
922
933
|
margin: 12px auto 0 auto;
|
|
@@ -1169,7 +1180,7 @@ llm-embed {
|
|
|
1169
1180
|
gap: clamp(8px, 8px + (100vw - 375px) / 1545 * 0, 8px);
|
|
1170
1181
|
text-transform: uppercase;
|
|
1171
1182
|
user-select: none;
|
|
1172
|
-
color: var(--llm-color-foreground);
|
|
1183
|
+
color: var(--llm-color-title-foreground);
|
|
1173
1184
|
pointer-events: auto;
|
|
1174
1185
|
cursor: pointer;
|
|
1175
1186
|
}
|
|
@@ -1245,6 +1256,7 @@ llm-embed {
|
|
|
1245
1256
|
display: flex;
|
|
1246
1257
|
flex-direction: column;
|
|
1247
1258
|
gap: clamp(24px, 24px + (100vw - 375px) / 1545 * 16, 40px);
|
|
1259
|
+
color: var(--llm-color-title-foreground);
|
|
1248
1260
|
}
|
|
1249
1261
|
.llm .llm__intro-hints {
|
|
1250
1262
|
margin-top: clamp(24px, 24px + (100vw - 375px) / 1545 * 16, 40px);
|
|
@@ -1310,11 +1322,14 @@ llm-embed {
|
|
|
1310
1322
|
align-items: center;
|
|
1311
1323
|
gap: clamp(8px, 8px + (100vw - 375px) / 1545 * 8, 16px);
|
|
1312
1324
|
text-transform: uppercase;
|
|
1325
|
+
color: var(--llm-hint-title-color, inherit);
|
|
1313
1326
|
}
|
|
1314
1327
|
.llm .llm__hint-title i {
|
|
1328
|
+
flex-shrink: 0;
|
|
1315
1329
|
display: block;
|
|
1316
|
-
width: 18px;
|
|
1317
|
-
height: 18px;
|
|
1330
|
+
width: var(--llm-hint-icon-width, 18px);
|
|
1331
|
+
height: var(--llm-hint-icon-height, 18px);
|
|
1332
|
+
color: var(--llm-hint-icon-color, inherit);
|
|
1318
1333
|
}
|
|
1319
1334
|
.llm .llm__hint-title i svg {
|
|
1320
1335
|
fill: currentColor;
|
|
@@ -1327,7 +1342,7 @@ llm-embed {
|
|
|
1327
1342
|
gap: clamp(8px, 8px + (100vw - 375px) / 1545 * 0, 8px);
|
|
1328
1343
|
display: flex;
|
|
1329
1344
|
flex-wrap: nowrap;
|
|
1330
|
-
align-items:
|
|
1345
|
+
align-items: center;
|
|
1331
1346
|
}
|
|
1332
1347
|
.llm .llm__prompt-input {
|
|
1333
1348
|
position: relative;
|
|
@@ -1492,15 +1507,21 @@ llm-embed {
|
|
|
1492
1507
|
justify-content: center;
|
|
1493
1508
|
align-items: center;
|
|
1494
1509
|
column-gap: 4px;
|
|
1495
|
-
padding: 6px 0;
|
|
1496
1510
|
right: 0;
|
|
1497
1511
|
left: 0;
|
|
1498
|
-
font-size: 12px;
|
|
1499
1512
|
color: var(--llm-color-foreground);
|
|
1500
1513
|
opacity: 0.4;
|
|
1501
1514
|
transition: opacity ease-in-out 250ms;
|
|
1502
1515
|
pointer-events: auto;
|
|
1503
1516
|
cursor: pointer;
|
|
1517
|
+
padding: 4px 0 0 0;
|
|
1518
|
+
font-size: 11px;
|
|
1519
|
+
}
|
|
1520
|
+
@media (min-width: 1024px) {
|
|
1521
|
+
.llm .llm__prompt-powered-by {
|
|
1522
|
+
padding: 6px 0;
|
|
1523
|
+
font-size: 12px;
|
|
1524
|
+
}
|
|
1504
1525
|
}
|
|
1505
1526
|
.llm .llm__prompt-powered-by:hover {
|
|
1506
1527
|
opacity: 1;
|
|
@@ -1513,8 +1534,9 @@ llm-embed {
|
|
|
1513
1534
|
line-height: var(--llm-typography-body1-line-height);
|
|
1514
1535
|
letter-spacing: var(--llm-typography-body1-letter-spacing);
|
|
1515
1536
|
font-size: clamp(var(--llm-typography-body1-font-size-min) * 1px, var(--llm-typography-body1-font-size-min) * 1px + (100vw - 375px) / 1545 * (var(--llm-typography-body1-font-size-max) - var(--llm-typography-body1-font-size-min)), var(--llm-typography-body1-font-size-max) * 1px);
|
|
1516
|
-
background:
|
|
1517
|
-
|
|
1537
|
+
background: var(--llm-user-background);
|
|
1538
|
+
color: var(--llm-user-foreground);
|
|
1539
|
+
border: var(--llm-user-border);
|
|
1518
1540
|
backdrop-filter: blur(20px);
|
|
1519
1541
|
border-radius: 12px;
|
|
1520
1542
|
padding: clamp(16px, 16px + (100vw - 375px) / 1545 * 8, 24px) clamp(24px, 24px + (100vw - 375px) / 1545 * 8, 32px);
|
|
@@ -1537,6 +1559,9 @@ llm-embed {
|
|
|
1537
1559
|
}
|
|
1538
1560
|
.llm .llm__message--assistant .llm__inner--string .llm__text .llm__text-body {
|
|
1539
1561
|
font-family: var(--llm-font-primary);
|
|
1562
|
+
background: var(--llm-assistant-background);
|
|
1563
|
+
color: var(--llm-assistant-foreground);
|
|
1564
|
+
border: var(--llm-assistant-border);
|
|
1540
1565
|
/*
|
|
1541
1566
|
&,
|
|
1542
1567
|
p {
|
|
@@ -1612,7 +1637,7 @@ llm-embed {
|
|
|
1612
1637
|
}
|
|
1613
1638
|
.llm .llm__message--assistant .llm__inner--string .llm__text .llm__text-body b,
|
|
1614
1639
|
.llm .llm__message--assistant .llm__inner--string .llm__text .llm__text-body strong {
|
|
1615
|
-
font-weight:
|
|
1640
|
+
font-weight: var(--llm-typography-cta2-font-weight);
|
|
1616
1641
|
}
|
|
1617
1642
|
.llm .llm__message--assistant .llm__inner--string .llm__text .llm__text-body h1,
|
|
1618
1643
|
.llm .llm__message--assistant .llm__inner--string .llm__text .llm__text-body h2,
|
|
@@ -1648,11 +1673,11 @@ llm-embed {
|
|
|
1648
1673
|
.llm .llm__message--assistant .llm__inner--string .llm__text .llm__text-body blockquote {
|
|
1649
1674
|
margin-bottom: var(--llm-markdown-margin-bottom);
|
|
1650
1675
|
padding-left: 0.5em;
|
|
1651
|
-
border-left:
|
|
1676
|
+
border-left: var(--llm-markdown-border);
|
|
1652
1677
|
}
|
|
1653
1678
|
.llm .llm__message--assistant .llm__inner--string .llm__text .llm__text-body hr {
|
|
1654
1679
|
border: none;
|
|
1655
|
-
border-top:
|
|
1680
|
+
border-top: var(--llm-markdown-border);
|
|
1656
1681
|
margin-top: var(--llm-markdown-margin-top);
|
|
1657
1682
|
margin-bottom: var(--llm-markdown-margin-bottom);
|
|
1658
1683
|
}
|
|
@@ -1660,13 +1685,13 @@ llm-embed {
|
|
|
1660
1685
|
text-decoration: underline;
|
|
1661
1686
|
}
|
|
1662
1687
|
.llm .llm__message--assistant .llm__inner--string .llm__text .llm__text-body a:link, .llm .llm__message--assistant .llm__inner--string .llm__text .llm__text-body a:active, .llm .llm__message--assistant .llm__inner--string .llm__text .llm__text-body a:visited, .llm .llm__message--assistant .llm__inner--string .llm__text .llm__text-body a:hover {
|
|
1663
|
-
color: var(--llm-
|
|
1688
|
+
color: var(--llm-markdown-accent);
|
|
1664
1689
|
}
|
|
1665
1690
|
.llm .llm__message--assistant .llm__inner--string .llm__text .llm__text-body img {
|
|
1666
1691
|
max-width: 320px;
|
|
1667
1692
|
padding: 8px;
|
|
1668
1693
|
border-radius: 8px;
|
|
1669
|
-
border: var(--llm-
|
|
1694
|
+
border: var(--llm-markdown-border);
|
|
1670
1695
|
}
|
|
1671
1696
|
.llm .llm__message--assistant .llm__inner--string .llm__text .llm__text-body .llm__text-img {
|
|
1672
1697
|
display: block;
|
|
@@ -1697,6 +1722,7 @@ llm-embed {
|
|
|
1697
1722
|
display: flex;
|
|
1698
1723
|
gap: clamp(8px, 8px + (100vw - 375px) / 1545 * 8, 16px);
|
|
1699
1724
|
padding-top: clamp(16px, 16px + (100vw - 375px) / 1545 * 8, 24px);
|
|
1725
|
+
color: var(--llm-color-foreground);
|
|
1700
1726
|
}
|
|
1701
1727
|
.llm .llm__text-disclaimer a {
|
|
1702
1728
|
text-decoration: underline;
|
|
@@ -1706,6 +1732,7 @@ llm-embed {
|
|
|
1706
1732
|
width: 18px;
|
|
1707
1733
|
height: 18px;
|
|
1708
1734
|
flex-shrink: 0;
|
|
1735
|
+
color: var(--llm-color-accent-foreground);
|
|
1709
1736
|
}
|
|
1710
1737
|
.llm .llm__text-disclaimer i svg {
|
|
1711
1738
|
display: block;
|
|
@@ -2079,13 +2106,19 @@ llm-embed {
|
|
|
2079
2106
|
.llm .llm__gridrow {
|
|
2080
2107
|
--grid-columns: var(--llm-grid-columns, 12);
|
|
2081
2108
|
--grid-size: var(--llm-grid-size, 1fr);
|
|
2082
|
-
--grid-column-gap: var(--llm-grid-column-gap,
|
|
2083
|
-
--grid-row-gap: var(--llm-grid-row-gap,
|
|
2109
|
+
--grid-column-gap: var(--llm-grid-column-gap, 1rem);
|
|
2110
|
+
--grid-row-gap: var(--llm-grid-row-gap, 1rem);
|
|
2084
2111
|
display: grid;
|
|
2085
2112
|
grid-template-columns: repeat(var(--grid-columns), var(--grid-size));
|
|
2086
2113
|
grid-column-gap: var(--grid-column-gap);
|
|
2087
2114
|
grid-row-gap: var(--grid-row-gap);
|
|
2088
2115
|
}
|
|
2116
|
+
@media (min-width: 768px) {
|
|
2117
|
+
.llm .llm__gridrow {
|
|
2118
|
+
--grid-column-gap: var(--llm-grid-column-gap, 2rem);
|
|
2119
|
+
--grid-row-gap: var(--llm-grid-row-gap, 2rem);
|
|
2120
|
+
}
|
|
2121
|
+
}
|
|
2089
2122
|
.llm .llm__grid {
|
|
2090
2123
|
--grid-column: var(--llm-grid-columns, 12);
|
|
2091
2124
|
grid-column: span var(--grid-column);
|
|
@@ -2102,6 +2135,30 @@ llm-embed {
|
|
|
2102
2135
|
.llm .llm__grid.--xs-4 {
|
|
2103
2136
|
--grid-column: 4;
|
|
2104
2137
|
}
|
|
2138
|
+
.llm .llm__grid.--xs-5 {
|
|
2139
|
+
--grid-column: 5;
|
|
2140
|
+
}
|
|
2141
|
+
.llm .llm__grid.--xs-6 {
|
|
2142
|
+
--grid-column: 6;
|
|
2143
|
+
}
|
|
2144
|
+
.llm .llm__grid.--xs-7 {
|
|
2145
|
+
--grid-column: 7;
|
|
2146
|
+
}
|
|
2147
|
+
.llm .llm__grid.--xs-8 {
|
|
2148
|
+
--grid-column: 8;
|
|
2149
|
+
}
|
|
2150
|
+
.llm .llm__grid.--xs-9 {
|
|
2151
|
+
--grid-column: 9;
|
|
2152
|
+
}
|
|
2153
|
+
.llm .llm__grid.--xs-10 {
|
|
2154
|
+
--grid-column: 10;
|
|
2155
|
+
}
|
|
2156
|
+
.llm .llm__grid.--xs-11 {
|
|
2157
|
+
--grid-column: 11;
|
|
2158
|
+
}
|
|
2159
|
+
.llm .llm__grid.--xs-12 {
|
|
2160
|
+
--grid-column: 12;
|
|
2161
|
+
}
|
|
2105
2162
|
@media (min-width: 768px) {
|
|
2106
2163
|
.llm .llm__grid.--sm-1 {
|
|
2107
2164
|
--grid-column: 1;
|
|
@@ -2122,6 +2179,46 @@ llm-embed {
|
|
|
2122
2179
|
--grid-column: 4;
|
|
2123
2180
|
}
|
|
2124
2181
|
}
|
|
2182
|
+
@media (min-width: 768px) {
|
|
2183
|
+
.llm .llm__grid.--sm-5 {
|
|
2184
|
+
--grid-column: 5;
|
|
2185
|
+
}
|
|
2186
|
+
}
|
|
2187
|
+
@media (min-width: 768px) {
|
|
2188
|
+
.llm .llm__grid.--sm-6 {
|
|
2189
|
+
--grid-column: 6;
|
|
2190
|
+
}
|
|
2191
|
+
}
|
|
2192
|
+
@media (min-width: 768px) {
|
|
2193
|
+
.llm .llm__grid.--sm-7 {
|
|
2194
|
+
--grid-column: 7;
|
|
2195
|
+
}
|
|
2196
|
+
}
|
|
2197
|
+
@media (min-width: 768px) {
|
|
2198
|
+
.llm .llm__grid.--sm-8 {
|
|
2199
|
+
--grid-column: 8;
|
|
2200
|
+
}
|
|
2201
|
+
}
|
|
2202
|
+
@media (min-width: 768px) {
|
|
2203
|
+
.llm .llm__grid.--sm-9 {
|
|
2204
|
+
--grid-column: 9;
|
|
2205
|
+
}
|
|
2206
|
+
}
|
|
2207
|
+
@media (min-width: 768px) {
|
|
2208
|
+
.llm .llm__grid.--sm-10 {
|
|
2209
|
+
--grid-column: 10;
|
|
2210
|
+
}
|
|
2211
|
+
}
|
|
2212
|
+
@media (min-width: 768px) {
|
|
2213
|
+
.llm .llm__grid.--sm-11 {
|
|
2214
|
+
--grid-column: 11;
|
|
2215
|
+
}
|
|
2216
|
+
}
|
|
2217
|
+
@media (min-width: 768px) {
|
|
2218
|
+
.llm .llm__grid.--sm-12 {
|
|
2219
|
+
--grid-column: 12;
|
|
2220
|
+
}
|
|
2221
|
+
}
|
|
2125
2222
|
@media (min-width: 1024px) {
|
|
2126
2223
|
.llm .llm__grid.--md-1 {
|
|
2127
2224
|
--grid-column: 1;
|
|
@@ -2315,6 +2412,9 @@ llm-embed {
|
|
|
2315
2412
|
overflow: hidden;
|
|
2316
2413
|
font-weight: 100;
|
|
2317
2414
|
}
|
|
2415
|
+
.llm .llm__product:hover .llm__product-title {
|
|
2416
|
+
text-decoration: underline;
|
|
2417
|
+
}
|
|
2318
2418
|
.llm .llm__product-media {
|
|
2319
2419
|
position: relative;
|
|
2320
2420
|
padding: 1rem;
|
|
@@ -2380,9 +2480,6 @@ llm-embed {
|
|
|
2380
2480
|
-webkit-line-clamp: 2;
|
|
2381
2481
|
-webkit-box-orient: vertical;
|
|
2382
2482
|
}
|
|
2383
|
-
.llm .llm__product-title:hover {
|
|
2384
|
-
text-decoration: underline;
|
|
2385
|
-
}
|
|
2386
2483
|
.llm .llm__product-abstract {
|
|
2387
2484
|
line-height: 1;
|
|
2388
2485
|
font-family: var(--llm-font-secondary);
|
package/dist/cjs/index.js
CHANGED
|
@@ -159,7 +159,8 @@ typeof SuppressedError === "function" ? SuppressedError : function (error, suppr
|
|
|
159
159
|
|
|
160
160
|
var font = {
|
|
161
161
|
primary: "Aeonik, Arial, Helvetica, sans-serif",
|
|
162
|
-
secondary: "Capraia, Georgia, serif"
|
|
162
|
+
secondary: "Capraia, Georgia, serif",
|
|
163
|
+
source: "<link rel=\"stylesheet\" href=\"https://design.wslabs.it/llm/fonts/aeonik.css\"><link rel=\"stylesheet\" href=\"https://design.wslabs.it/llm/fonts/capraia.css\">"
|
|
163
164
|
};
|
|
164
165
|
var typography = {
|
|
165
166
|
display1: {
|
|
@@ -321,6 +322,10 @@ var color = {
|
|
|
321
322
|
},
|
|
322
323
|
background: "var(--llm-color-base-100)",
|
|
323
324
|
foreground: "var(--llm-color-neutral-100)",
|
|
325
|
+
title: {
|
|
326
|
+
background: "var(--llm-color-background)",
|
|
327
|
+
foreground: "var(--llm-color-foreground)"
|
|
328
|
+
},
|
|
324
329
|
primary: {
|
|
325
330
|
background: "var(--llm-color-base-200)",
|
|
326
331
|
foreground: "var(--llm-color-neutral-100)"
|
|
@@ -347,13 +352,16 @@ var trigger = {
|
|
|
347
352
|
foreground: "var(--llm-color-base-100)",
|
|
348
353
|
boxShadow: "0 0 30px rgba(0, 0, 0, 0.3)"
|
|
349
354
|
};
|
|
355
|
+
var popup = {
|
|
356
|
+
maxWidth: "210px",
|
|
357
|
+
background: "var(--llm-color-title-background)",
|
|
358
|
+
foreground: "var(--llm-color-title-foreground)",
|
|
359
|
+
border: "none"
|
|
360
|
+
};
|
|
350
361
|
var triggerCta = {
|
|
351
362
|
background: "var(--llm-color-neutral-100)",
|
|
352
363
|
foreground: "var(--llm-color-base-100)"
|
|
353
364
|
};
|
|
354
|
-
var popup = {
|
|
355
|
-
maxWidth: "210px"
|
|
356
|
-
};
|
|
357
365
|
var hint = {
|
|
358
366
|
fontFamily: "var(--llm-font-primary)",
|
|
359
367
|
background: "linear-gradient(rgba(154, 154, 154, 0.2) 10%, rgba(221, 221, 221, 0.1) 80%)",
|
|
@@ -361,10 +369,18 @@ var hint = {
|
|
|
361
369
|
border: "1px solid rgba(237, 237, 237, 0.3)",
|
|
362
370
|
borderRadius: "12px"
|
|
363
371
|
};
|
|
372
|
+
var hintTitle = {
|
|
373
|
+
color: "var(--llm-color-foreground)"
|
|
374
|
+
};
|
|
375
|
+
var hintIcon = {
|
|
376
|
+
width: "18px",
|
|
377
|
+
height: "18px",
|
|
378
|
+
color: "var(--llm-color-foreground)"
|
|
379
|
+
};
|
|
364
380
|
var pill = {
|
|
365
381
|
fontFamily: "var(--llm-font-primary)",
|
|
366
382
|
background: "rgba(255, 255, 255, 0.2)",
|
|
367
|
-
foreground: "var(--llm-color-foreground)",
|
|
383
|
+
foreground: "var(--llm-color-title-foreground)",
|
|
368
384
|
border: "1px solid rgba(237, 237, 237, 0.3)",
|
|
369
385
|
borderRadius: "5px"
|
|
370
386
|
};
|
|
@@ -377,6 +393,23 @@ var input = {
|
|
|
377
393
|
var checkbox = {
|
|
378
394
|
border: "2px solid var(--llm-color-neutral-100)"
|
|
379
395
|
};
|
|
396
|
+
var user = {
|
|
397
|
+
background: "linear-gradient(rgba(154, 154, 154, 0.2) 10%, rgba(221, 221, 221, 0.1) 80%)",
|
|
398
|
+
foreground: "var(--llm-color-title-foreground)",
|
|
399
|
+
border: "1px solid rgba(237, 237, 237, 0.3)"
|
|
400
|
+
};
|
|
401
|
+
var assistant = {
|
|
402
|
+
background: "none",
|
|
403
|
+
foreground: "var(--llm-color-foreground)",
|
|
404
|
+
border: "none"
|
|
405
|
+
};
|
|
406
|
+
var markdown = {
|
|
407
|
+
marginTop: "0.5rem",
|
|
408
|
+
marginBottom: "1rem",
|
|
409
|
+
marginLeft: "1rem",
|
|
410
|
+
accent: "var(--llm-color-foreground)",
|
|
411
|
+
border: "1px solid rgba(237, 237, 237, 0.3)"
|
|
412
|
+
};
|
|
380
413
|
var card = {
|
|
381
414
|
background: "var(--llm-color-neutral-100)",
|
|
382
415
|
foreground: "var(--llm-color-neutral-900)",
|
|
@@ -397,11 +430,6 @@ var productLabel = {
|
|
|
397
430
|
background: "var(--llm-color-neutral-100)",
|
|
398
431
|
foreground: "var(--llm-color-neutral-900)"
|
|
399
432
|
};
|
|
400
|
-
var markdown = {
|
|
401
|
-
marginTop: "0.5rem",
|
|
402
|
-
marginBottom: "1rem",
|
|
403
|
-
marginLeft: "1rem"
|
|
404
|
-
};
|
|
405
433
|
var theme = {
|
|
406
434
|
font: font,
|
|
407
435
|
typography: typography,
|
|
@@ -409,17 +437,21 @@ var theme = {
|
|
|
409
437
|
border: border,
|
|
410
438
|
canvas: canvas,
|
|
411
439
|
trigger: trigger,
|
|
412
|
-
triggerCta: triggerCta,
|
|
413
440
|
popup: popup,
|
|
441
|
+
triggerCta: triggerCta,
|
|
414
442
|
hint: hint,
|
|
443
|
+
hintTitle: hintTitle,
|
|
444
|
+
hintIcon: hintIcon,
|
|
415
445
|
pill: pill,
|
|
416
446
|
input: input,
|
|
417
447
|
checkbox: checkbox,
|
|
448
|
+
user: user,
|
|
449
|
+
assistant: assistant,
|
|
450
|
+
markdown: markdown,
|
|
418
451
|
card: card,
|
|
419
452
|
cardVideo: cardVideo,
|
|
420
453
|
product: product,
|
|
421
|
-
productLabel: productLabel
|
|
422
|
-
markdown: markdown
|
|
454
|
+
productLabel: productLabel
|
|
423
455
|
};
|
|
424
456
|
|
|
425
457
|
const defaultTheme = theme;
|
|
@@ -3177,6 +3209,43 @@ const useCanvasOffscreen = canvasRef => {
|
|
|
3177
3209
|
}, [canvasOffscreen, canvasRef, pixelRatio]);
|
|
3178
3210
|
};
|
|
3179
3211
|
|
|
3212
|
+
const Font = () => {
|
|
3213
|
+
const app = useLlm(state => state.app);
|
|
3214
|
+
const theme = useLlm(state => state.theme);
|
|
3215
|
+
react.useEffect(() => {
|
|
3216
|
+
if (app && bomCore.isBrowser) {
|
|
3217
|
+
const head = document.querySelector('head');
|
|
3218
|
+
if (head) {
|
|
3219
|
+
const fontId = uuid.v4();
|
|
3220
|
+
const htmlText = theme.font.source || `
|
|
3221
|
+
<link rel="stylesheet" href="https://design.wslabs.it/llm/fonts/aeonik.css">
|
|
3222
|
+
<link rel="stylesheet" href="https://design.wslabs.it/llm/fonts/capraia.css">
|
|
3223
|
+
`;
|
|
3224
|
+
const parser = new DOMParser();
|
|
3225
|
+
const parsedDocument = parser.parseFromString(htmlText, 'text/html');
|
|
3226
|
+
const nodes = Array.from(parsedDocument.querySelectorAll('head>*'));
|
|
3227
|
+
const selector = `llm-font-${fontId}`;
|
|
3228
|
+
nodes.forEach(node => {
|
|
3229
|
+
node.classList.add(selector);
|
|
3230
|
+
head.appendChild(node);
|
|
3231
|
+
console.log('[mixer-llm] added font node', node);
|
|
3232
|
+
});
|
|
3233
|
+
return () => {
|
|
3234
|
+
const addedNodes = Array.from(document.querySelectorAll(`.${selector}`));
|
|
3235
|
+
addedNodes.forEach(node => {
|
|
3236
|
+
if (node.parentNode) {
|
|
3237
|
+
node.parentNode.removeChild(node);
|
|
3238
|
+
console.log('[mixer-llm] removed font node', node);
|
|
3239
|
+
}
|
|
3240
|
+
});
|
|
3241
|
+
};
|
|
3242
|
+
}
|
|
3243
|
+
}
|
|
3244
|
+
return () => {};
|
|
3245
|
+
}, [app]);
|
|
3246
|
+
return jsxRuntime.jsx(jsxRuntime.Fragment, {});
|
|
3247
|
+
};
|
|
3248
|
+
|
|
3180
3249
|
function Canvas() {
|
|
3181
3250
|
const ref = react.useRef(null);
|
|
3182
3251
|
useCanvasOffscreen(ref);
|
|
@@ -3540,7 +3609,7 @@ const Intro = () => {
|
|
|
3540
3609
|
})
|
|
3541
3610
|
}), jsxRuntime.jsx(framerMotion.motion.div, {
|
|
3542
3611
|
variants: motionItem,
|
|
3543
|
-
className: "llm__intro-title -llm-t-display-
|
|
3612
|
+
className: "llm__intro-title -llm-t-display-2",
|
|
3544
3613
|
children: app === null || app === void 0 ? void 0 : app.contents.extendedWelcomeText
|
|
3545
3614
|
})]
|
|
3546
3615
|
}), jsxRuntime.jsx(framerMotion.motion.div, {
|
|
@@ -4846,7 +4915,14 @@ const ProductWrapper = _a => {
|
|
|
4846
4915
|
props = __rest(_a, ["children"]);
|
|
4847
4916
|
// const label = useLabel();
|
|
4848
4917
|
const classNames = bomCore.getClassNames('llm__product', `llm__product--${props.productType}`);
|
|
4849
|
-
return jsxRuntime.jsx("
|
|
4918
|
+
return props.url ? jsxRuntime.jsx("a", {
|
|
4919
|
+
className: classNames,
|
|
4920
|
+
href: props.url,
|
|
4921
|
+
target: "_blank",
|
|
4922
|
+
rel: "noreferrer",
|
|
4923
|
+
"aria-label": props.title,
|
|
4924
|
+
children: children
|
|
4925
|
+
}) : jsxRuntime.jsx("div", {
|
|
4850
4926
|
className: classNames,
|
|
4851
4927
|
children: children
|
|
4852
4928
|
});
|
|
@@ -4864,12 +4940,8 @@ const Product = props => {
|
|
|
4864
4940
|
const hasAvailability = props.availability != null;
|
|
4865
4941
|
const labelKey = props.label ? `-${transliteration.slugify(props.label)}` : '';
|
|
4866
4942
|
return jsxRuntime.jsxs(ProductWrapper, Object.assign({}, props, {
|
|
4867
|
-
children: [props.media.type === 'image' &&
|
|
4943
|
+
children: [props.media.type === 'image' && jsxRuntime.jsxs("div", {
|
|
4868
4944
|
className: "llm__product-media",
|
|
4869
|
-
href: props.url,
|
|
4870
|
-
target: "_blank",
|
|
4871
|
-
rel: "noreferrer",
|
|
4872
|
-
"aria-label": label('llm.tellMeMore'),
|
|
4873
4945
|
children: [jsxRuntime.jsx("div", {
|
|
4874
4946
|
className: "llm__product-asset",
|
|
4875
4947
|
children: jsxRuntime.jsx("img", {
|
|
@@ -4884,18 +4956,6 @@ const Product = props => {
|
|
|
4884
4956
|
},
|
|
4885
4957
|
children: props.label
|
|
4886
4958
|
})]
|
|
4887
|
-
}), props.media.type === 'image' && !props.url && jsxRuntime.jsxs("div", {
|
|
4888
|
-
className: "llm__product-media",
|
|
4889
|
-
children: [jsxRuntime.jsx("div", {
|
|
4890
|
-
className: "llm__product-asset",
|
|
4891
|
-
children: jsxRuntime.jsx("img", {
|
|
4892
|
-
src: props.media.src,
|
|
4893
|
-
alt: props.title
|
|
4894
|
-
})
|
|
4895
|
-
}), props.label && jsxRuntime.jsx("div", {
|
|
4896
|
-
className: "llm__product-label",
|
|
4897
|
-
children: props.label
|
|
4898
|
-
})]
|
|
4899
4959
|
}), jsxRuntime.jsxs("div", {
|
|
4900
4960
|
className: "llm__product-content",
|
|
4901
4961
|
children: [props.sku && jsxRuntime.jsx("div", {
|
|
@@ -4903,15 +4963,7 @@ const Product = props => {
|
|
|
4903
4963
|
children: props.sku
|
|
4904
4964
|
}), jsxRuntime.jsxs("div", {
|
|
4905
4965
|
className: "llm__product-grow",
|
|
4906
|
-
children: [props.title &&
|
|
4907
|
-
className: "llm__product-title",
|
|
4908
|
-
href: props.url,
|
|
4909
|
-
target: "_blank",
|
|
4910
|
-
rel: "noreferrer",
|
|
4911
|
-
dangerouslySetInnerHTML: {
|
|
4912
|
-
__html: props.title
|
|
4913
|
-
}
|
|
4914
|
-
}), props.title && !props.url && jsxRuntime.jsx("div", {
|
|
4966
|
+
children: [props.title && jsxRuntime.jsx("div", {
|
|
4915
4967
|
className: "llm__product-title",
|
|
4916
4968
|
dangerouslySetInnerHTML: {
|
|
4917
4969
|
__html: props.title
|
|
@@ -4939,11 +4991,8 @@ const Product = props => {
|
|
|
4939
4991
|
}) : jsxRuntime.jsx("div", {
|
|
4940
4992
|
className: "llm__product-soldout",
|
|
4941
4993
|
children: label('llm.soldOut')
|
|
4942
|
-
})), props.cta &&
|
|
4994
|
+
})), props.cta && jsxRuntime.jsxs("div", {
|
|
4943
4995
|
className: "llm__product-cta",
|
|
4944
|
-
href: props.url,
|
|
4945
|
-
target: "_blank",
|
|
4946
|
-
rel: "noreferrer",
|
|
4947
4996
|
children: [jsxRuntime.jsx("span", {
|
|
4948
4997
|
children: props.cta
|
|
4949
4998
|
}), " ", jsxRuntime.jsx(bomMixerIcons.IconLlmChevronRightCircle, {})]
|
|
@@ -4979,7 +5028,7 @@ const ProductGroup = props => {
|
|
|
4979
5028
|
children: jsxRuntime.jsx(GridRow, {
|
|
4980
5029
|
rowGap: "2rem",
|
|
4981
5030
|
children: props.items.map((item, i) => jsxRuntime.jsx(Grid, {
|
|
4982
|
-
|
|
5031
|
+
xs: 6,
|
|
4983
5032
|
md: 4,
|
|
4984
5033
|
lg: 3,
|
|
4985
5034
|
children: jsxRuntime.jsx(Product, Object.assign({}, item))
|
|
@@ -5341,7 +5390,7 @@ const Trigger = () => {
|
|
|
5341
5390
|
children: label('llm.button')
|
|
5342
5391
|
})]
|
|
5343
5392
|
}), !opened && jsxRuntime.jsxs("div", {
|
|
5344
|
-
className: "llm__trigger-
|
|
5393
|
+
className: "llm__trigger-popup -llm-t-body-2",
|
|
5345
5394
|
children: [jsxRuntime.jsxs(framerMotion.motion.div, {
|
|
5346
5395
|
exit: {
|
|
5347
5396
|
opacity: 0
|
|
@@ -5350,7 +5399,7 @@ const Trigger = () => {
|
|
|
5350
5399
|
text: app === null || app === void 0 ? void 0 : app.contents.collapsedWelcomeText
|
|
5351
5400
|
}), (app === null || app === void 0 ? void 0 : app.contents.collapsedWelcomeTextCta) && jsxRuntime.jsx("button", {
|
|
5352
5401
|
type: "button",
|
|
5353
|
-
className: "llm__trigger-
|
|
5402
|
+
className: "llm__trigger-cta",
|
|
5354
5403
|
children: app === null || app === void 0 ? void 0 : app.contents.collapsedWelcomeTextCta
|
|
5355
5404
|
})]
|
|
5356
5405
|
}), (app === null || app === void 0 ? void 0 : app.contents.collapsedWelcomeTextHover) && jsxRuntime.jsxs(framerMotion.motion.div, {
|
|
@@ -5413,8 +5462,8 @@ const LlmComponent = /*#__PURE__*/react.forwardRef((props, ref) => {
|
|
|
5413
5462
|
});
|
|
5414
5463
|
if (mounted) {
|
|
5415
5464
|
return jsxRuntime.jsx(jsxRuntime.Fragment, {
|
|
5416
|
-
children: app && jsxRuntime.
|
|
5417
|
-
children: jsxRuntime.jsxs("div", Object.assign({
|
|
5465
|
+
children: app && jsxRuntime.jsxs(CanvasOffscreenProvider, {
|
|
5466
|
+
children: [jsxRuntime.jsx(Font, {}), jsxRuntime.jsxs("div", Object.assign({
|
|
5418
5467
|
ref: innerRef,
|
|
5419
5468
|
className: classNames
|
|
5420
5469
|
}, props, {
|
|
@@ -5427,7 +5476,7 @@ const LlmComponent = /*#__PURE__*/react.forwardRef((props, ref) => {
|
|
|
5427
5476
|
initial: false,
|
|
5428
5477
|
children: shouldShowTrigger && jsxRuntime.jsx(Trigger, {}, "trigger")
|
|
5429
5478
|
})]
|
|
5430
|
-
}))
|
|
5479
|
+
}))]
|
|
5431
5480
|
})
|
|
5432
5481
|
});
|
|
5433
5482
|
} else {
|