jbx 2.3.0 → 2.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/src/style.css ADDED
@@ -0,0 +1,359 @@
1
+ html {
2
+ box-sizing: border-box;
3
+ }
4
+ *,
5
+ *:before,
6
+ *:after {
7
+ box-sizing: inherit;
8
+ }
9
+
10
+ :root {
11
+ --size: 16px;
12
+ --font-size: 20px;
13
+ --font-size-small: 17px;
14
+ --radius-small: 2px;
15
+ }
16
+
17
+ @media screen and (max-width: 1200px) {
18
+ :root {
19
+ --font-size: 18px;
20
+ --font-size-small: 16px;
21
+ --size: 14px;
22
+ }
23
+ }
24
+
25
+ @media screen and (max-width: 600px) {
26
+ :root {
27
+ --font-size: 16px;
28
+ --font-size-small: 14px;
29
+ }
30
+ }
31
+
32
+ * {
33
+ padding: 0;
34
+ margin: 0;
35
+ position: relative;
36
+ }
37
+
38
+ body {
39
+ touch-action: pan-y;
40
+ }
41
+
42
+ body,
43
+ input,
44
+ textarea {
45
+ font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', sans-serif;
46
+ }
47
+
48
+ body {
49
+ background: #fcfcfd;
50
+ color: #000;
51
+ }
52
+
53
+ h1,
54
+ h2,
55
+ h3,
56
+ h4 {
57
+ line-height: 1;
58
+ padding: 0;
59
+ font-variation-settings: 'wdth' 107;
60
+ color: var(--base-font-color-bright);
61
+ font-weight: 650;
62
+ }
63
+
64
+ strong,
65
+ b {
66
+ font-weight: 500;
67
+ }
68
+
69
+ .jbx-h1 {
70
+ font-size: calc(var(--font-size) * 2);
71
+ font-weight: 700;
72
+ }
73
+ .jbx-h2 {
74
+ font-size: calc(var(--font-size) * 1.25);
75
+ }
76
+ .jbx-h3 {
77
+ font-size: calc(var(--font-size) * 1);
78
+ }
79
+ .jbx-h4 {
80
+ font-size: var(--font-size-small);
81
+ text-transform: uppercase;
82
+ }
83
+
84
+ /* base text */
85
+ html,
86
+ body,
87
+ .jbx-button,
88
+ .jbx-input {
89
+ font-size: var(--font-size);
90
+ line-height: 1;
91
+ }
92
+
93
+ .jbx-code-snippet {
94
+ border-radius: var(--size);
95
+ font-family: monaco, monospace;
96
+ border: none;
97
+ width: 100%;
98
+ font-size: calc(var(--size) - 3px);
99
+ line-height: 1.33;
100
+ padding: var(--size) calc(var(--size) * 1.2);
101
+ background: #ecf0f1;
102
+ color: #34495e;
103
+ resize: none;
104
+ }
105
+ .jbx-code-snippet:focus {
106
+ outline: none;
107
+ }
108
+
109
+ .jbx-code-area {
110
+ border-radius: var(--size);
111
+ font-family: monaco, monospace;
112
+ border: none;
113
+ width: 100%;
114
+ font-size: calc(var(--size) - 3px);
115
+ line-height: 1.33;
116
+ padding: var(--size) calc(var(--size) * 1.2);
117
+ background: #ecf0f1;
118
+ color: #34495e;
119
+ resize: none;
120
+ min-height: 120px;
121
+ }
122
+ .jbx-code-area:focus {
123
+ outline: none;
124
+ }
125
+
126
+ .jbx-button {
127
+ color: #000;
128
+ border-radius: var(--radius-small);
129
+ appearance: none;
130
+ user-select: none;
131
+ cursor: pointer;
132
+ display: inline-block;
133
+ background-color: #eee;
134
+ box-shadow: 3px 3px 0 #ccc;
135
+ padding: 0 calc(var(--size) / 2);
136
+ border: none;
137
+ height: calc(var(--size) * 2.5);
138
+ transition: top 0.1s, left 0.1s, box-shadow 0.05s;
139
+ }
140
+ .jbx-button:active {
141
+ top: 1px;
142
+ left: 1px;
143
+ box-shadow: 1px 1px 0 #ccc;
144
+ }
145
+
146
+ /* LINKS */
147
+ .jbx-a {
148
+ cursor: pointer;
149
+ color: #000;
150
+ box-shadow: #0002 0 2px 0;
151
+ font-weight: 500;
152
+ text-decoration: none;
153
+ }
154
+ .jbx-a::after {
155
+ content: '↗';
156
+ color: #0004;
157
+ font-size: var(--font-size-small);
158
+ position: relative;
159
+ top: -1px;
160
+ right: -1px;
161
+ transition: top 0.3s, right 0.3s, color 0.3s;
162
+ }
163
+ .jbx-a:hover,
164
+ .jbx-block-link:hover .jbx-a {
165
+ box-shadow: var(--accent-color) 0 2px 0;
166
+ }
167
+ .jbx-a:hover::after,
168
+ .jbx-block-link:hover .jbx-a::after {
169
+ top: -3px;
170
+ right: -3px;
171
+ color: var(--accent-color);
172
+ }
173
+
174
+ .jbx-block-link {
175
+ min-width: 300px;
176
+ flex: 1;
177
+ text-decoration: none;
178
+ color: #000;
179
+ display: inline-block;
180
+ padding: var(--size);
181
+ }
182
+ a.jbx-a::before,
183
+ .jbx-block-link::before {
184
+ content: '';
185
+ display: block;
186
+ position: absolute;
187
+ background-color: #ecf0f1;
188
+ z-index: -1;
189
+ transition: transform 0.2s, opacity 0.2s;
190
+ transform: scale(0.98) translatey(4px);
191
+ opacity: 0;
192
+ top: -4px;
193
+ left: -6px;
194
+ right: -6px;
195
+ bottom: -4px;
196
+ }
197
+ .jbx-block-link::before {
198
+ border-radius: 16px;
199
+ }
200
+ a.jbx-a::before {
201
+ border-radius: 8px;
202
+ }
203
+ a.jbx-a:hover::before,
204
+ .jbx-block-link:hover::before {
205
+ transform: scale(1) translatey(0);
206
+ opacity: 1;
207
+ }
208
+
209
+ .jbx-a {
210
+ display: inline-block;
211
+ }
212
+
213
+ /* /LINKS */
214
+
215
+ .jbx-small-text {
216
+ font-size: var(--font-size-small);
217
+ }
218
+
219
+ .jbx-container {
220
+ max-width: 1080px;
221
+ margin: 0 auto;
222
+ padding: calc(var(--size) * 2.5) calc(var(--size) * 1.5) calc(var(--size) * 4);
223
+ }
224
+
225
+ .jbx-box {
226
+ flex: 1;
227
+ }
228
+
229
+ .jbx-inline {
230
+ flex: 1;
231
+ display: flex;
232
+ flex-wrap: wrap;
233
+ flex-direction: row;
234
+ }
235
+
236
+ .jbx-stack {
237
+ flex: 1;
238
+ display: flex;
239
+ flex-wrap: wrap;
240
+ flex-direction: column;
241
+ }
242
+
243
+ .jbx-text {
244
+ line-height: 1.4;
245
+ }
246
+
247
+ .jbx-input {
248
+ color: #777;
249
+ -webkit-text-fill-color: #777;
250
+ opacity: 1;
251
+ flex: 1;
252
+ display: block;
253
+ appearance: none;
254
+ border: none;
255
+ border-radius: var(--radius-small);
256
+ height: calc(var(--size) * 2.5);
257
+ background-color: #eee;
258
+ padding: 0 calc(var(--size) * 0.5);
259
+ box-shadow: inset rgba(0, 0, 0, 0.04) 3px 3px 0, inset rgba(0, 0, 0, 0.03) 0.5px 0.5px 0;
260
+ }
261
+
262
+ .jbx-dropzone {
263
+ height: 120px;
264
+ flex: 1;
265
+ display: flex;
266
+ text-align: center;
267
+ align-items: center;
268
+ align-content: center;
269
+ justify-content: center;
270
+ flex-direction: column;
271
+ border: 2px dashed #000;
272
+ color: #000;
273
+ padding: 0;
274
+ cursor: pointer;
275
+ }
276
+ .jbx-dropzone:hover {
277
+ border-color: #999;
278
+ }
279
+ .jbx-dropzone span {
280
+ width: 100%;
281
+ cursor: pointer;
282
+ }
283
+ .jbx-dropzone input {
284
+ position: absolute;
285
+ top: 0;
286
+ left: 0;
287
+ height: 100%;
288
+ width: 100%;
289
+ opacity: 0;
290
+ cursor: pointer;
291
+ }
292
+
293
+ .jbx-range {
294
+ flex: 1;
295
+ width: 100%;
296
+ appearance: none;
297
+ background-color: #bdc3c780;
298
+ height: var(--size);
299
+ border-radius: 0;
300
+ border-radius: var(--radius-small);
301
+ }
302
+
303
+ .jbx-range::-webkit-slider-thumb {
304
+ -webkit-appearance: none;
305
+ appearance: none;
306
+ box-shadow: none;
307
+ border-radius: 0;
308
+ height: calc(var(--size) * 2);
309
+ width: var(--size);
310
+ background-color: #000;
311
+ border: none;
312
+ border-radius: var(--radius-small);
313
+ }
314
+ .jbx-range::-moz-range-thumb {
315
+ appearance: none;
316
+ box-shadow: none;
317
+ border-radius: 0;
318
+ height: calc(var(--size) * 2);
319
+ width: var(--size);
320
+ background-color: #000;
321
+ border: none;
322
+ border-radius: var(--radius-small);
323
+ }
324
+ .jbx-range::-webkit-slider-runnable-track {
325
+ appearance: none;
326
+ /*background-color: yellow;*/
327
+ }
328
+ .jbx-range:focus {
329
+ outline: none;
330
+ }
331
+
332
+ .jbx-bullet-container {
333
+ display: inline-block;
334
+ margin: -8px 4px -8px 0;
335
+ }
336
+
337
+ .jbx-bullet {
338
+ border: 1.5px solid #000;
339
+ color: #000;
340
+ text-align: center;
341
+ line-height: 0.99;
342
+ display: flex;
343
+ align-items: center;
344
+ justify-content: center;
345
+ font-size: calc(var(--font-size-small) - 3px);
346
+ height: calc(var(--size) * 1.25);
347
+ width: calc(var(--size) * 1.25);
348
+ border-radius: 100%;
349
+ top: -2px;
350
+ font-weight: 500;
351
+ }
352
+
353
+ .jbx-hr {
354
+ margin: calc(var(--size) * 2) auto;
355
+ width: 38.2%;
356
+ border-radius: 0;
357
+ border: none;
358
+ border-top: 2px solid #ecf0f1;
359
+ }
package/tsconfig.json ADDED
@@ -0,0 +1,20 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "es2022",
4
+ "lib": ["dom", "dom.iterable", "esnext"],
5
+ "allowJs": true,
6
+ "skipLibCheck": true,
7
+ "strict": true,
8
+ "forceConsistentCasingInFileNames": true,
9
+ "noEmit": true,
10
+ "esModuleInterop": true,
11
+ "module": "esnext",
12
+ "moduleResolution": "node",
13
+ "resolveJsonModule": true,
14
+ "isolatedModules": true,
15
+ "jsx": "preserve",
16
+ "incremental": true
17
+ },
18
+ "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx"],
19
+ "exclude": ["node_modules"]
20
+ }