@proyecto-viviana/ui 0.4.0 → 0.5.0
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 +0 -3
- package/dist/vite.d.ts +1 -0
- package/dist/vite.d.ts.map +1 -1
- package/dist/vite.js +9 -1
- package/dist/vite.js.map +1 -1
- package/dist/vite.jsx +9 -1
- package/dist/vite.jsx.map +1 -1
- package/dist/viviana-tokens.css +240 -171
- package/package.json +3 -57
- package/src/vite.ts +13 -1
- package/src/viviana-tokens.css +240 -171
- package/dist/CalendarCard.d.ts +0 -2
- package/dist/CalendarCard.d.ts.map +0 -1
- package/dist/CalendarCard.js +0 -97
- package/dist/CalendarCard.js.map +0 -1
- package/dist/CalendarCard.jsx +0 -51
- package/dist/CalendarCard.jsx.map +0 -1
- package/dist/Chip.d.ts +0 -2
- package/dist/Chip.d.ts.map +0 -1
- package/dist/Chip.js +0 -2
- package/dist/Chip.jsx +0 -2
- package/dist/Conversation.d.ts +0 -2
- package/dist/Conversation.d.ts.map +0 -1
- package/dist/Conversation.js +0 -177
- package/dist/Conversation.js.map +0 -1
- package/dist/Conversation.jsx +0 -107
- package/dist/Conversation.jsx.map +0 -1
- package/dist/EventCard.d.ts +0 -2
- package/dist/EventCard.d.ts.map +0 -1
- package/dist/EventCard.js +0 -173
- package/dist/EventCard.js.map +0 -1
- package/dist/EventCard.jsx +0 -96
- package/dist/EventCard.jsx.map +0 -1
- package/dist/Logo.d.ts +0 -2
- package/dist/Logo.d.ts.map +0 -1
- package/dist/Logo.js +0 -116
- package/dist/Logo.js.map +0 -1
- package/dist/Logo.jsx +0 -101
- package/dist/Logo.jsx.map +0 -1
- package/dist/PageLayout.d.ts +0 -2
- package/dist/PageLayout.d.ts.map +0 -1
- package/dist/PageLayout.js +0 -31
- package/dist/PageLayout.js.map +0 -1
- package/dist/PageLayout.jsx +0 -23
- package/dist/PageLayout.jsx.map +0 -1
- package/dist/ProfileCard.d.ts +0 -2
- package/dist/ProfileCard.d.ts.map +0 -1
- package/dist/ProfileCard.js +0 -78
- package/dist/ProfileCard.js.map +0 -1
- package/dist/ProfileCard.jsx +0 -53
- package/dist/ProfileCard.jsx.map +0 -1
- package/dist/ProjectCard.d.ts +0 -2
- package/dist/ProjectCard.d.ts.map +0 -1
- package/dist/ProjectCard.js +0 -164
- package/dist/ProjectCard.js.map +0 -1
- package/dist/ProjectCard.jsx +0 -133
- package/dist/ProjectCard.jsx.map +0 -1
- package/dist/TimelineItem.d.ts +0 -2
- package/dist/TimelineItem.d.ts.map +0 -1
- package/dist/TimelineItem.js +0 -137
- package/dist/TimelineItem.js.map +0 -1
- package/dist/TimelineItem.jsx +0 -70
- package/dist/TimelineItem.jsx.map +0 -1
- package/dist/chip2.js +0 -82
- package/dist/chip2.js.map +0 -1
- package/dist/chip2.jsx +0 -68
- package/dist/chip2.jsx.map +0 -1
- package/dist/custom/calendar-card/index.d.ts +0 -12
- package/dist/custom/calendar-card/index.d.ts.map +0 -1
- package/dist/custom/chip/index.d.ts +0 -16
- package/dist/custom/chip/index.d.ts.map +0 -1
- package/dist/custom/conversation/index.d.ts +0 -32
- package/dist/custom/conversation/index.d.ts.map +0 -1
- package/dist/custom/event-card/index.d.ts +0 -30
- package/dist/custom/event-card/index.d.ts.map +0 -1
- package/dist/custom/header/index.d.ts +0 -12
- package/dist/custom/header/index.d.ts.map +0 -1
- package/dist/custom/lateral-nav/index.d.ts +0 -32
- package/dist/custom/lateral-nav/index.d.ts.map +0 -1
- package/dist/custom/logo/index.d.ts +0 -11
- package/dist/custom/logo/index.d.ts.map +0 -1
- package/dist/custom/nav-header/index.d.ts +0 -13
- package/dist/custom/nav-header/index.d.ts.map +0 -1
- package/dist/custom/page-layout/index.d.ts +0 -7
- package/dist/custom/page-layout/index.d.ts.map +0 -1
- package/dist/custom/profile-card/index.d.ts +0 -16
- package/dist/custom/profile-card/index.d.ts.map +0 -1
- package/dist/custom/project-card/index.d.ts +0 -13
- package/dist/custom/project-card/index.d.ts.map +0 -1
- package/dist/custom/timeline-item/index.d.ts +0 -28
- package/dist/custom/timeline-item/index.d.ts.map +0 -1
- package/src/CalendarCard.ts +0 -1
- package/src/Chip.ts +0 -1
- package/src/Conversation.ts +0 -1
- package/src/EventCard.ts +0 -1
- package/src/Logo.ts +0 -1
- package/src/PageLayout.ts +0 -1
- package/src/ProfileCard.ts +0 -1
- package/src/ProjectCard.ts +0 -1
- package/src/TimelineItem.ts +0 -1
- package/src/custom/calendar-card/index.tsx +0 -115
- package/src/custom/chip/index.tsx +0 -78
- package/src/custom/conversation/index.tsx +0 -199
- package/src/custom/event-card/index.tsx +0 -232
- package/src/custom/header/index.tsx +0 -64
- package/src/custom/lateral-nav/index.tsx +0 -134
- package/src/custom/logo/index.tsx +0 -53
- package/src/custom/nav-header/index.tsx +0 -98
- package/src/custom/page-layout/index.tsx +0 -33
- package/src/custom/profile-card/index.tsx +0 -114
- package/src/custom/project-card/index.tsx +0 -76
- package/src/custom/timeline-item/index.tsx +0 -140
package/dist/ProjectCard.js
DELETED
|
@@ -1,164 +0,0 @@
|
|
|
1
|
-
import { className, effect, getNextElement, insert, setAttribute, template } from "solid-js/web";
|
|
2
|
-
//#region src/custom/project-card/index.tsx
|
|
3
|
-
var _tmpl$ = /*#__PURE__*/ template(`<img class=" Za13 fa13 _Ha13 oa13 na13 ka13 ja13">`), _tmpl$2 = /*#__PURE__*/ template(`<span>`), _tmpl$3 = /*#__PURE__*/ template(`<a target=_blank rel="noopener noreferrer">`), _tmpl$4 = /*#__PURE__*/ template(`<div>`);
|
|
4
|
-
const card = function anonymous(props) {
|
|
5
|
-
let rules = " ";
|
|
6
|
-
rules += " sd13";
|
|
7
|
-
rules += " _ta13";
|
|
8
|
-
rules += " eb13";
|
|
9
|
-
rules += " Ue13";
|
|
10
|
-
rules += " qe13";
|
|
11
|
-
rules += " Za13";
|
|
12
|
-
rules += " oc13";
|
|
13
|
-
rules += " nc13";
|
|
14
|
-
rules += " kc13";
|
|
15
|
-
rules += " jc13";
|
|
16
|
-
rules += " _kb13";
|
|
17
|
-
rules += " hb13";
|
|
18
|
-
rules += " mb13";
|
|
19
|
-
rules += " lb13";
|
|
20
|
-
rules += " _jf13";
|
|
21
|
-
rules += " izfTM513";
|
|
22
|
-
rules += " gDE5VE13";
|
|
23
|
-
rules += " pXDQpyb13";
|
|
24
|
-
rules += " _Xa13";
|
|
25
|
-
if (props.size === "lg") rules += " Tg13";
|
|
26
|
-
else if (props.size === "md") rules += " Tf13";
|
|
27
|
-
else if (props.size === "sm") rules += " Te13";
|
|
28
|
-
if (props.size === "lg") rules += " Qg13";
|
|
29
|
-
else if (props.size === "md") rules += " Qf13";
|
|
30
|
-
else if (props.size === "sm") rules += " Qe13";
|
|
31
|
-
if (props.size === "lg") rules += " Sg13";
|
|
32
|
-
else if (props.size === "md") rules += " Sf13";
|
|
33
|
-
else if (props.size === "sm") rules += " Se13";
|
|
34
|
-
if (props.size === "lg") rules += " Rg13";
|
|
35
|
-
else if (props.size === "md") rules += " Rf13";
|
|
36
|
-
else if (props.size === "sm") rules += " Re13";
|
|
37
|
-
if (props.isInactive) rules += " _IqmMfn13";
|
|
38
|
-
else rules += " _Ib13";
|
|
39
|
-
return rules;
|
|
40
|
-
};
|
|
41
|
-
const caption = function anonymous(props) {
|
|
42
|
-
let rules = " ";
|
|
43
|
-
rules += " Za13";
|
|
44
|
-
rules += " _Wa13";
|
|
45
|
-
rules += " _Nc13";
|
|
46
|
-
rules += " Pc13";
|
|
47
|
-
rules += " _Yb13";
|
|
48
|
-
rules += " _7c13";
|
|
49
|
-
if (props.size === "lg") rules += " pt13";
|
|
50
|
-
else if (props.size === "md") rules += " pt13";
|
|
51
|
-
else if (props.size === "sm") rules += " pt13";
|
|
52
|
-
if (props.size === "lg") {
|
|
53
|
-
rules += " uk13";
|
|
54
|
-
rules += " ucJ9TBTb13";
|
|
55
|
-
rules += " ud3Euai13";
|
|
56
|
-
rules += " uea13";
|
|
57
|
-
rules += " ugb13";
|
|
58
|
-
rules += " uhd13";
|
|
59
|
-
rules += " uje13";
|
|
60
|
-
rules += " u2NhKxcl13";
|
|
61
|
-
rules += " uic13";
|
|
62
|
-
} else if (props.size === "md") {
|
|
63
|
-
rules += " uk13";
|
|
64
|
-
rules += " ucJ9TBTb13";
|
|
65
|
-
rules += " ud3Euai13";
|
|
66
|
-
rules += " uea13";
|
|
67
|
-
rules += " ugb13";
|
|
68
|
-
rules += " uhd13";
|
|
69
|
-
rules += " uje13";
|
|
70
|
-
rules += " u2NhKxcl13";
|
|
71
|
-
rules += " uic13";
|
|
72
|
-
} else if (props.size === "sm") {
|
|
73
|
-
rules += " uk13";
|
|
74
|
-
rules += " ucJ9TBTb13";
|
|
75
|
-
rules += " ud3Euai13";
|
|
76
|
-
rules += " uea13";
|
|
77
|
-
rules += " ugb13";
|
|
78
|
-
rules += " uhd13";
|
|
79
|
-
rules += " uje13";
|
|
80
|
-
rules += " u2NhKxcl13";
|
|
81
|
-
rules += " uic13";
|
|
82
|
-
}
|
|
83
|
-
if (props.size === "lg") {
|
|
84
|
-
rules += " -_6BNtrc-d13";
|
|
85
|
-
rules += " vx13";
|
|
86
|
-
} else if (props.size === "md") {
|
|
87
|
-
rules += " -_6BNtrc-c13";
|
|
88
|
-
rules += " vx13";
|
|
89
|
-
} else if (props.size === "sm") {
|
|
90
|
-
rules += " -_6BNtrc-b13";
|
|
91
|
-
rules += " vx13";
|
|
92
|
-
}
|
|
93
|
-
if (props.size === "lg") {
|
|
94
|
-
rules += " xb13";
|
|
95
|
-
rules += " _xa13";
|
|
96
|
-
} else if (props.size === "md") {
|
|
97
|
-
rules += " xb13";
|
|
98
|
-
rules += " _xa13";
|
|
99
|
-
} else if (props.size === "sm") {
|
|
100
|
-
rules += " xb13";
|
|
101
|
-
rules += " _xa13";
|
|
102
|
-
}
|
|
103
|
-
if (props.size === "lg") {
|
|
104
|
-
rules += " _Fd13";
|
|
105
|
-
rules += " _FnuYUweb13";
|
|
106
|
-
} else if (props.size === "md") {
|
|
107
|
-
rules += " _Fd13";
|
|
108
|
-
rules += " _FnuYUweb13";
|
|
109
|
-
} else if (props.size === "sm") {
|
|
110
|
-
rules += " _Fd13";
|
|
111
|
-
rules += " _FnuYUweb13";
|
|
112
|
-
}
|
|
113
|
-
return rules;
|
|
114
|
-
};
|
|
115
|
-
function ProjectCard(props) {
|
|
116
|
-
const size = () => props.size ?? "sm";
|
|
117
|
-
const inactive = () => props.inactive ?? false;
|
|
118
|
-
const cardContent = () => [(() => {
|
|
119
|
-
var _el$ = getNextElement(_tmpl$);
|
|
120
|
-
effect((_p$) => {
|
|
121
|
-
var _v$ = props.imageSrc, _v$2 = props.imageAlt ?? props.name;
|
|
122
|
-
_v$ !== _p$.e && setAttribute(_el$, "src", _p$.e = _v$);
|
|
123
|
-
_v$2 !== _p$.t && setAttribute(_el$, "alt", _p$.t = _v$2);
|
|
124
|
-
return _p$;
|
|
125
|
-
}, {
|
|
126
|
-
e: void 0,
|
|
127
|
-
t: void 0
|
|
128
|
-
});
|
|
129
|
-
return _el$;
|
|
130
|
-
})(), (() => {
|
|
131
|
-
var _el$2 = getNextElement(_tmpl$2);
|
|
132
|
-
insert(_el$2, () => props.name);
|
|
133
|
-
effect(() => className(_el$2, caption({ size: size() })));
|
|
134
|
-
return _el$2;
|
|
135
|
-
})()];
|
|
136
|
-
const classes = () => `${card({
|
|
137
|
-
size: size(),
|
|
138
|
-
isInactive: inactive()
|
|
139
|
-
})} ${props.class ?? ""}`;
|
|
140
|
-
if (props.href) return (() => {
|
|
141
|
-
var _el$3 = getNextElement(_tmpl$3);
|
|
142
|
-
insert(_el$3, cardContent);
|
|
143
|
-
effect((_p$) => {
|
|
144
|
-
var _v$3 = props.href, _v$4 = classes();
|
|
145
|
-
_v$3 !== _p$.e && setAttribute(_el$3, "href", _p$.e = _v$3);
|
|
146
|
-
_v$4 !== _p$.t && className(_el$3, _p$.t = _v$4);
|
|
147
|
-
return _p$;
|
|
148
|
-
}, {
|
|
149
|
-
e: void 0,
|
|
150
|
-
t: void 0
|
|
151
|
-
});
|
|
152
|
-
return _el$3;
|
|
153
|
-
})();
|
|
154
|
-
return (() => {
|
|
155
|
-
var _el$4 = getNextElement(_tmpl$4);
|
|
156
|
-
insert(_el$4, cardContent);
|
|
157
|
-
effect(() => className(_el$4, classes()));
|
|
158
|
-
return _el$4;
|
|
159
|
-
})();
|
|
160
|
-
}
|
|
161
|
-
//#endregion
|
|
162
|
-
export { ProjectCard };
|
|
163
|
-
|
|
164
|
-
//# sourceMappingURL=ProjectCard.js.map
|
package/dist/ProjectCard.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectCard.js","names":[],"sources":["../src/custom/project-card/index.tsx"],"sourcesContent":["import type { JSX } from \"solid-js\";\n// Styled via the S2 style() macro through viviana's own seam (../../style →\n// src/style.ts). A square logo/preview tile with a caption, sized by the S2\n// spacing + type ramps and painted in Silapse colors. `inactive` dims it;\n// `href` turns the whole card into a link.\nimport { style } from \"../../style\" with { type: \"macro\" };\n\nexport type ProjectCardSize = \"sm\" | \"md\" | \"lg\";\n\nexport interface ProjectCardProps {\n name: string;\n imageSrc: string;\n imageAlt?: string;\n href?: string;\n size?: ProjectCardSize;\n inactive?: boolean;\n class?: string;\n}\n\nconst card = style<{ size: ProjectCardSize; isInactive: boolean }>({\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n gap: 8,\n width: \"full\",\n borderRadius: \"lg\",\n borderWidth: 1,\n borderStyle: \"solid\",\n borderColor: \"[var(--color-border)]\",\n backgroundColor: \"[var(--color-bg-200)]\",\n color: \"[var(--color-primary-100)]\",\n textDecoration: \"none\",\n padding: { size: { sm: 12, md: 16, lg: 20 } },\n opacity: { default: 1, isInactive: 0.5 },\n});\n\nconst image = style({\n width: \"full\",\n aspectRatio: \"square\",\n objectFit: \"contain\",\n borderRadius: \"sm\",\n});\n\nconst caption = style<{ size: ProjectCardSize }>({\n width: \"full\",\n textAlign: \"center\",\n overflow: \"hidden\",\n textOverflow: \"ellipsis\",\n whiteSpace: \"nowrap\",\n color: \"[var(--color-primary-200)]\",\n font: { size: { sm: \"ui-sm\", md: \"ui\", lg: \"ui-lg\" } },\n});\n\nexport function ProjectCard(props: ProjectCardProps): JSX.Element {\n const size = () => props.size ?? \"sm\";\n const inactive = () => props.inactive ?? false;\n\n const cardContent = () => (\n <>\n <img class={image} src={props.imageSrc} alt={props.imageAlt ?? props.name} />\n <span class={caption({ size: size() })}>{props.name}</span>\n </>\n );\n\n const classes = () => `${card({ size: size(), isInactive: inactive() })} ${props.class ?? \"\"}`;\n\n if (props.href) {\n return (\n <a href={props.href} target=\"_blank\" rel=\"noopener noreferrer\" class={classes()}>\n {cardContent()}\n </a>\n );\n }\n\n return <div class={classes()}>{cardContent()}</div>;\n}\n"],"mappings":";;;AAmBA,MAAM,OAAA,SAAA,UAAA,OAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwBN,MAAM,UAAA,SAAA,UAAA,OAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUN,SAAgB,YAAY,OAA8B;CACxD,MAAM,aAAa,MAAM,QAAQ;CACjC,MAAM,iBAAiB,MAAM,YAAY;CAEzC,MAAM,oBAAc,QAAA;EAAA,IAAA,OAAA,eAAA,MAAA;EAAA,QAAA,QAAA;GAAA,IAAA,MAEQ,MAAM,UAAQ,OAAO,MAAM,YAAY,MAAM;GAAI,QAAA,IAAA,KAAA,aAAA,MAAA,OAAA,IAAA,IAAA,GAAA;GAAA,SAAA,IAAA,KAAA,aAAA,MAAA,OAAA,IAAA,IAAA,IAAA;GAAA,OAAA;EAAA,GAAA;GAAA,GAAA,KAAA;GAAA,GAAA,KAAA;EAAA,CAAA;EAAA,OAAA;CAAA,GAAA,UAAA;EAAA,IAAA,QAAA,eAAA,OAAA;EAAA,OAAA,aAChC,MAAM,IAAI;EAAA,aAAA,UAAA,OAAtC,QAAQ,EAAE,MAAM,KAAA,EAAO,CAAA,CAAA,CAAA;EAAA,OAAA;CAAA,GAAA,CAAA;CAIxC,MAAM,gBAAgB,GAAG,KAAK;EAAE,MAAM,KAAA;EAAQ,YAAY,SAAA;CAAW,CAAA,EAAA,GAAM,MAAM,SAAS;CAE1F,IAAI,MAAM,MACR,cAAA;EAAA,IAAA,QAAA,eAAA,OAAA;EAAA,OAAA,OAEK,WAAA;EAAA,QAAA,QAAA;GAAA,IAAA,OADM,MAAM,MAAI,OAAmD,QAAA;GAAA,SAAA,IAAA,KAAA,aAAA,OAAA,QAAA,IAAA,IAAA,IAAA;GAAA,SAAA,IAAA,KAAA,UAAA,OAAA,IAAA,IAAA,IAAA;GAAA,OAAA;EAAA,GAAA;GAAA,GAAA,KAAA;GAAA,GAAA,KAAA;EAAA,CAAA;EAAA,OAAA;CAAA,GAAA;CAM1E,cAAA;EAAA,IAAA,QAAA,eAAA,OAAA;EAAA,OAAA,OAA+B,WAAA;EAAA,aAAA,UAAA,OAAZ,QAAA,CAAA,CAAA;EAAA,OAAA;CAAA,GAAA;AACrB"}
|
package/dist/ProjectCard.jsx
DELETED
|
@@ -1,133 +0,0 @@
|
|
|
1
|
-
//#region src/custom/project-card/index.tsx
|
|
2
|
-
const card = function anonymous(props) {
|
|
3
|
-
let rules = " ";
|
|
4
|
-
rules += " sd13";
|
|
5
|
-
rules += " _ta13";
|
|
6
|
-
rules += " eb13";
|
|
7
|
-
rules += " Ue13";
|
|
8
|
-
rules += " qe13";
|
|
9
|
-
rules += " Za13";
|
|
10
|
-
rules += " oc13";
|
|
11
|
-
rules += " nc13";
|
|
12
|
-
rules += " kc13";
|
|
13
|
-
rules += " jc13";
|
|
14
|
-
rules += " _kb13";
|
|
15
|
-
rules += " hb13";
|
|
16
|
-
rules += " mb13";
|
|
17
|
-
rules += " lb13";
|
|
18
|
-
rules += " _jf13";
|
|
19
|
-
rules += " izfTM513";
|
|
20
|
-
rules += " gDE5VE13";
|
|
21
|
-
rules += " pXDQpyb13";
|
|
22
|
-
rules += " _Xa13";
|
|
23
|
-
if (props.size === "lg") rules += " Tg13";
|
|
24
|
-
else if (props.size === "md") rules += " Tf13";
|
|
25
|
-
else if (props.size === "sm") rules += " Te13";
|
|
26
|
-
if (props.size === "lg") rules += " Qg13";
|
|
27
|
-
else if (props.size === "md") rules += " Qf13";
|
|
28
|
-
else if (props.size === "sm") rules += " Qe13";
|
|
29
|
-
if (props.size === "lg") rules += " Sg13";
|
|
30
|
-
else if (props.size === "md") rules += " Sf13";
|
|
31
|
-
else if (props.size === "sm") rules += " Se13";
|
|
32
|
-
if (props.size === "lg") rules += " Rg13";
|
|
33
|
-
else if (props.size === "md") rules += " Rf13";
|
|
34
|
-
else if (props.size === "sm") rules += " Re13";
|
|
35
|
-
if (props.isInactive) rules += " _IqmMfn13";
|
|
36
|
-
else rules += " _Ib13";
|
|
37
|
-
return rules;
|
|
38
|
-
};
|
|
39
|
-
const image = " Za13 fa13 _Ha13 oa13 na13 ka13 ja13";
|
|
40
|
-
const caption = function anonymous(props) {
|
|
41
|
-
let rules = " ";
|
|
42
|
-
rules += " Za13";
|
|
43
|
-
rules += " _Wa13";
|
|
44
|
-
rules += " _Nc13";
|
|
45
|
-
rules += " Pc13";
|
|
46
|
-
rules += " _Yb13";
|
|
47
|
-
rules += " _7c13";
|
|
48
|
-
if (props.size === "lg") rules += " pt13";
|
|
49
|
-
else if (props.size === "md") rules += " pt13";
|
|
50
|
-
else if (props.size === "sm") rules += " pt13";
|
|
51
|
-
if (props.size === "lg") {
|
|
52
|
-
rules += " uk13";
|
|
53
|
-
rules += " ucJ9TBTb13";
|
|
54
|
-
rules += " ud3Euai13";
|
|
55
|
-
rules += " uea13";
|
|
56
|
-
rules += " ugb13";
|
|
57
|
-
rules += " uhd13";
|
|
58
|
-
rules += " uje13";
|
|
59
|
-
rules += " u2NhKxcl13";
|
|
60
|
-
rules += " uic13";
|
|
61
|
-
} else if (props.size === "md") {
|
|
62
|
-
rules += " uk13";
|
|
63
|
-
rules += " ucJ9TBTb13";
|
|
64
|
-
rules += " ud3Euai13";
|
|
65
|
-
rules += " uea13";
|
|
66
|
-
rules += " ugb13";
|
|
67
|
-
rules += " uhd13";
|
|
68
|
-
rules += " uje13";
|
|
69
|
-
rules += " u2NhKxcl13";
|
|
70
|
-
rules += " uic13";
|
|
71
|
-
} else if (props.size === "sm") {
|
|
72
|
-
rules += " uk13";
|
|
73
|
-
rules += " ucJ9TBTb13";
|
|
74
|
-
rules += " ud3Euai13";
|
|
75
|
-
rules += " uea13";
|
|
76
|
-
rules += " ugb13";
|
|
77
|
-
rules += " uhd13";
|
|
78
|
-
rules += " uje13";
|
|
79
|
-
rules += " u2NhKxcl13";
|
|
80
|
-
rules += " uic13";
|
|
81
|
-
}
|
|
82
|
-
if (props.size === "lg") {
|
|
83
|
-
rules += " -_6BNtrc-d13";
|
|
84
|
-
rules += " vx13";
|
|
85
|
-
} else if (props.size === "md") {
|
|
86
|
-
rules += " -_6BNtrc-c13";
|
|
87
|
-
rules += " vx13";
|
|
88
|
-
} else if (props.size === "sm") {
|
|
89
|
-
rules += " -_6BNtrc-b13";
|
|
90
|
-
rules += " vx13";
|
|
91
|
-
}
|
|
92
|
-
if (props.size === "lg") {
|
|
93
|
-
rules += " xb13";
|
|
94
|
-
rules += " _xa13";
|
|
95
|
-
} else if (props.size === "md") {
|
|
96
|
-
rules += " xb13";
|
|
97
|
-
rules += " _xa13";
|
|
98
|
-
} else if (props.size === "sm") {
|
|
99
|
-
rules += " xb13";
|
|
100
|
-
rules += " _xa13";
|
|
101
|
-
}
|
|
102
|
-
if (props.size === "lg") {
|
|
103
|
-
rules += " _Fd13";
|
|
104
|
-
rules += " _FnuYUweb13";
|
|
105
|
-
} else if (props.size === "md") {
|
|
106
|
-
rules += " _Fd13";
|
|
107
|
-
rules += " _FnuYUweb13";
|
|
108
|
-
} else if (props.size === "sm") {
|
|
109
|
-
rules += " _Fd13";
|
|
110
|
-
rules += " _FnuYUweb13";
|
|
111
|
-
}
|
|
112
|
-
return rules;
|
|
113
|
-
};
|
|
114
|
-
function ProjectCard(props) {
|
|
115
|
-
const size = () => props.size ?? "sm";
|
|
116
|
-
const inactive = () => props.inactive ?? false;
|
|
117
|
-
const cardContent = () => <>
|
|
118
|
-
<img class={image} src={props.imageSrc} alt={props.imageAlt ?? props.name} />
|
|
119
|
-
<span class={caption({ size: size() })}>{props.name}</span>
|
|
120
|
-
</>;
|
|
121
|
-
const classes = () => `${card({
|
|
122
|
-
size: size(),
|
|
123
|
-
isInactive: inactive()
|
|
124
|
-
})} ${props.class ?? ""}`;
|
|
125
|
-
if (props.href) return <a href={props.href} target="_blank" rel="noopener noreferrer" class={classes()}>
|
|
126
|
-
{cardContent()}
|
|
127
|
-
</a>;
|
|
128
|
-
return <div class={classes()}>{cardContent()}</div>;
|
|
129
|
-
}
|
|
130
|
-
//#endregion
|
|
131
|
-
export { ProjectCard };
|
|
132
|
-
|
|
133
|
-
//# sourceMappingURL=ProjectCard.jsx.map
|
package/dist/ProjectCard.jsx.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectCard.jsx","names":[],"sources":["../src/custom/project-card/index.tsx"],"sourcesContent":["import type { JSX } from \"solid-js\";\n// Styled via the S2 style() macro through viviana's own seam (../../style →\n// src/style.ts). A square logo/preview tile with a caption, sized by the S2\n// spacing + type ramps and painted in Silapse colors. `inactive` dims it;\n// `href` turns the whole card into a link.\nimport { style } from \"../../style\" with { type: \"macro\" };\n\nexport type ProjectCardSize = \"sm\" | \"md\" | \"lg\";\n\nexport interface ProjectCardProps {\n name: string;\n imageSrc: string;\n imageAlt?: string;\n href?: string;\n size?: ProjectCardSize;\n inactive?: boolean;\n class?: string;\n}\n\nconst card = style<{ size: ProjectCardSize; isInactive: boolean }>({\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n gap: 8,\n width: \"full\",\n borderRadius: \"lg\",\n borderWidth: 1,\n borderStyle: \"solid\",\n borderColor: \"[var(--color-border)]\",\n backgroundColor: \"[var(--color-bg-200)]\",\n color: \"[var(--color-primary-100)]\",\n textDecoration: \"none\",\n padding: { size: { sm: 12, md: 16, lg: 20 } },\n opacity: { default: 1, isInactive: 0.5 },\n});\n\nconst image = style({\n width: \"full\",\n aspectRatio: \"square\",\n objectFit: \"contain\",\n borderRadius: \"sm\",\n});\n\nconst caption = style<{ size: ProjectCardSize }>({\n width: \"full\",\n textAlign: \"center\",\n overflow: \"hidden\",\n textOverflow: \"ellipsis\",\n whiteSpace: \"nowrap\",\n color: \"[var(--color-primary-200)]\",\n font: { size: { sm: \"ui-sm\", md: \"ui\", lg: \"ui-lg\" } },\n});\n\nexport function ProjectCard(props: ProjectCardProps): JSX.Element {\n const size = () => props.size ?? \"sm\";\n const inactive = () => props.inactive ?? false;\n\n const cardContent = () => (\n <>\n <img class={image} src={props.imageSrc} alt={props.imageAlt ?? props.name} />\n <span class={caption({ size: size() })}>{props.name}</span>\n </>\n );\n\n const classes = () => `${card({ size: size(), isInactive: inactive() })} ${props.class ?? \"\"}`;\n\n if (props.href) {\n return (\n <a href={props.href} target=\"_blank\" rel=\"noopener noreferrer\" class={classes()}>\n {cardContent()}\n </a>\n );\n }\n\n return <div class={classes()}>{cardContent()}</div>;\n}\n"],"mappings":";AAmBA,MAAM,OAAA,SAAA,UAAA,OAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiBN,MAAM,QAAA;AAON,MAAM,UAAA,SAAA,UAAA,OAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUN,SAAgB,YAAY,OAA8B;CACxD,MAAM,aAAa,MAAM,QAAQ;CACjC,MAAM,iBAAiB,MAAM,YAAY;CAEzC,MAAM,oBAAoB,EACtB;MACA,CAAC,IAAI,OAAO,OAAO,KAAK,MAAM,UAAU,KAAK,MAAM,YAAY,MAAM,QAAQ;MAC7E,CAAC,KAAK,OAAO,QAAQ,EAAE,MAAM,KAAA,EAAO,CAAA,IAAK,MAAM,KAAI,EAAG,KAAK;IAC7D;CAGF,MAAM,gBAAgB,GAAG,KAAK;EAAE,MAAM,KAAA;EAAQ,YAAY,SAAA;CAAW,CAAA,EAAG,GAAG,MAAM,SAAS;CAE1F,IAAI,MAAM,MACR,OAAO,CACJ,EAAE,MAAM,MAAM,MAAM,gBAAgB,0BAA0B,OAAO,QAAA,GAAW;SAC9E,YAAA,EAAc;MACjB,EAAE;CAIN,OAAA,CAAQ,IAAI,OAAO,QAAA,IAAY,YAAA,EAAA,EAAgB;AACjD"}
|
package/dist/TimelineItem.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TimelineItem.d.ts","sourceRoot":"","sources":["../src/TimelineItem.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC"}
|
package/dist/TimelineItem.js
DELETED
|
@@ -1,137 +0,0 @@
|
|
|
1
|
-
/* empty css */
|
|
2
|
-
import { Avatar } from "@proyecto-viviana/solid-spectrum";
|
|
3
|
-
import { className, createComponent, effect, getNextElement, getNextMarker, insert, template } from "solid-js/web";
|
|
4
|
-
import { Show } from "solid-js";
|
|
5
|
-
//#region src/custom/timeline-item/index.tsx
|
|
6
|
-
var _tmpl$ = /*#__PURE__*/ template(`<span class=" xd13 _xa13 xX0cczbc13 _xX0cczba13 pj1j4Pd13">`), _tmpl$2 = /*#__PURE__*/ template(`<div><div class=" sd13 eb13 _Ca13 Ug13 qg13"><!$><!/><!$><!/><!$><!/></div><div class=" sd13 eb13 _Ca13 _Wa13 uk13 ucJ9TBTb13 ud3Euai13 uea13 ugb13 uhd13 uje13 u2NhKxcl13 uic13 -_6BNtrc-c13 vx13 xb13 _xa13 _Fd13 _FnuYUweb13 pxeCuqc13"><span>`);
|
|
7
|
-
const eventMessages = {
|
|
8
|
-
follow: (left, right) => [
|
|
9
|
-
(() => {
|
|
10
|
-
var _el$ = getNextElement(_tmpl$);
|
|
11
|
-
insert(_el$, left);
|
|
12
|
-
return _el$;
|
|
13
|
-
})(),
|
|
14
|
-
" ha empezado a seguir a ",
|
|
15
|
-
(() => {
|
|
16
|
-
var _el$2 = getNextElement(_tmpl$);
|
|
17
|
-
insert(_el$2, right);
|
|
18
|
-
return _el$2;
|
|
19
|
-
})()
|
|
20
|
-
],
|
|
21
|
-
like: (left, right) => [
|
|
22
|
-
(() => {
|
|
23
|
-
var _el$3 = getNextElement(_tmpl$);
|
|
24
|
-
insert(_el$3, left);
|
|
25
|
-
return _el$3;
|
|
26
|
-
})(),
|
|
27
|
-
" le ha dado like a ",
|
|
28
|
-
(() => {
|
|
29
|
-
var _el$4 = getNextElement(_tmpl$);
|
|
30
|
-
insert(_el$4, right);
|
|
31
|
-
return _el$4;
|
|
32
|
-
})()
|
|
33
|
-
],
|
|
34
|
-
comment: (left, right) => [
|
|
35
|
-
(() => {
|
|
36
|
-
var _el$5 = getNextElement(_tmpl$);
|
|
37
|
-
insert(_el$5, left);
|
|
38
|
-
return _el$5;
|
|
39
|
-
})(),
|
|
40
|
-
" ha comentado en ",
|
|
41
|
-
(() => {
|
|
42
|
-
var _el$6 = getNextElement(_tmpl$);
|
|
43
|
-
insert(_el$6, right);
|
|
44
|
-
return _el$6;
|
|
45
|
-
})()
|
|
46
|
-
],
|
|
47
|
-
event: (left, right) => [
|
|
48
|
-
(() => {
|
|
49
|
-
var _el$7 = getNextElement(_tmpl$);
|
|
50
|
-
insert(_el$7, left);
|
|
51
|
-
return _el$7;
|
|
52
|
-
})(),
|
|
53
|
-
" asistirá al evento de ",
|
|
54
|
-
(() => {
|
|
55
|
-
var _el$8 = getNextElement(_tmpl$);
|
|
56
|
-
insert(_el$8, right);
|
|
57
|
-
return _el$8;
|
|
58
|
-
})()
|
|
59
|
-
],
|
|
60
|
-
custom: () => null
|
|
61
|
-
};
|
|
62
|
-
const card = " sh13 _ta13 Ui13 qi13 Tg13 Qg13 Sg13 Rg13 oe13 ne13 ke13 je13 _kb13 hb13 mb13 lb13 _jf13 iJJKqyb13 gDE5VE13";
|
|
63
|
-
function TimelineItem(props) {
|
|
64
|
-
const type = () => props.type ?? "follow";
|
|
65
|
-
const leftName = () => props.leftUser?.name ?? "";
|
|
66
|
-
const rightName = () => props.rightUser?.name ?? "";
|
|
67
|
-
const renderIcon = () => {
|
|
68
|
-
const icon = props.icon;
|
|
69
|
-
if (!icon) return null;
|
|
70
|
-
if (typeof icon === "string") return icon;
|
|
71
|
-
return icon();
|
|
72
|
-
};
|
|
73
|
-
const renderMessage = () => {
|
|
74
|
-
const message = props.message;
|
|
75
|
-
if (!message) return null;
|
|
76
|
-
if (typeof message === "string") return message;
|
|
77
|
-
return message();
|
|
78
|
-
};
|
|
79
|
-
return (() => {
|
|
80
|
-
var _el$9 = getNextElement(_tmpl$2), _el$0 = _el$9.firstChild, _el$1 = _el$0.firstChild, [_el$10, _co$] = getNextMarker(_el$1.nextSibling), _el$11 = _el$10.nextSibling, [_el$12, _co$2] = getNextMarker(_el$11.nextSibling), _el$13 = _el$12.nextSibling, [_el$14, _co$3] = getNextMarker(_el$13.nextSibling), _el$16 = _el$0.nextSibling.firstChild;
|
|
81
|
-
insert(_el$0, createComponent(Show, {
|
|
82
|
-
get when() {
|
|
83
|
-
return props.leftUser;
|
|
84
|
-
},
|
|
85
|
-
get children() {
|
|
86
|
-
return createComponent(Avatar, {
|
|
87
|
-
get src() {
|
|
88
|
-
return props.leftUser.avatar;
|
|
89
|
-
},
|
|
90
|
-
get alt() {
|
|
91
|
-
return props.leftUser.name;
|
|
92
|
-
}
|
|
93
|
-
});
|
|
94
|
-
}
|
|
95
|
-
}), _el$10, _co$);
|
|
96
|
-
insert(_el$0, createComponent(Show, {
|
|
97
|
-
get when() {
|
|
98
|
-
return props.icon;
|
|
99
|
-
},
|
|
100
|
-
get children() {
|
|
101
|
-
return renderIcon();
|
|
102
|
-
}
|
|
103
|
-
}), _el$12, _co$2);
|
|
104
|
-
insert(_el$0, createComponent(Show, {
|
|
105
|
-
get when() {
|
|
106
|
-
return props.rightUser;
|
|
107
|
-
},
|
|
108
|
-
get children() {
|
|
109
|
-
return createComponent(Avatar, {
|
|
110
|
-
get src() {
|
|
111
|
-
return props.rightUser.avatar;
|
|
112
|
-
},
|
|
113
|
-
get alt() {
|
|
114
|
-
return props.rightUser.name;
|
|
115
|
-
}
|
|
116
|
-
});
|
|
117
|
-
}
|
|
118
|
-
}), _el$14, _co$3);
|
|
119
|
-
insert(_el$16, createComponent(Show, {
|
|
120
|
-
get when() {
|
|
121
|
-
return props.message;
|
|
122
|
-
},
|
|
123
|
-
get fallback() {
|
|
124
|
-
return eventMessages[type()](leftName(), rightName());
|
|
125
|
-
},
|
|
126
|
-
get children() {
|
|
127
|
-
return renderMessage();
|
|
128
|
-
}
|
|
129
|
-
}));
|
|
130
|
-
effect(() => className(_el$9, `${card} ${props.class ?? ""}`));
|
|
131
|
-
return _el$9;
|
|
132
|
-
})();
|
|
133
|
-
}
|
|
134
|
-
//#endregion
|
|
135
|
-
export { TimelineItem };
|
|
136
|
-
|
|
137
|
-
//# sourceMappingURL=TimelineItem.js.map
|
package/dist/TimelineItem.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TimelineItem.js","names":[],"sources":["../src/custom/timeline-item/index.tsx"],"sourcesContent":["import type { JSX } from \"solid-js\";\nimport { Show } from \"solid-js\";\nimport { Avatar } from \"@proyecto-viviana/solid-spectrum\";\n// Styled via the S2 style() macro through viviana's own seam (../../style →\n// src/style.ts). A social timeline event card (two avatars + icon + message)\n// on the S2 spacing/radius ramps in Silapse colors.\nimport { style } from \"../../style\" with { type: \"macro\" };\n\nexport type TimelineEventType = \"follow\" | \"like\" | \"comment\" | \"event\" | \"custom\";\n\nexport interface TimelineItemProps {\n type?: TimelineEventType;\n /**\n * Icon to display between the two avatars.\n * Use a function returning JSX for SSR compatibility: `icon={() => <MyIcon />}`\n * Or pass a simple string for text-based icons: `icon=\"👋\"`\n */\n icon?: string | (() => JSX.Element);\n leftUser?: {\n name: string;\n avatar?: string;\n };\n rightUser?: {\n name: string;\n avatar?: string;\n };\n /**\n * Custom message content.\n * Use a function returning JSX for SSR compatibility: `message={() => <span>...</span>}`\n * Or pass a simple string.\n */\n message?: string | (() => JSX.Element);\n class?: string;\n}\n\nconst nameEmph = style({\n fontWeight: \"bold\",\n color: \"[var(--color-accent)]\",\n});\n\nconst eventMessages: Record<TimelineEventType, (left: string, right: string) => JSX.Element> = {\n follow: (left, right) => (\n <>\n <span class={nameEmph}>{left}</span>\n {\" ha empezado a seguir a \"}\n <span class={nameEmph}>{right}</span>\n </>\n ),\n like: (left, right) => (\n <>\n <span class={nameEmph}>{left}</span>\n {\" le ha dado like a \"}\n <span class={nameEmph}>{right}</span>\n </>\n ),\n comment: (left, right) => (\n <>\n <span class={nameEmph}>{left}</span>\n {\" ha comentado en \"}\n <span class={nameEmph}>{right}</span>\n </>\n ),\n event: (left, right) => (\n <>\n <span class={nameEmph}>{left}</span>\n {\" asistirá al evento de \"}\n <span class={nameEmph}>{right}</span>\n </>\n ),\n custom: () => null,\n};\n\nconst card = style({\n display: \"inline-flex\",\n flexDirection: \"column\",\n gap: 20,\n padding: 20,\n borderRadius: \"xl\",\n borderWidth: 1,\n borderStyle: \"solid\",\n borderColor: \"[var(--color-primary-700)]\",\n backgroundColor: \"[var(--color-bg-200)]\",\n});\n\nconst avatarsRow = style({\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n gap: 12,\n});\n\nconst messageRow = style({\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n textAlign: \"center\",\n font: \"ui\",\n color: \"[var(--color-text-secondary)]\",\n});\n\nexport function TimelineItem(props: TimelineItemProps) {\n const type = () => props.type ?? \"follow\";\n const leftName = () => props.leftUser?.name ?? \"\";\n const rightName = () => props.rightUser?.name ?? \"\";\n\n const renderIcon = () => {\n const icon = props.icon;\n if (!icon) return null;\n if (typeof icon === \"string\") return icon;\n return icon();\n };\n\n const renderMessage = () => {\n const message = props.message;\n if (!message) return null;\n if (typeof message === \"string\") return message;\n return message();\n };\n\n return (\n <div class={`${card} ${props.class ?? \"\"}`}>\n <div class={avatarsRow}>\n <Show when={props.leftUser}>\n <Avatar src={props.leftUser!.avatar} alt={props.leftUser!.name} />\n </Show>\n <Show when={props.icon}>{renderIcon()}</Show>\n <Show when={props.rightUser}>\n <Avatar src={props.rightUser!.avatar} alt={props.rightUser!.name} />\n </Show>\n </div>\n <div class={messageRow}>\n <span>\n <Show when={props.message} fallback={eventMessages[type()](leftName(), rightName())}>\n {renderMessage()}\n </Show>\n </span>\n </div>\n </div>\n );\n}\n"],"mappings":"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"}
|
package/dist/TimelineItem.jsx
DELETED
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
/* empty css */
|
|
2
|
-
import { Avatar } from "@proyecto-viviana/solid-spectrum";
|
|
3
|
-
import { Show } from "solid-js";
|
|
4
|
-
//#region src/custom/timeline-item/index.tsx
|
|
5
|
-
const nameEmph = " xd13 _xa13 xX0cczbc13 _xX0cczba13 pj1j4Pd13";
|
|
6
|
-
const eventMessages = {
|
|
7
|
-
follow: (left, right) => <>
|
|
8
|
-
<span class={nameEmph}>{left}</span>
|
|
9
|
-
{" ha empezado a seguir a "}
|
|
10
|
-
<span class={nameEmph}>{right}</span>
|
|
11
|
-
</>,
|
|
12
|
-
like: (left, right) => <>
|
|
13
|
-
<span class={nameEmph}>{left}</span>
|
|
14
|
-
{" le ha dado like a "}
|
|
15
|
-
<span class={nameEmph}>{right}</span>
|
|
16
|
-
</>,
|
|
17
|
-
comment: (left, right) => <>
|
|
18
|
-
<span class={nameEmph}>{left}</span>
|
|
19
|
-
{" ha comentado en "}
|
|
20
|
-
<span class={nameEmph}>{right}</span>
|
|
21
|
-
</>,
|
|
22
|
-
event: (left, right) => <>
|
|
23
|
-
<span class={nameEmph}>{left}</span>
|
|
24
|
-
{" asistirá al evento de "}
|
|
25
|
-
<span class={nameEmph}>{right}</span>
|
|
26
|
-
</>,
|
|
27
|
-
custom: () => null
|
|
28
|
-
};
|
|
29
|
-
const card = " sh13 _ta13 Ui13 qi13 Tg13 Qg13 Sg13 Rg13 oe13 ne13 ke13 je13 _kb13 hb13 mb13 lb13 _jf13 iJJKqyb13 gDE5VE13";
|
|
30
|
-
const avatarsRow = " sd13 eb13 _Ca13 Ug13 qg13";
|
|
31
|
-
const messageRow = " sd13 eb13 _Ca13 _Wa13 uk13 ucJ9TBTb13 ud3Euai13 uea13 ugb13 uhd13 uje13 u2NhKxcl13 uic13 -_6BNtrc-c13 vx13 xb13 _xa13 _Fd13 _FnuYUweb13 pxeCuqc13";
|
|
32
|
-
function TimelineItem(props) {
|
|
33
|
-
const type = () => props.type ?? "follow";
|
|
34
|
-
const leftName = () => props.leftUser?.name ?? "";
|
|
35
|
-
const rightName = () => props.rightUser?.name ?? "";
|
|
36
|
-
const renderIcon = () => {
|
|
37
|
-
const icon = props.icon;
|
|
38
|
-
if (!icon) return null;
|
|
39
|
-
if (typeof icon === "string") return icon;
|
|
40
|
-
return icon();
|
|
41
|
-
};
|
|
42
|
-
const renderMessage = () => {
|
|
43
|
-
const message = props.message;
|
|
44
|
-
if (!message) return null;
|
|
45
|
-
if (typeof message === "string") return message;
|
|
46
|
-
return message();
|
|
47
|
-
};
|
|
48
|
-
return <div class={`${card} ${props.class ?? ""}`}>
|
|
49
|
-
<div class={avatarsRow}>
|
|
50
|
-
<Show when={props.leftUser}>
|
|
51
|
-
<Avatar src={props.leftUser.avatar} alt={props.leftUser.name} />
|
|
52
|
-
</Show>
|
|
53
|
-
<Show when={props.icon}>{renderIcon()}</Show>
|
|
54
|
-
<Show when={props.rightUser}>
|
|
55
|
-
<Avatar src={props.rightUser.avatar} alt={props.rightUser.name} />
|
|
56
|
-
</Show>
|
|
57
|
-
</div>
|
|
58
|
-
<div class={messageRow}>
|
|
59
|
-
<span>
|
|
60
|
-
<Show when={props.message} fallback={eventMessages[type()](leftName(), rightName())}>
|
|
61
|
-
{renderMessage()}
|
|
62
|
-
</Show>
|
|
63
|
-
</span>
|
|
64
|
-
</div>
|
|
65
|
-
</div>;
|
|
66
|
-
}
|
|
67
|
-
//#endregion
|
|
68
|
-
export { TimelineItem };
|
|
69
|
-
|
|
70
|
-
//# sourceMappingURL=TimelineItem.jsx.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TimelineItem.jsx","names":[],"sources":["../src/custom/timeline-item/index.tsx"],"sourcesContent":["import type { JSX } from \"solid-js\";\nimport { Show } from \"solid-js\";\nimport { Avatar } from \"@proyecto-viviana/solid-spectrum\";\n// Styled via the S2 style() macro through viviana's own seam (../../style →\n// src/style.ts). A social timeline event card (two avatars + icon + message)\n// on the S2 spacing/radius ramps in Silapse colors.\nimport { style } from \"../../style\" with { type: \"macro\" };\n\nexport type TimelineEventType = \"follow\" | \"like\" | \"comment\" | \"event\" | \"custom\";\n\nexport interface TimelineItemProps {\n type?: TimelineEventType;\n /**\n * Icon to display between the two avatars.\n * Use a function returning JSX for SSR compatibility: `icon={() => <MyIcon />}`\n * Or pass a simple string for text-based icons: `icon=\"👋\"`\n */\n icon?: string | (() => JSX.Element);\n leftUser?: {\n name: string;\n avatar?: string;\n };\n rightUser?: {\n name: string;\n avatar?: string;\n };\n /**\n * Custom message content.\n * Use a function returning JSX for SSR compatibility: `message={() => <span>...</span>}`\n * Or pass a simple string.\n */\n message?: string | (() => JSX.Element);\n class?: string;\n}\n\nconst nameEmph = style({\n fontWeight: \"bold\",\n color: \"[var(--color-accent)]\",\n});\n\nconst eventMessages: Record<TimelineEventType, (left: string, right: string) => JSX.Element> = {\n follow: (left, right) => (\n <>\n <span class={nameEmph}>{left}</span>\n {\" ha empezado a seguir a \"}\n <span class={nameEmph}>{right}</span>\n </>\n ),\n like: (left, right) => (\n <>\n <span class={nameEmph}>{left}</span>\n {\" le ha dado like a \"}\n <span class={nameEmph}>{right}</span>\n </>\n ),\n comment: (left, right) => (\n <>\n <span class={nameEmph}>{left}</span>\n {\" ha comentado en \"}\n <span class={nameEmph}>{right}</span>\n </>\n ),\n event: (left, right) => (\n <>\n <span class={nameEmph}>{left}</span>\n {\" asistirá al evento de \"}\n <span class={nameEmph}>{right}</span>\n </>\n ),\n custom: () => null,\n};\n\nconst card = style({\n display: \"inline-flex\",\n flexDirection: \"column\",\n gap: 20,\n padding: 20,\n borderRadius: \"xl\",\n borderWidth: 1,\n borderStyle: \"solid\",\n borderColor: \"[var(--color-primary-700)]\",\n backgroundColor: \"[var(--color-bg-200)]\",\n});\n\nconst avatarsRow = style({\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n gap: 12,\n});\n\nconst messageRow = style({\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n textAlign: \"center\",\n font: \"ui\",\n color: \"[var(--color-text-secondary)]\",\n});\n\nexport function TimelineItem(props: TimelineItemProps) {\n const type = () => props.type ?? \"follow\";\n const leftName = () => props.leftUser?.name ?? \"\";\n const rightName = () => props.rightUser?.name ?? \"\";\n\n const renderIcon = () => {\n const icon = props.icon;\n if (!icon) return null;\n if (typeof icon === \"string\") return icon;\n return icon();\n };\n\n const renderMessage = () => {\n const message = props.message;\n if (!message) return null;\n if (typeof message === \"string\") return message;\n return message();\n };\n\n return (\n <div class={`${card} ${props.class ?? \"\"}`}>\n <div class={avatarsRow}>\n <Show when={props.leftUser}>\n <Avatar src={props.leftUser!.avatar} alt={props.leftUser!.name} />\n </Show>\n <Show when={props.icon}>{renderIcon()}</Show>\n <Show when={props.rightUser}>\n <Avatar src={props.rightUser!.avatar} alt={props.rightUser!.name} />\n </Show>\n </div>\n <div class={messageRow}>\n <span>\n <Show when={props.message} fallback={eventMessages[type()](leftName(), rightName())}>\n {renderMessage()}\n </Show>\n </span>\n </div>\n </div>\n );\n}\n"],"mappings":";;;;;;;MAmCM,CAAA,KAAA,OAAA,WAAA,KAAA,EAAA,KAAA;OAKA,2BAAyF;MAC7F,CAAA,KAAS,OAAM,WACX,MAAA,EAAA,KAAA;;QAEC,MAAA,UAAA,EAAA;MACD,CAAC,KAAK,OAAO,WAAW,KAAA,EAAA,KAAQ;OAClC,sBAAA;MAEF,CAAA,KAAO,OAAM,WACT,MAAA,EAAA,KAAA;;WAEC,MAAA,UAAA,EAAsB;MACvB,CAAC,KAAK,OAAO,WAAW,KAAA,EAAA,KAAQ;OAClC,oBAAA;MAEF,CAAA,KAAU,OAAM,WACZ,MAAA,EAAA,KAAA;;SAEC,MAAA,UAAA,EAAoB;MACrB,CAAC,KAAK,OAAO,WAAW,KAAA,EAAA,KAAQ;OAClC,0BAAA;MAEF,CAAA,KAAQ,OAAM,WACV,MAAA,EAAA,KAAA;;eAEC;;MAEH,OAAA;MAEF,aAAc;AAChB,MAAA,aAAA;AAEA,SAAM,aAAA,OAAA;CAYN,MAAM,aAAA,MAAA,QAAA;CAON,MAAM,iBAAA,MAAA,UAAA,QAAA;CASN,MAAA,kBAA6B,MAAwB,WAAA,QAAA;CACnD,MAAM,mBAAmB;EACzB,MAAM,OAAA,MAAA;EACN,IAAA,CAAM,MAAA,OAAA;EAEN,IAAA,OAAM,SAAA,UAAa,OAAA;EACjB,OAAM,KAAA;;OAEF,sBAAgB;EACpB,MAAA,UAAO,MAAA;EACT,IAAA,CAAA,SAAA,OAAA;EAEA,IAAA,OAAM,YAAA,UAAgB,OAAA;EACpB,OAAM,QAAA;;QAEF,CAAA,IAAO,OAAA,GAAA,KAAY,GAAA,MAAU,SAAO,MAAA;MACxC,CAAA,IAAO,OAAA,YAAA;QACT,CAAA,KAAA,MAAA,MAAA,UAAA;UAGG,CAAA,OAAI,KAAU,MAAK,SAAS,QAAS,KAAA,MAAM,SAAA,QAAA;QACzC,EAAA,KAAI;QACH,CAAC,KAAK,MAAM,MAAM,OAAA,WAAU,EAAA,EAAA,KAAA;cACzB,MAAO,MAAK,WAAM;UACnB,CAAA,OAAK,KAAA,MAAA,UAAA,QAAA,KAAA,MAAA,UAAA,QAAA;QACP,EAAC,KAAK;QACN,IAAC;WACE,OAAO,YAAW;QACrB,CAAA,KAAE;UACF,CAAA,KAAI,MAAA,MAAA,SAAA,UAAA,cAAA,KAAA,GAAA,SAAA,GAAA,UAAA,CAAA,GAAA;aACD,cAAO,EAAA;UACT,EAAA,KAAK;UACJ,KAAC;;;;;AAOX,SAAA"}
|
package/dist/chip2.js
DELETED
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
import { createComponent, getNextElement, insert, memo, template } from "solid-js/web";
|
|
2
|
-
import { Show } from "solid-js";
|
|
3
|
-
import { Button } from "@proyecto-viviana/solidaria-components";
|
|
4
|
-
//#region src/custom/chip/index.tsx
|
|
5
|
-
var _tmpl$ = /*#__PURE__*/ template(`<span>`);
|
|
6
|
-
const chip = function anonymous(props) {
|
|
7
|
-
let rules = " ";
|
|
8
|
-
rules += " sh13";
|
|
9
|
-
rules += " eb13";
|
|
10
|
-
rules += " _Ca13";
|
|
11
|
-
rules += " qc13";
|
|
12
|
-
rules += " qsd13";
|
|
13
|
-
rules += " Mg13";
|
|
14
|
-
rules += " ZJ13";
|
|
15
|
-
rules += " Se13";
|
|
16
|
-
rules += " Re13";
|
|
17
|
-
rules += " og13";
|
|
18
|
-
rules += " ng13";
|
|
19
|
-
rules += " kg13";
|
|
20
|
-
rules += " jg13";
|
|
21
|
-
rules += " _jf13";
|
|
22
|
-
rules += " _kc13";
|
|
23
|
-
rules += " hc13";
|
|
24
|
-
rules += " mc13";
|
|
25
|
-
rules += " lc13";
|
|
26
|
-
rules += " uk13";
|
|
27
|
-
rules += " ucJ9TBTb13";
|
|
28
|
-
rules += " ud3Euai13";
|
|
29
|
-
rules += " uea13";
|
|
30
|
-
rules += " ugb13";
|
|
31
|
-
rules += " uhd13";
|
|
32
|
-
rules += " uje13";
|
|
33
|
-
rules += " u2NhKxcl13";
|
|
34
|
-
rules += " uic13";
|
|
35
|
-
rules += " -_6BNtrc-b13";
|
|
36
|
-
rules += " vx13";
|
|
37
|
-
rules += " xb13";
|
|
38
|
-
rules += " _xa13";
|
|
39
|
-
rules += " _Fd13";
|
|
40
|
-
rules += " _FnuYUweb13";
|
|
41
|
-
if (props.variant === "outline") rules += " pAZZpyb13";
|
|
42
|
-
else if (props.variant === "accent") rules += " pTloWE13";
|
|
43
|
-
else if (props.variant === "secondary") rules += " pAZZpyb13";
|
|
44
|
-
else if (props.variant === "primary") rules += " pXDQpyb13";
|
|
45
|
-
if (props.variant === "outline") rules += " i6nBqyb13";
|
|
46
|
-
else rules += " iA13";
|
|
47
|
-
if (props.variant === "outline") rules += " g913";
|
|
48
|
-
else if (props.variant === "accent") rules += " gj1j4Pd13";
|
|
49
|
-
else if (props.variant === "secondary") rules += " g0iWVE13";
|
|
50
|
-
else if (props.variant === "primary") rules += " gJJKqyb13";
|
|
51
|
-
return rules;
|
|
52
|
-
};
|
|
53
|
-
function Chip(props) {
|
|
54
|
-
const renderIcon = () => {
|
|
55
|
-
const icon = props.icon;
|
|
56
|
-
if (!icon) return null;
|
|
57
|
-
if (typeof icon === "string") return icon;
|
|
58
|
-
return icon();
|
|
59
|
-
};
|
|
60
|
-
return createComponent(Button, {
|
|
61
|
-
get ["class"]() {
|
|
62
|
-
return `${chip({ variant: props.variant ?? "primary" })} ${props.class ?? ""}`;
|
|
63
|
-
},
|
|
64
|
-
onPress: () => props.onClick?.(),
|
|
65
|
-
get children() {
|
|
66
|
-
return [createComponent(Show, {
|
|
67
|
-
get when() {
|
|
68
|
-
return props.icon;
|
|
69
|
-
},
|
|
70
|
-
get children() {
|
|
71
|
-
var _el$ = getNextElement(_tmpl$);
|
|
72
|
-
insert(_el$, renderIcon);
|
|
73
|
-
return _el$;
|
|
74
|
-
}
|
|
75
|
-
}), memo(() => props.text)];
|
|
76
|
-
}
|
|
77
|
-
});
|
|
78
|
-
}
|
|
79
|
-
//#endregion
|
|
80
|
-
export { Chip as t };
|
|
81
|
-
|
|
82
|
-
//# sourceMappingURL=chip2.js.map
|
package/dist/chip2.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"chip2.js","names":[],"sources":["../src/custom/chip/index.tsx"],"sourcesContent":["import type { JSX } from \"solid-js\";\nimport { Show } from \"solid-js\";\nimport { Button as HeadlessButton } from \"@proyecto-viviana/solidaria-components\";\n// Styled via the S2 style() macro through viviana's own seam (../../style →\n// src/style.ts). S2 named tokens carry the shape (mirrors Badge's size-S\n// control: minHeight 24, 2px border, ui-sm font, pill radius); Silapse colors\n// ride in as arbitrary `[var(--color-*)]` values.\nimport { style } from \"../../style\" with { type: \"macro\" };\n\nexport type ChipVariant = \"primary\" | \"secondary\" | \"accent\" | \"outline\";\n\nexport interface ChipProps {\n text: string;\n variant?: ChipVariant;\n onClick?: () => void;\n /**\n * Icon to display before the text.\n * Use a function returning JSX for SSR compatibility: `icon={() => <MyIcon />}`\n * Or pass a simple string for text-based icons: `icon=\"★\"`\n */\n icon?: string | (() => JSX.Element);\n class?: string;\n}\n\nconst chip = style<{ variant: ChipVariant }>({\n display: \"inline-flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n columnGap: \"text-to-visual\",\n minHeight: 24,\n width: \"fit\",\n paddingX: 12,\n borderRadius: \"full\",\n borderStyle: \"solid\",\n borderWidth: 2,\n font: \"ui-sm\",\n borderColor: {\n default: \"transparent\",\n variant: { outline: \"[var(--color-primary-600)]\" },\n },\n backgroundColor: {\n variant: {\n primary: \"[var(--color-primary-700)]\",\n secondary: \"[var(--color-bg-100)]\",\n accent: \"[var(--color-accent)]\",\n outline: \"transparent\",\n },\n },\n color: {\n variant: {\n primary: \"[var(--color-primary-100)]\",\n secondary: \"[var(--color-primary-200)]\",\n accent: \"[var(--color-bg-400)]\",\n outline: \"[var(--color-primary-200)]\",\n },\n },\n});\n\nexport function Chip(props: ChipProps) {\n const renderIcon = () => {\n const icon = props.icon;\n if (!icon) return null;\n if (typeof icon === \"string\") return icon;\n return icon();\n };\n\n return (\n <HeadlessButton\n class={`${chip({ variant: props.variant ?? \"primary\" })} ${props.class ?? \"\"}`}\n onPress={() => props.onClick?.()}\n >\n <Show when={props.icon}>\n <span>{renderIcon()}</span>\n </Show>\n {props.text}\n </HeadlessButton>\n );\n}\n"],"mappings":";;;;;AAwBA,MAAM,OAAA,SAAA,UAAA,OAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkCN,SAAgB,KAAK,OAAgB;CACnC,MAAM,mBAAa;EACjB,MAAM,OAAO,MAAM;EACnB,IAAI,CAAC,MAAM,OAAO;EAClB,IAAI,OAAO,SAAS,UAAU,OAAO;EACrC,OAAO,KAAA;CACT;CAEA,OAAA,gBACG,QAAA;EAAA,KAAA,WAAA;GAAA,OACQ,GAAG,KAAK,EAAE,SAAS,MAAM,WAAW,UAAU,CAAA,EAAA,GAAM,MAAM,SAAS;EAAI;EAC9E,eAAe,MAAM,UAAO;EAAA,IAAA,WAAA;GAAA,OAAA,CAAA,gBAE3B,MAAA;IAAA,IAAK,OAAA;KAAA,OAAM,MAAM;IAAI;IAAA,IAAA,WAAA;KAAA,IAAA,OAAA,eAAA,MAAA;KAAA,OAAA,MACb,UAAA;KAAA,OAAA;IAAA;GAAA,CAAA,GAAA,WAER,MAAM,IAAI,CAAA;EAAA;CAAA,CAAA;AAGjB"}
|