ds-one 0.2.5-alpha.12 → 0.2.5-alpha.14
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/DS1/0-face/device.ts +8 -0
- package/DS1/1-root/one.css +41 -17
- package/DS1/2-core/ds-banner.ts +194 -1
- package/DS1/2-core/ds-button.ts +17 -3
- package/DS1/2-core/ds-text.ts +1 -1
- package/DS1/4-page/ds-container.ts +60 -0
- package/DS1/4-page/ds-grid.ts +43 -3
- package/DS1/4-page/ds-layout.ts +152 -142
- package/DS1/index.ts +1 -0
- package/README.md +2 -2
- package/dist/0-face/device.d.ts.map +1 -1
- package/dist/0-face/device.js +6 -0
- package/dist/2-core/ds-banner.d.ts +71 -0
- package/dist/2-core/ds-banner.d.ts.map +1 -1
- package/dist/2-core/ds-banner.js +171 -1
- package/dist/2-core/ds-button.d.ts.map +1 -1
- package/dist/2-core/ds-button.js +17 -3
- package/dist/2-core/ds-text.js +1 -1
- package/dist/4-page/ds-container.d.ts +17 -0
- package/dist/4-page/ds-container.d.ts.map +1 -0
- package/dist/4-page/ds-container.js +43 -0
- package/dist/4-page/ds-grid.d.ts +5 -0
- package/dist/4-page/ds-grid.d.ts.map +1 -1
- package/dist/4-page/ds-grid.js +38 -3
- package/dist/4-page/ds-layout.d.ts +2 -2
- package/dist/4-page/ds-layout.d.ts.map +1 -1
- package/dist/4-page/ds-layout.js +151 -141
- package/dist/ds-one.bundle.js +250 -147
- package/dist/ds-one.bundle.js.map +4 -4
- package/dist/ds-one.bundle.min.js +211 -154
- package/dist/ds-one.bundle.min.js.map +4 -4
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/package.json +1 -1
package/dist/ds-one.bundle.js
CHANGED
|
@@ -40,11 +40,15 @@ function initDeviceDetection() {
|
|
|
40
40
|
const scalingFactor = actualWidth / designWidth;
|
|
41
41
|
document.documentElement.style.setProperty("--sf", scalingFactor.toFixed(3));
|
|
42
42
|
document.documentElement.style.setProperty("--sf", scalingFactor.toFixed(3));
|
|
43
|
+
document.documentElement.classList.add("mobile");
|
|
44
|
+
document.documentElement.classList.remove("desktop");
|
|
43
45
|
console.log(`[DS one] Mobile device detected - ${deviceInfo.deviceType} (${deviceInfo.screenWidth}x${deviceInfo.screenHeight}), scaling factor: ${scalingFactor.toFixed(2)}`);
|
|
44
46
|
} else {
|
|
45
47
|
if (typeof document !== "undefined") {
|
|
46
48
|
document.documentElement.style.setProperty("--sf", "1");
|
|
47
49
|
document.documentElement.style.setProperty("--sf", "1");
|
|
50
|
+
document.documentElement.classList.add("desktop");
|
|
51
|
+
document.documentElement.classList.remove("mobile");
|
|
48
52
|
}
|
|
49
53
|
console.log(`[DS one] Desktop device detected (${deviceInfo.screenWidth}x${deviceInfo.screenHeight})`);
|
|
50
54
|
}
|
|
@@ -1888,7 +1892,7 @@ Text.styles = i4`
|
|
|
1888
1892
|
:host {
|
|
1889
1893
|
display: inline;
|
|
1890
1894
|
font-family: var(--typeface-regular);
|
|
1891
|
-
font-size:
|
|
1895
|
+
font-size: var(--type-size-default);
|
|
1892
1896
|
font-weight: var(--type-weight-default);
|
|
1893
1897
|
line-height: calc(var(--type-lineheight-default) * var(--sf));
|
|
1894
1898
|
letter-spacing: calc(var(--type-letterspacing-default) * var(--sf));
|
|
@@ -1978,10 +1982,11 @@ Button.properties = {
|
|
|
1978
1982
|
Button.styles = i4`
|
|
1979
1983
|
button {
|
|
1980
1984
|
max-height: calc(var(--08) * var(--sf));
|
|
1981
|
-
|
|
1985
|
+
display: inline-flex;
|
|
1986
|
+
align-items: center;
|
|
1987
|
+
justify-content: center;
|
|
1982
1988
|
cursor: pointer;
|
|
1983
|
-
|
|
1984
|
-
padding: 0 calc(1px * var(--sf));
|
|
1989
|
+
padding: 0 calc(0.5px * var(--sf));
|
|
1985
1990
|
color: var(--button-text-color);
|
|
1986
1991
|
font-family: var(--typeface-regular);
|
|
1987
1992
|
}
|
|
@@ -2004,6 +2009,19 @@ Button.styles = i4`
|
|
|
2004
2009
|
font-family: var(--typeface-regular);
|
|
2005
2010
|
}
|
|
2006
2011
|
|
|
2012
|
+
button.text {
|
|
2013
|
+
background-color: transparent;
|
|
2014
|
+
color: var(--button-color, var(--button-text-color));
|
|
2015
|
+
font-family: var(--typeface-regular);
|
|
2016
|
+
padding: 0;
|
|
2017
|
+
text-decoration: none;
|
|
2018
|
+
}
|
|
2019
|
+
|
|
2020
|
+
button.text:hover {
|
|
2021
|
+
opacity: 0.8;
|
|
2022
|
+
text-decoration: none;
|
|
2023
|
+
}
|
|
2024
|
+
|
|
2007
2025
|
button[bold] {
|
|
2008
2026
|
font-weight: var(--type-weight-bold);
|
|
2009
2027
|
font-family: var(--typeface-medium);
|
|
@@ -3136,8 +3154,82 @@ DsTable.styles = i4`
|
|
|
3136
3154
|
`;
|
|
3137
3155
|
customElements.define("ds-table", DsTable);
|
|
3138
3156
|
|
|
3157
|
+
// dist/4-page/ds-container.js
|
|
3158
|
+
var Container = class extends i6 {
|
|
3159
|
+
render() {
|
|
3160
|
+
return x`<slot></slot>`;
|
|
3161
|
+
}
|
|
3162
|
+
};
|
|
3163
|
+
Container.styles = i4`
|
|
3164
|
+
:host {
|
|
3165
|
+
display: flex;
|
|
3166
|
+
width: 100%;
|
|
3167
|
+
max-width: 100%;
|
|
3168
|
+
flex-direction: column;
|
|
3169
|
+
background-color: var(--background-color);
|
|
3170
|
+
box-sizing: border-box;
|
|
3171
|
+
}
|
|
3172
|
+
|
|
3173
|
+
/* Ensure children don't overflow */
|
|
3174
|
+
:host ::slotted(*) {
|
|
3175
|
+
max-width: 100%;
|
|
3176
|
+
box-sizing: border-box;
|
|
3177
|
+
}
|
|
3178
|
+
|
|
3179
|
+
/* Mobile: 100% width */
|
|
3180
|
+
@media (max-width: 820px) {
|
|
3181
|
+
:host {
|
|
3182
|
+
width: 100%;
|
|
3183
|
+
max-width: 100%;
|
|
3184
|
+
}
|
|
3185
|
+
}
|
|
3186
|
+
|
|
3187
|
+
/* Desktop: max-width 1000px, centered */
|
|
3188
|
+
@media (min-width: 821px) {
|
|
3189
|
+
:host {
|
|
3190
|
+
max-width: 1000px;
|
|
3191
|
+
margin-left: auto;
|
|
3192
|
+
margin-right: auto;
|
|
3193
|
+
width: 100%;
|
|
3194
|
+
}
|
|
3195
|
+
}
|
|
3196
|
+
`;
|
|
3197
|
+
customElements.define("ds-container", Container);
|
|
3198
|
+
|
|
3139
3199
|
// dist/4-page/ds-grid.js
|
|
3140
3200
|
var Grid = class extends i6 {
|
|
3201
|
+
connectedCallback() {
|
|
3202
|
+
super.connectedCallback();
|
|
3203
|
+
this.updateMobileClass();
|
|
3204
|
+
this.resizeObserver = () => {
|
|
3205
|
+
if (this.resizeTimeout) {
|
|
3206
|
+
clearTimeout(this.resizeTimeout);
|
|
3207
|
+
}
|
|
3208
|
+
this.resizeTimeout = setTimeout(() => {
|
|
3209
|
+
this.updateMobileClass();
|
|
3210
|
+
}, 100);
|
|
3211
|
+
};
|
|
3212
|
+
window.addEventListener("resize", this.resizeObserver);
|
|
3213
|
+
}
|
|
3214
|
+
disconnectedCallback() {
|
|
3215
|
+
super.disconnectedCallback();
|
|
3216
|
+
if (this.resizeObserver) {
|
|
3217
|
+
window.removeEventListener("resize", this.resizeObserver);
|
|
3218
|
+
}
|
|
3219
|
+
if (this.resizeTimeout) {
|
|
3220
|
+
clearTimeout(this.resizeTimeout);
|
|
3221
|
+
}
|
|
3222
|
+
}
|
|
3223
|
+
updateMobileClass() {
|
|
3224
|
+
const isMobile = detectMobileDevice();
|
|
3225
|
+
if (isMobile) {
|
|
3226
|
+
this.classList.add("mobile");
|
|
3227
|
+
this.classList.remove("desktop");
|
|
3228
|
+
} else {
|
|
3229
|
+
this.classList.add("desktop");
|
|
3230
|
+
this.classList.remove("mobile");
|
|
3231
|
+
}
|
|
3232
|
+
}
|
|
3141
3233
|
render() {
|
|
3142
3234
|
return x``;
|
|
3143
3235
|
}
|
|
@@ -3151,13 +3243,13 @@ Grid.styles = i4`
|
|
|
3151
3243
|
margin-left: 0.5px !important;
|
|
3152
3244
|
display: grid;
|
|
3153
3245
|
width: 1440px;
|
|
3154
|
-
height:
|
|
3246
|
+
height: 1280px;
|
|
3155
3247
|
grid-template-columns: repeat(auto-fill, 19px);
|
|
3156
3248
|
grid-template-rows: repeat(auto-fill, 19px);
|
|
3157
3249
|
gap: 1px;
|
|
3158
3250
|
row-rule: calc(1px * var(--sf)) solid var(--grid-color);
|
|
3159
3251
|
column-rule: calc(1px * var(--sf)) solid var(--grid-color);
|
|
3160
|
-
outline: 1px solid
|
|
3252
|
+
outline: calc(1px * var(--sf)) solid var(--yellow);
|
|
3161
3253
|
position: fixed;
|
|
3162
3254
|
top: 0;
|
|
3163
3255
|
left: 50%;
|
|
@@ -3170,7 +3262,7 @@ Grid.styles = i4`
|
|
|
3170
3262
|
:host(.mobile) {
|
|
3171
3263
|
width: calc(100% - calc(1px * var(--sf)));
|
|
3172
3264
|
max-width: 100vw;
|
|
3173
|
-
margin-left: 0 !important;
|
|
3265
|
+
margin-left: 0.5px !important;
|
|
3174
3266
|
margin-top: 0 !important;
|
|
3175
3267
|
box-sizing: border-box;
|
|
3176
3268
|
position: fixed;
|
|
@@ -3209,58 +3301,58 @@ var Layout = class extends i6 {
|
|
|
3209
3301
|
this.mode = "portfolio";
|
|
3210
3302
|
}
|
|
3211
3303
|
render() {
|
|
3212
|
-
const
|
|
3304
|
+
const isView = this.view || this.mode === "view";
|
|
3213
3305
|
const isPortfolio = this.mode === "portfolio";
|
|
3214
3306
|
const isCompany = this.mode === "company";
|
|
3215
3307
|
const isApp = this.mode === "app";
|
|
3216
3308
|
return x`
|
|
3217
3309
|
<slot></slot>
|
|
3218
|
-
${
|
|
3219
|
-
<div class="
|
|
3310
|
+
${isView ? x`
|
|
3311
|
+
<div class="view-overlay">
|
|
3220
3312
|
${isApp ? x`
|
|
3221
|
-
<div class="
|
|
3313
|
+
<div class="view-area view-banner">
|
|
3222
3314
|
<ds-text key="banner">banner</ds-text>
|
|
3223
3315
|
</div>
|
|
3224
|
-
<div class="
|
|
3316
|
+
<div class="view-area view-header">
|
|
3225
3317
|
<ds-text key="header">header</ds-text>
|
|
3226
3318
|
</div>
|
|
3227
3319
|
|
|
3228
|
-
<div class="
|
|
3320
|
+
<div class="view-area view-main">
|
|
3229
3321
|
<ds-text key="main">main</ds-text>
|
|
3230
3322
|
</div>
|
|
3231
|
-
<div class="
|
|
3323
|
+
<div class="view-area view-footer">
|
|
3232
3324
|
<ds-text key="footer">footer</ds-text>
|
|
3233
3325
|
</div>
|
|
3234
3326
|
` : isCompany ? x`
|
|
3235
|
-
<div class="
|
|
3327
|
+
<div class="view-area view-header">
|
|
3236
3328
|
<ds-text key="header">header</ds-text>
|
|
3237
3329
|
</div>
|
|
3238
|
-
<div class="
|
|
3330
|
+
<div class="view-area view-content">
|
|
3239
3331
|
<ds-text key="content">content</ds-text>
|
|
3240
3332
|
</div>
|
|
3241
|
-
<div class="
|
|
3333
|
+
<div class="view-area view-footer">
|
|
3242
3334
|
<ds-text key="footer">footer</ds-text>
|
|
3243
3335
|
</div>
|
|
3244
3336
|
` : isPortfolio ? x`
|
|
3245
|
-
<div class="
|
|
3337
|
+
<div class="view-area view-square">
|
|
3246
3338
|
<ds-text key="square">square</ds-text>
|
|
3247
3339
|
</div>
|
|
3248
|
-
<div class="
|
|
3340
|
+
<div class="view-area view-title">
|
|
3249
3341
|
<ds-text key="title">title</ds-text>
|
|
3250
3342
|
</div>
|
|
3251
|
-
<div class="
|
|
3343
|
+
<div class="view-area view-header">
|
|
3252
3344
|
<ds-text key="header">header</ds-text>
|
|
3253
3345
|
</div>
|
|
3254
|
-
<div class="
|
|
3346
|
+
<div class="view-area view-projects">
|
|
3255
3347
|
<ds-text key="projects">projects</ds-text>
|
|
3256
3348
|
</div>
|
|
3257
|
-
<div class="
|
|
3349
|
+
<div class="view-area view-bio">
|
|
3258
3350
|
<ds-text key="bio">bio</ds-text>
|
|
3259
3351
|
</div>
|
|
3260
|
-
<div class="
|
|
3352
|
+
<div class="view-area view-nav">
|
|
3261
3353
|
<ds-text key="nav">nav</ds-text>
|
|
3262
3354
|
</div>
|
|
3263
|
-
<div class="
|
|
3355
|
+
<div class="view-area view-footer">
|
|
3264
3356
|
<ds-text key="footer">footer</ds-text>
|
|
3265
3357
|
</div>
|
|
3266
3358
|
` : ""}
|
|
@@ -3272,7 +3364,7 @@ var Layout = class extends i6 {
|
|
|
3272
3364
|
Layout.properties = {
|
|
3273
3365
|
mode: { type: String },
|
|
3274
3366
|
align: { type: String },
|
|
3275
|
-
|
|
3367
|
+
view: { type: Boolean }
|
|
3276
3368
|
};
|
|
3277
3369
|
Layout.styles = i4`
|
|
3278
3370
|
:host {
|
|
@@ -3281,80 +3373,106 @@ Layout.styles = i4`
|
|
|
3281
3373
|
width: 100%;
|
|
3282
3374
|
}
|
|
3283
3375
|
|
|
3376
|
+
slot {
|
|
3377
|
+
display: contents;
|
|
3378
|
+
}
|
|
3379
|
+
|
|
3284
3380
|
:host([mode="portfolio"]) {
|
|
3285
|
-
|
|
3286
|
-
|
|
3287
|
-
|
|
3288
|
-
"
|
|
3289
|
-
|
|
3290
|
-
|
|
3291
|
-
".
|
|
3292
|
-
|
|
3293
|
-
|
|
3294
|
-
|
|
3295
|
-
". nav ."
|
|
3296
|
-
". . ."
|
|
3297
|
-
". footer ."
|
|
3298
|
-
". . .";
|
|
3381
|
+
--portfolio-cols: 120px 480px 40px;
|
|
3382
|
+
--portfolio-rows: 120px 120px 60px 180px 60px 120px 60px 20px 120px 120px;
|
|
3383
|
+
--portfolio-areas: "square . ." ". title ." ". header ." ". projects ."
|
|
3384
|
+
". . ." ". bio ." ". . ." ". nav ." ". . ." ". footer ." ". . .";
|
|
3385
|
+
--portfolio-overlay-cols: 120px 480px;
|
|
3386
|
+
--portfolio-overlay-areas: "square ." ". title" ". header" ". projects"
|
|
3387
|
+
". ." ". bio" ". ." ". nav" ". ." ". footer" ". .";
|
|
3388
|
+
grid-template-columns: var(--portfolio-cols);
|
|
3389
|
+
grid-template-rows: var(--portfolio-rows);
|
|
3390
|
+
grid-template-areas: var(--portfolio-areas);
|
|
3299
3391
|
min-height: 600px;
|
|
3300
3392
|
background-color: rgba(165, 165, 165, 0.03);
|
|
3301
3393
|
max-width: 640px;
|
|
3302
|
-
margin: 0
|
|
3394
|
+
margin: 0;
|
|
3395
|
+
}
|
|
3396
|
+
|
|
3397
|
+
:host([mode="portfolio"]) .view-overlay {
|
|
3398
|
+
grid-template-columns: var(--portfolio-overlay-cols);
|
|
3399
|
+
grid-template-rows: var(--portfolio-rows);
|
|
3400
|
+
grid-template-areas: var(--portfolio-overlay-areas);
|
|
3303
3401
|
}
|
|
3304
3402
|
|
|
3305
3403
|
:host([mode="company"]) {
|
|
3306
|
-
|
|
3307
|
-
|
|
3308
|
-
|
|
3309
|
-
". . ."
|
|
3310
|
-
". header ."
|
|
3311
|
-
". . ."
|
|
3312
|
-
". content ."
|
|
3313
|
-
". . ."
|
|
3404
|
+
--company-cols: auto 400px auto;
|
|
3405
|
+
--company-rows: 80px 20px 20px 120px 20px 120px;
|
|
3406
|
+
--company-areas: ". . ." ". header ." ". . ." ". content ." ". . ."
|
|
3314
3407
|
". footer .";
|
|
3408
|
+
grid-template-columns: var(--company-cols);
|
|
3409
|
+
grid-template-rows: var(--company-rows);
|
|
3410
|
+
grid-template-areas: var(--company-areas);
|
|
3315
3411
|
gap: 0;
|
|
3316
3412
|
max-width: 100%;
|
|
3317
3413
|
}
|
|
3318
3414
|
|
|
3319
|
-
:host([
|
|
3415
|
+
:host([mode="company"]) .view-overlay {
|
|
3416
|
+
grid-template-columns: var(--company-cols);
|
|
3417
|
+
grid-template-rows: var(--company-rows);
|
|
3418
|
+
grid-template-areas: var(--company-areas);
|
|
3419
|
+
gap: 0;
|
|
3420
|
+
}
|
|
3421
|
+
|
|
3422
|
+
:host([align="left"]),
|
|
3423
|
+
:host([mode="portfolio"][align="left"]),
|
|
3424
|
+
:host([mode="company"][align="left"]),
|
|
3425
|
+
:host([mode="app"][align="left"]) {
|
|
3320
3426
|
margin: 0;
|
|
3321
3427
|
justify-self: start;
|
|
3322
3428
|
}
|
|
3323
3429
|
|
|
3324
|
-
:host([align="center"])
|
|
3430
|
+
:host([align="center"]),
|
|
3431
|
+
:host([mode="portfolio"][align="center"]),
|
|
3432
|
+
:host([mode="company"][align="center"]),
|
|
3433
|
+
:host([mode="app"][align="center"]) {
|
|
3325
3434
|
margin: 0 auto;
|
|
3326
3435
|
justify-self: center;
|
|
3327
3436
|
}
|
|
3328
3437
|
|
|
3329
|
-
:host([align="right"])
|
|
3438
|
+
:host([align="right"]),
|
|
3439
|
+
:host([mode="portfolio"][align="right"]),
|
|
3440
|
+
:host([mode="company"][align="right"]),
|
|
3441
|
+
:host([mode="app"][align="right"]) {
|
|
3330
3442
|
margin: 0 0 0 auto;
|
|
3331
3443
|
justify-self: end;
|
|
3332
3444
|
}
|
|
3333
3445
|
|
|
3334
3446
|
/* App mode - Base */
|
|
3335
3447
|
:host([mode="app"]) {
|
|
3336
|
-
|
|
3337
|
-
|
|
3338
|
-
|
|
3339
|
-
|
|
3340
|
-
|
|
3341
|
-
|
|
3448
|
+
--app-cols: 100%;
|
|
3449
|
+
--app-rows: calc(var(--unit) * var(--sf)) calc(var(--unit) * var(--sf))
|
|
3450
|
+
calc(var(--unit) * var(--sf)) calc(var(--dozen) * var(--sf))
|
|
3451
|
+
calc(var(--quad) * var(--sf)) calc(var(--unit) * var(--sf));
|
|
3452
|
+
--app-areas: "banner" "." "header" "." "main" "." "footer";
|
|
3453
|
+
--app-overlay-cols: 100%;
|
|
3454
|
+
--app-overlay-rows: calc(var(--unit) * var(--sf))
|
|
3455
|
+
calc(var(--unit) * var(--sf)) calc(var(--unit) * var(--sf))
|
|
3456
|
+
calc(var(--unit) * var(--sf)) calc(var(--dozen) * var(--sf))
|
|
3457
|
+
calc(var(--quad) * var(--sf)) calc(var(--unit) * var(--sf));
|
|
3458
|
+
--app-overlay-areas: "banner" "." "header" "." "main" "." "footer";
|
|
3459
|
+
grid-template-columns: var(--app-cols);
|
|
3460
|
+
grid-template-rows: var(--app-rows);
|
|
3461
|
+
grid-template-areas: var(--app-areas);
|
|
3342
3462
|
min-height: 100vh;
|
|
3343
3463
|
background-color: transparent;
|
|
3344
|
-
width:
|
|
3464
|
+
width: calc(240px * var(--sf, 1));
|
|
3465
|
+
max-width: calc(240px * var(--sf, 1));
|
|
3345
3466
|
margin: 0 auto;
|
|
3346
|
-
gap: 0;
|
|
3347
3467
|
}
|
|
3348
3468
|
|
|
3349
|
-
|
|
3350
|
-
|
|
3351
|
-
|
|
3352
|
-
|
|
3353
|
-
calc(9.751px * var(--sf, 1));
|
|
3354
|
-
gap: calc(28px * var(--sf, 1));
|
|
3469
|
+
:host([mode="app"]) .view-overlay {
|
|
3470
|
+
grid-template-columns: var(--app-overlay-cols);
|
|
3471
|
+
grid-template-rows: var(--app-overlay-rows);
|
|
3472
|
+
grid-template-areas: var(--app-overlay-areas);
|
|
3355
3473
|
}
|
|
3356
3474
|
|
|
3357
|
-
.
|
|
3475
|
+
.view-overlay {
|
|
3358
3476
|
position: absolute;
|
|
3359
3477
|
margin-left: -1px;
|
|
3360
3478
|
top: 0;
|
|
@@ -3364,129 +3482,114 @@ Layout.styles = i4`
|
|
|
3364
3482
|
pointer-events: none;
|
|
3365
3483
|
z-index: 1000;
|
|
3366
3484
|
display: grid;
|
|
3367
|
-
font-size: 18px;
|
|
3368
|
-
font-weight: bold;
|
|
3369
|
-
}
|
|
3370
|
-
|
|
3371
|
-
:host([mode="portfolio"]) .debug-overlay {
|
|
3372
|
-
grid-template-columns: 120px 480px;
|
|
3373
|
-
grid-template-rows: 120px 120px 60px 180px 60px 120px 60px 20px 120px 120px;
|
|
3374
|
-
grid-template-areas:
|
|
3375
|
-
"square ."
|
|
3376
|
-
". title"
|
|
3377
|
-
". header"
|
|
3378
|
-
". projects"
|
|
3379
|
-
". ."
|
|
3380
|
-
". bio"
|
|
3381
|
-
". ."
|
|
3382
|
-
". nav"
|
|
3383
|
-
". ."
|
|
3384
|
-
". footer"
|
|
3385
|
-
". .";
|
|
3386
|
-
}
|
|
3387
|
-
|
|
3388
|
-
:host([mode="company"]) .debug-overlay {
|
|
3389
|
-
grid-template-columns: auto 400px auto;
|
|
3390
|
-
grid-template-rows: 80px 20px 20px 120px 20px 120px;
|
|
3391
|
-
grid-template-areas:
|
|
3392
|
-
". . ."
|
|
3393
|
-
". header ."
|
|
3394
|
-
". . ."
|
|
3395
|
-
". content ."
|
|
3396
|
-
". . ."
|
|
3397
|
-
". footer .";
|
|
3398
|
-
gap: 0;
|
|
3399
3485
|
}
|
|
3400
3486
|
|
|
3401
|
-
.
|
|
3487
|
+
.view-area {
|
|
3402
3488
|
display: flex;
|
|
3489
|
+
width: calc(240px * var(--sf, 1));
|
|
3490
|
+
height: 100%;
|
|
3403
3491
|
align-items: center;
|
|
3404
3492
|
justify-content: center;
|
|
3405
|
-
font-size: 10px;
|
|
3406
|
-
font-weight: var(--type-weight-default);
|
|
3407
3493
|
font-family: var(--typeface-regular);
|
|
3408
|
-
|
|
3409
|
-
|
|
3494
|
+
font-size: calc(var(--type-size-default) * var(--05));
|
|
3495
|
+
color: color-mix(in srgb, var(--tuned-red) 25%, transparent);
|
|
3496
|
+
background-color: color-mix(
|
|
3497
|
+
in srgb,
|
|
3498
|
+
var(--accent-color) 25%,
|
|
3499
|
+
transparent
|
|
3500
|
+
);
|
|
3410
3501
|
opacity: 1;
|
|
3411
3502
|
}
|
|
3412
3503
|
|
|
3413
|
-
.
|
|
3504
|
+
:host([mode="portfolio"]) .view-area:nth-of-type(1) {
|
|
3505
|
+
background-color: color-mix(in srgb, var(--tuned-red) 25%, transparent);
|
|
3506
|
+
}
|
|
3507
|
+
:host([mode="portfolio"]) .view-area:nth-of-type(2) {
|
|
3508
|
+
border-color: var(--sharp-blue);
|
|
3509
|
+
}
|
|
3510
|
+
:host([mode="portfolio"]) .view-area:nth-of-type(3) {
|
|
3511
|
+
border-color: var(--yellow);
|
|
3512
|
+
}
|
|
3513
|
+
:host([mode="portfolio"]) .view-area:nth-of-type(4) {
|
|
3514
|
+
border-color: var(--apple-green);
|
|
3515
|
+
}
|
|
3516
|
+
:host([mode="portfolio"]) .view-area:nth-of-type(5) {
|
|
3517
|
+
border-color: var(--pink);
|
|
3518
|
+
}
|
|
3519
|
+
:host([mode="portfolio"]) .view-area:nth-of-type(6) {
|
|
3520
|
+
border-color: var(--orange);
|
|
3521
|
+
}
|
|
3522
|
+
:host([mode="portfolio"]) .view-area:nth-of-type(7) {
|
|
3523
|
+
border-color: var(--zenith-blue);
|
|
3524
|
+
}
|
|
3525
|
+
|
|
3526
|
+
:host([mode="company"]) .view-area:nth-of-type(1) {
|
|
3527
|
+
border-color: var(--tuned-red);
|
|
3528
|
+
}
|
|
3529
|
+
:host([mode="company"]) .view-area:nth-of-type(2) {
|
|
3530
|
+
border-color: var(--sharp-blue);
|
|
3531
|
+
}
|
|
3532
|
+
:host([mode="company"]) .view-area:nth-of-type(3) {
|
|
3533
|
+
border-color: var(--yellow);
|
|
3534
|
+
}
|
|
3535
|
+
|
|
3536
|
+
:host([mode="app"]) .view-area:nth-of-type(1) {
|
|
3537
|
+
background-color: color-mix(in srgb, var(--tuned-red) 25%, transparent);
|
|
3538
|
+
}
|
|
3539
|
+
:host([mode="app"]) .view-area:nth-of-type(2) {
|
|
3540
|
+
background-color: color-mix(in srgb, var(--sharp-blue) 25%, transparent);
|
|
3541
|
+
}
|
|
3542
|
+
:host([mode="app"]) .view-area:nth-of-type(3) {
|
|
3543
|
+
background-color: color-mix(in srgb, var(--yellow) 25%, transparent);
|
|
3544
|
+
}
|
|
3545
|
+
:host([mode="app"]) .view-area:nth-of-type(4) {
|
|
3546
|
+
background-color: color-mix(in srgb, var(--apple-green) 25%, transparent);
|
|
3547
|
+
}
|
|
3548
|
+
|
|
3549
|
+
.view-square {
|
|
3414
3550
|
grid-area: square;
|
|
3415
3551
|
}
|
|
3416
3552
|
|
|
3417
|
-
.
|
|
3553
|
+
.view-title {
|
|
3418
3554
|
grid-area: title;
|
|
3419
3555
|
}
|
|
3420
3556
|
|
|
3421
|
-
.
|
|
3557
|
+
.view-header {
|
|
3422
3558
|
grid-area: header;
|
|
3423
|
-
border-color: #0000ff;
|
|
3424
3559
|
}
|
|
3425
3560
|
|
|
3426
|
-
.
|
|
3561
|
+
.view-projects {
|
|
3427
3562
|
grid-area: projects;
|
|
3428
|
-
border-color: #ffff00;
|
|
3429
3563
|
}
|
|
3430
3564
|
|
|
3431
|
-
.
|
|
3565
|
+
.view-bio {
|
|
3432
3566
|
grid-area: bio;
|
|
3433
|
-
border-color: #ff00ff;
|
|
3434
3567
|
}
|
|
3435
3568
|
|
|
3436
|
-
.
|
|
3569
|
+
.view-nav {
|
|
3437
3570
|
grid-area: nav;
|
|
3438
|
-
border-color: #00ffff;
|
|
3439
3571
|
}
|
|
3440
3572
|
|
|
3441
|
-
.
|
|
3573
|
+
.view-footer {
|
|
3442
3574
|
grid-area: footer;
|
|
3443
|
-
border-color: rgb(24, 147, 73);
|
|
3444
|
-
background-color: rgba(127, 123, 11, 0.1);
|
|
3445
3575
|
}
|
|
3446
3576
|
|
|
3447
|
-
.
|
|
3577
|
+
.view-content {
|
|
3448
3578
|
grid-area: content;
|
|
3449
|
-
border-color: rgba(71, 231, 71, 0.63);
|
|
3450
|
-
}
|
|
3451
|
-
|
|
3452
|
-
:host([mode="app"]) .debug-overlay {
|
|
3453
|
-
grid-template-columns: 1fr;
|
|
3454
|
-
grid-template-rows:
|
|
3455
|
-
calc(var(--1) * var(--sf))
|
|
3456
|
-
calc(var(--2) * var(--sf))
|
|
3457
|
-
calc(var(--4) * var(--sf))
|
|
3458
|
-
calc(var(--1) * var(--sf));
|
|
3459
|
-
grid-template-areas:
|
|
3460
|
-
"banner"
|
|
3461
|
-
"header"
|
|
3462
|
-
"main"
|
|
3463
|
-
"footer";
|
|
3464
3579
|
}
|
|
3465
3580
|
|
|
3466
|
-
.
|
|
3581
|
+
.view-banner {
|
|
3467
3582
|
grid-area: banner;
|
|
3468
|
-
border-color: #daed09;
|
|
3469
3583
|
}
|
|
3470
3584
|
|
|
3471
|
-
.
|
|
3472
|
-
grid-area: header;
|
|
3473
|
-
border-color: #0000ff;
|
|
3474
|
-
background-color: rgba(127, 123, 11, 0.5);
|
|
3475
|
-
}
|
|
3476
|
-
|
|
3477
|
-
.debug-main {
|
|
3585
|
+
.view-main {
|
|
3478
3586
|
grid-area: main;
|
|
3479
|
-
border-color: #0000ff;
|
|
3480
|
-
}
|
|
3481
|
-
|
|
3482
|
-
.debug-footer-app {
|
|
3483
|
-
grid-area: footer;
|
|
3484
|
-
border-color: #ffa500;
|
|
3485
3587
|
}
|
|
3486
3588
|
`;
|
|
3487
3589
|
customElements.define("ds-layout", Layout);
|
|
3488
3590
|
export {
|
|
3489
3591
|
Button,
|
|
3592
|
+
Container,
|
|
3490
3593
|
Cycle,
|
|
3491
3594
|
DateComponent,
|
|
3492
3595
|
DsTable,
|