slicejs-web-framework 1.0.14 → 1.0.17

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.
@@ -0,0 +1,475 @@
1
+ slice-whatisslice {
2
+ font-family: var(--font-family);
3
+ color: var(--font-primary-color);
4
+ }
5
+
6
+ slice-whatisslice .whatisslice-container {
7
+ max-width: 1000px;
8
+ margin: 0 auto;
9
+ padding: 20px;
10
+ }
11
+
12
+ slice-whatisslice h1 {
13
+ color: var(--primary-color);
14
+ font-size: 2.5em;
15
+ margin-bottom: 30px;
16
+ text-align: center;
17
+ }
18
+
19
+ slice-whatisslice h2 {
20
+ color: var(--primary-color);
21
+ font-size: 1.8em;
22
+ margin: 40px 0 20px;
23
+ padding-bottom: 8px;
24
+ border-bottom: 1px solid var(--secondary-background-color);
25
+ }
26
+
27
+ slice-whatisslice h3 {
28
+ color: var(--font-primary-color);
29
+ font-size: 1.4em;
30
+ margin: 20px 0 15px;
31
+ }
32
+
33
+ slice-whatisslice h4 {
34
+ font-size: 1.2em;
35
+ margin: 15px 0 10px;
36
+ }
37
+
38
+ slice-whatisslice p {
39
+ line-height: 1.6;
40
+ margin-bottom: 15px;
41
+ }
42
+
43
+ /* Intro Section */
44
+ slice-whatisslice .intro-section {
45
+ display: flex;
46
+ align-items: center;
47
+ margin: 30px 0;
48
+ gap: 40px;
49
+ }
50
+
51
+ slice-whatisslice .intro-text {
52
+ flex: 3;
53
+ }
54
+
55
+ slice-whatisslice .intro-image {
56
+ flex: 1;
57
+ display: flex;
58
+ justify-content: center;
59
+ align-items: center;
60
+ }
61
+
62
+ slice-whatisslice .slice-logo-container {
63
+ width: 150px;
64
+ height: 186px;
65
+ position: relative;
66
+ display: flex;
67
+ justify-content: center;
68
+ align-items: center;
69
+ }
70
+
71
+
72
+ slice-whatisslice .slice-logo {
73
+ max-width: 200px;
74
+ height: auto;
75
+ transition: transform 0.3s ease;
76
+ /* Apply theme's primary color using CSS filter */
77
+ filter: brightness(0) saturate(100%) drop-shadow(0 0 0.1rem var(--primary-color));
78
+ }
79
+
80
+ slice-whatisslice .slice-logo-container:hover .slice-logo {
81
+ transform: scale(1.05);
82
+ filter: brightness(0) saturate(100%) drop-shadow(0 0 0.2rem var(--primary-color));
83
+ }
84
+
85
+ /* Tabs */
86
+ slice-whatisslice .tabs-container {
87
+ margin: 40px 0;
88
+ border-radius: var(--border-radius-slice);
89
+ overflow: hidden;
90
+ box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
91
+ }
92
+
93
+ slice-whatisslice .tabs {
94
+ display: flex;
95
+ background-color: var(--secondary-background-color);
96
+ border-bottom: 1px solid var(--primary-color-shade);
97
+ }
98
+
99
+ slice-whatisslice .tab {
100
+ padding: 15px 20px;
101
+ cursor: pointer;
102
+ transition: all 0.3s ease;
103
+ font-weight: bold;
104
+ text-align: center;
105
+ flex: 1;
106
+ }
107
+
108
+ slice-whatisslice .tab:hover {
109
+ background-color: var(--primary-background-color);
110
+ color: var(--primary-color);
111
+ }
112
+
113
+ slice-whatisslice .tab.active {
114
+ background-color: var(--primary-color);
115
+ color: var(--primary-color-contrast);
116
+ }
117
+
118
+ slice-whatisslice .tab-contents {
119
+ background-color: var(--primary-background-color);
120
+ padding: 25px;
121
+ min-height: 400px;
122
+ }
123
+
124
+ slice-whatisslice .tab-content {
125
+ display: none;
126
+ }
127
+
128
+ slice-whatisslice .tab-content.active {
129
+ display: block;
130
+ animation: fadeIn 0.5s ease;
131
+ }
132
+
133
+ /* Core Principles Grid */
134
+ slice-whatisslice .principles-grid {
135
+ display: grid;
136
+ grid-template-columns: repeat(2, 1fr);
137
+ gap: 25px;
138
+ margin: 30px 0;
139
+ }
140
+
141
+ slice-whatisslice .principle {
142
+ background-color: var(--secondary-background-color);
143
+ padding: 20px;
144
+ border-radius: var(--border-radius-slice);
145
+ box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
146
+ transition: transform 0.3s ease;
147
+ }
148
+
149
+ slice-whatisslice .principle:hover {
150
+ transform: translateY(-5px);
151
+ box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
152
+ }
153
+
154
+ slice-whatisslice .principle h3 {
155
+ color: var(--primary-color);
156
+ margin-top: 0;
157
+ border-bottom: 1px solid var(--primary-color-shade);
158
+ padding-bottom: 8px;
159
+ }
160
+
161
+ /* Features List */
162
+ slice-whatisslice .features-list {
163
+ list-style: none;
164
+ padding-left: 0;
165
+ margin: 20px 0;
166
+ }
167
+
168
+ slice-whatisslice .features-list li {
169
+ margin-bottom: 12px;
170
+ padding-left: 30px;
171
+ position: relative;
172
+ }
173
+
174
+ slice-whatisslice .features-list li:before {
175
+ content: "✓";
176
+ position: absolute;
177
+ left: 0;
178
+ color: var(--primary-color);
179
+ font-weight: bold;
180
+ }
181
+
182
+ slice-whatisslice .feature-highlight {
183
+ color: var(--primary-color);
184
+ font-weight: bold;
185
+ }
186
+
187
+ /* Architecture Diagram */
188
+ slice-whatisslice .architecture-diagram {
189
+ display: flex;
190
+ flex-direction: column;
191
+ gap: 20px;
192
+ margin: 30px 0;
193
+ position: relative;
194
+ }
195
+
196
+ slice-whatisslice .component-box {
197
+ padding: 20px;
198
+ border-radius: var(--border-radius-slice);
199
+ text-align: center;
200
+ cursor: pointer;
201
+ transition: all 0.3s ease;
202
+ }
203
+
204
+ slice-whatisslice .component-box h3 {
205
+ margin: 0 0 10px;
206
+ }
207
+
208
+ slice-whatisslice .component-box p {
209
+ margin: 0;
210
+ font-size: 0.9em;
211
+ }
212
+
213
+ slice-whatisslice .component-box.visual {
214
+ background-color: rgba(var(--primary-color-rgb), 0.15);
215
+ border: 2px solid var(--primary-color);
216
+ }
217
+
218
+ slice-whatisslice .component-box.structural {
219
+ background-color: rgba(var(--secondary-color-rgb), 0.15);
220
+ border: 2px solid var(--secondary-color);
221
+ }
222
+
223
+ slice-whatisslice .component-box.service {
224
+ background-color: var(--secondary-background-color);
225
+ border: 2px solid var(--font-primary-color);
226
+ }
227
+
228
+ slice-whatisslice .component-description {
229
+ position: absolute;
230
+ right: 0;
231
+ top: 50%;
232
+ transform: translateY(-50%);
233
+ width: 250px;
234
+ background-color: var(--primary-background-color);
235
+ border: 1px solid var(--primary-color-shade);
236
+ border-radius: var(--border-radius-slice);
237
+ padding: 15px;
238
+ box-shadow: 0 3px 10px rgba(0, 0, 0, 0.2);
239
+ opacity: 0;
240
+ visibility: hidden;
241
+ transition: all 0.3s ease;
242
+ z-index: 2;
243
+ }
244
+
245
+ slice-whatisslice .component-description.visible {
246
+ opacity: 1;
247
+ visibility: visible;
248
+ }
249
+
250
+ slice-whatisslice .component-description h4 {
251
+ margin-top: 0;
252
+ color: var(--primary-color);
253
+ }
254
+
255
+ slice-whatisslice .component-description code {
256
+ display: block;
257
+ background-color: var(--secondary-background-color);
258
+ padding: 5px;
259
+ margin-top: 10px;
260
+ font-family: monospace;
261
+ border-radius: 3px;
262
+ }
263
+
264
+ /* Data Flow */
265
+ slice-whatisslice .data-flow {
266
+ margin: 20px 0;
267
+ padding-left: 25px;
268
+ }
269
+
270
+ slice-whatisslice .data-flow li {
271
+ margin-bottom: 10px;
272
+ }
273
+
274
+ /* Component Sections */
275
+ slice-whatisslice .component-section {
276
+ margin-bottom: 40px;
277
+ }
278
+
279
+ slice-whatisslice .code-example {
280
+ background-color: var(--secondary-background-color);
281
+ border-radius: var(--border-radius-slice);
282
+ overflow: hidden;
283
+ margin: 20px 0;
284
+ }
285
+
286
+ slice-whatisslice pre {
287
+ margin: 0;
288
+ padding: 15px;
289
+ overflow-x: auto;
290
+ }
291
+
292
+ slice-whatisslice code {
293
+ font-family: 'Courier New', monospace;
294
+ }
295
+
296
+ slice-whatisslice .lifecycle-list {
297
+ list-style: none;
298
+ padding-left: 0;
299
+ }
300
+
301
+ slice-whatisslice .lifecycle-list li {
302
+ margin-bottom: 10px;
303
+ padding-left: 20px;
304
+ position: relative;
305
+ }
306
+
307
+ slice-whatisslice .lifecycle-list li:before {
308
+ content: "•";
309
+ position: absolute;
310
+ left: 0;
311
+ color: var(--primary-color);
312
+ font-size: 1.5em;
313
+ line-height: 0.8;
314
+ }
315
+
316
+ /* Code Files */
317
+ slice-whatisslice .code-files {
318
+ display: flex;
319
+ flex-direction: column;
320
+ gap: 20px;
321
+ }
322
+
323
+ slice-whatisslice .code-file {
324
+ flex: 1;
325
+ background-color: var(--secondary-background-color);
326
+ border-radius: var(--border-radius-slice);
327
+ overflow: hidden;
328
+ }
329
+
330
+ slice-whatisslice .code-file h4 {
331
+ background-color: var(--primary-color);
332
+ color: var(--primary-color-contrast);
333
+ margin: 0;
334
+ padding: 8px 15px;
335
+ }
336
+
337
+ /* Benefits Grid */
338
+ slice-whatisslice .benefits-grid {
339
+ display: grid;
340
+ grid-template-columns: repeat(2, 1fr);
341
+ gap: 25px;
342
+ margin: 30px 0;
343
+ }
344
+
345
+ slice-whatisslice .benefit {
346
+ background-color: var(--secondary-background-color);
347
+ padding: 20px;
348
+ border-radius: var(--border-radius-slice);
349
+ box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
350
+ transition: all 0.3s ease;
351
+ }
352
+
353
+ slice-whatisslice .benefit:hover {
354
+ transform: translateY(-5px);
355
+ box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
356
+ }
357
+
358
+ slice-whatisslice .benefit h3 {
359
+ color: var(--primary-color);
360
+ margin-top: 0;
361
+ }
362
+
363
+ /* Comparison Table */
364
+ slice-whatisslice .comparison-section {
365
+ margin: 40px 0;
366
+ }
367
+
368
+ slice-whatisslice .comparison-table {
369
+ overflow-x: auto;
370
+ margin: 20px 0;
371
+ }
372
+
373
+ slice-whatisslice table {
374
+ width: 100%;
375
+ border-collapse: collapse;
376
+ }
377
+
378
+ slice-whatisslice th,
379
+ slice-whatisslice td {
380
+ padding: 12px 15px;
381
+ text-align: center;
382
+ border: 1px solid var(--primary-color-shade);
383
+ }
384
+
385
+ slice-whatisslice th {
386
+ background-color: var(--primary-color);
387
+ color: var(--primary-color-contrast);
388
+ }
389
+
390
+ slice-whatisslice tr:nth-child(even) {
391
+ background-color: var(--secondary-background-color);
392
+ }
393
+
394
+ /* Get Started Section */
395
+ slice-whatisslice .get-started-section {
396
+ background-color: var(--secondary-background-color);
397
+ border-radius: var(--border-radius-slice);
398
+ padding: 30px;
399
+ margin: 40px 0 20px;
400
+ text-align: center;
401
+ }
402
+
403
+ slice-whatisslice .action-buttons {
404
+ display: flex;
405
+ justify-content: center;
406
+ gap: 20px;
407
+ margin-top: 25px;
408
+ }
409
+
410
+ slice-whatisslice .action-button {
411
+ background-color: var(--primary-color);
412
+ color: var(--primary-color-contrast);
413
+ text-decoration: none;
414
+ padding: 12px 25px;
415
+ border-radius: var(--border-radius-slice);
416
+ font-weight: bold;
417
+ transition: all 0.3s ease;
418
+ display: inline-block;
419
+ border: none;
420
+ cursor: pointer;
421
+ font-size: 1em;
422
+ }
423
+
424
+ slice-whatisslice .action-button:hover {
425
+ background-color: var(--secondary-color);
426
+ transform: translateY(-3px);
427
+ }
428
+
429
+ slice-whatisslice .action-button.github {
430
+ background-color: #333;
431
+ }
432
+
433
+ slice-whatisslice .action-button.github:hover {
434
+ background-color: #555;
435
+ }
436
+
437
+ /* Animations */
438
+ @keyframes fadeIn {
439
+ from { opacity: 0; }
440
+ to { opacity: 1; }
441
+ }
442
+
443
+ /* Responsive Design */
444
+ @media (max-width: 768px) {
445
+ slice-whatisslice .intro-section {
446
+ flex-direction: column;
447
+ gap: 20px;
448
+ }
449
+
450
+ slice-whatisslice .principles-grid,
451
+ slice-whatisslice .benefits-grid {
452
+ grid-template-columns: 1fr;
453
+ }
454
+
455
+ slice-whatisslice .tabs {
456
+ flex-direction: column;
457
+ }
458
+
459
+ slice-whatisslice .action-buttons {
460
+ flex-direction: column;
461
+ align-items: center;
462
+ }
463
+
464
+ slice-whatisslice .component-description {
465
+ position: static;
466
+ width: auto;
467
+ transform: none;
468
+ margin-top: 10px;
469
+ display: none;
470
+ }
471
+
472
+ slice-whatisslice .component-description.visible {
473
+ display: block;
474
+ }
475
+ }