ds-one 0.2.5-alpha.8 → 0.3.0-alpha.1

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.
Files changed (213) hide show
  1. package/DS1/0-face/device.ts +138 -0
  2. package/DS1/0-face/i18n.ts +36 -89
  3. package/DS1/0-face/scaling.ts +152 -0
  4. package/DS1/1-root/fonts/Iosevka-Regular.woff2 +0 -0
  5. package/DS1/1-root/one.css +124 -77
  6. package/DS1/2-core/ds-banner.ts +120 -1
  7. package/DS1/2-core/ds-button.ts +16 -96
  8. package/DS1/2-core/ds-card.ts +137 -0
  9. package/DS1/2-core/ds-cycle.ts +82 -184
  10. package/DS1/2-core/ds-date.ts +3 -10
  11. package/DS1/2-core/ds-gap.ts +38 -0
  12. package/DS1/2-core/ds-icon.ts +6 -35
  13. package/DS1/2-core/ds-input.ts +306 -1
  14. package/DS1/2-core/ds-pagedots.ts +52 -0
  15. package/DS1/2-core/ds-text.ts +55 -28
  16. package/DS1/2-core/ds-tooltip.ts +14 -66
  17. package/DS1/2-core/styles/ds-banner.css +77 -0
  18. package/DS1/2-core/styles/ds-button.css +67 -0
  19. package/DS1/2-core/styles/ds-cycle.css +21 -0
  20. package/DS1/2-core/styles/ds-date.css +9 -0
  21. package/DS1/2-core/styles/ds-gap.css +93 -0
  22. package/DS1/2-core/styles/ds-icon.css +30 -0
  23. package/DS1/2-core/styles/ds-input.css +46 -0
  24. package/DS1/2-core/styles/ds-pagedots.css +31 -0
  25. package/DS1/2-core/styles/ds-text.css +29 -0
  26. package/DS1/2-core/styles/ds-tooltip.css +49 -0
  27. package/DS1/3-unit/ds-accordion.ts +95 -0
  28. package/DS1/3-unit/ds-form.ts +304 -0
  29. package/DS1/3-unit/ds-list.ts +5 -14
  30. package/DS1/3-unit/ds-row.ts +3 -19
  31. package/DS1/3-unit/ds-table.ts +3 -86
  32. package/DS1/3-unit/styles/ds-accordion.css +46 -0
  33. package/DS1/3-unit/styles/ds-list.css +9 -0
  34. package/DS1/3-unit/styles/ds-row.css +19 -0
  35. package/DS1/3-unit/styles/ds-table.css +80 -0
  36. package/DS1/4-page/ds-container.ts +28 -0
  37. package/DS1/4-page/ds-grid.ts +37 -50
  38. package/DS1/4-page/ds-layout.ts +652 -163
  39. package/DS1/4-page/styles/ds-container.css +35 -0
  40. package/DS1/4-page/styles/ds-grid.css +56 -0
  41. package/DS1/4-page/styles/ds-layout.css +246 -0
  42. package/DS1/index.ts +9 -1
  43. package/DS1/vite-env.d.ts +13 -0
  44. package/DS1/x-icon/2x.svg +4 -0
  45. package/DS1/x-icon/2xdots.svg +18 -0
  46. package/DS1/x-icon/2xgrid.svg +6 -0
  47. package/DS1/x-icon/2xlines.svg +6 -0
  48. package/DS1/x-icon/4x4.svg +18 -0
  49. package/DS1/x-icon/apple.svg +4 -0
  50. package/DS1/x-icon/avatar.svg +4 -0
  51. package/DS1/x-icon/big.svg +4 -0
  52. package/DS1/x-icon/blank.svg +3 -0
  53. package/DS1/x-icon/check.svg +3 -0
  54. package/DS1/x-icon/close.svg +3 -0
  55. package/DS1/x-icon/collapse.svg +3 -0
  56. package/DS1/x-icon/color.svg +4 -0
  57. package/DS1/x-icon/column.svg +5 -0
  58. package/DS1/x-icon/default.svg +3 -0
  59. package/DS1/x-icon/delete.svg +5 -0
  60. package/DS1/x-icon/dictate.svg +6 -0
  61. package/DS1/x-icon/do.svg +3 -0
  62. package/DS1/x-icon/down.svg +3 -0
  63. package/DS1/x-icon/duplicate.svg +4 -0
  64. package/DS1/x-icon/gallery.svg +5 -0
  65. package/DS1/x-icon/google.svg +6 -0
  66. package/DS1/x-icon/head.svg +5 -0
  67. package/DS1/x-icon/home.svg +3 -0
  68. package/DS1/x-icon/icon.svg +4 -0
  69. package/DS1/x-icon/in.svg +4 -0
  70. package/DS1/x-icon/lock.svg +5 -0
  71. package/DS1/x-icon/loop.svg +5 -0
  72. package/DS1/x-icon/mic.svg +5 -0
  73. package/DS1/x-icon/minimize.svg +3 -0
  74. package/DS1/x-icon/more.svg +5 -0
  75. package/DS1/x-icon/neutral.svg +6 -0
  76. package/DS1/x-icon/note.svg +6 -0
  77. package/DS1/x-icon/page.svg +4 -0
  78. package/DS1/x-icon/plus.svg +3 -0
  79. package/DS1/x-icon/rewind.svg +4 -0
  80. package/DS1/x-icon/row.svg +5 -0
  81. package/DS1/x-icon/sdown.svg +3 -0
  82. package/DS1/x-icon/search.svg +4 -0
  83. package/DS1/x-icon/see.svg +4 -0
  84. package/DS1/x-icon/ship.svg +5 -0
  85. package/DS1/x-icon/star.svg +3 -0
  86. package/DS1/x-icon/status.svg +4 -0
  87. package/DS1/x-icon/sup.svg +3 -0
  88. package/DS1/x-icon/title.svg +3 -0
  89. package/DS1/x-icon/undo.svg +3 -0
  90. package/DS1/x-icon/ungroup.svg +4 -0
  91. package/DS1/x-icon/unhead.svg +3 -0
  92. package/DS1/x-icon/unicon.svg +3 -0
  93. package/DS1/x-icon/unlock.svg +5 -0
  94. package/DS1/x-icon/unmic.svg +6 -0
  95. package/DS1/x-icon/unsee.svg +5 -0
  96. package/DS1/x-icon/unstar.svg +3 -0
  97. package/DS1/x-icon/untitle.svg +3 -0
  98. package/DS1/x-icon/up.svg +3 -0
  99. package/LICENSE +1 -1
  100. package/README.md +4 -4
  101. package/dist/0-face/device.d.ts +5 -0
  102. package/dist/0-face/device.d.ts.map +1 -1
  103. package/dist/0-face/device.js +111 -0
  104. package/dist/0-face/i18n.d.ts +0 -2
  105. package/dist/0-face/i18n.d.ts.map +1 -1
  106. package/dist/0-face/i18n.js +36 -73
  107. package/dist/0-face/scaling.d.ts +48 -0
  108. package/dist/0-face/scaling.d.ts.map +1 -0
  109. package/dist/0-face/scaling.js +114 -0
  110. package/dist/2-core/ds-banner.d.ts +67 -0
  111. package/dist/2-core/ds-banner.d.ts.map +1 -1
  112. package/dist/2-core/ds-banner.js +97 -1
  113. package/dist/2-core/ds-button.d.ts +4 -20
  114. package/dist/2-core/ds-button.d.ts.map +1 -1
  115. package/dist/2-core/ds-button.js +14 -88
  116. package/dist/2-core/ds-card.d.ts +39 -0
  117. package/dist/2-core/ds-card.d.ts.map +1 -0
  118. package/dist/2-core/ds-card.js +119 -0
  119. package/dist/2-core/ds-cycle.d.ts +1 -5
  120. package/dist/2-core/ds-cycle.d.ts.map +1 -1
  121. package/dist/2-core/ds-cycle.js +79 -166
  122. package/dist/2-core/ds-date.d.ts.map +1 -1
  123. package/dist/2-core/ds-date.js +3 -9
  124. package/dist/2-core/ds-gap.d.ts +28 -0
  125. package/dist/2-core/ds-gap.d.ts.map +1 -0
  126. package/dist/2-core/ds-gap.js +25 -0
  127. package/dist/2-core/ds-icon.d.ts.map +1 -1
  128. package/dist/2-core/ds-icon.js +6 -35
  129. package/dist/2-core/ds-input.d.ts +127 -0
  130. package/dist/2-core/ds-input.d.ts.map +1 -1
  131. package/dist/2-core/ds-input.js +252 -1
  132. package/dist/2-core/ds-pagedots.d.ts +32 -0
  133. package/dist/2-core/ds-pagedots.d.ts.map +1 -0
  134. package/dist/2-core/ds-pagedots.js +36 -0
  135. package/dist/2-core/ds-text.d.ts +5 -3
  136. package/dist/2-core/ds-text.d.ts.map +1 -1
  137. package/dist/2-core/ds-text.js +49 -27
  138. package/dist/2-core/ds-tooltip.d.ts +3 -3
  139. package/dist/2-core/ds-tooltip.d.ts.map +1 -1
  140. package/dist/2-core/ds-tooltip.js +13 -65
  141. package/dist/2-core/styles/ds-banner.css +77 -0
  142. package/dist/2-core/styles/ds-button.css +67 -0
  143. package/dist/2-core/styles/ds-cycle.css +21 -0
  144. package/dist/2-core/styles/ds-date.css +9 -0
  145. package/dist/2-core/styles/ds-gap.css +93 -0
  146. package/dist/2-core/styles/ds-icon.css +30 -0
  147. package/dist/2-core/styles/ds-input.css +46 -0
  148. package/dist/2-core/styles/ds-pagedots.css +26 -0
  149. package/dist/2-core/styles/ds-text.css +29 -0
  150. package/dist/2-core/styles/ds-tooltip.css +49 -0
  151. package/dist/3-unit/ds-accordion.d.ts +47 -0
  152. package/dist/3-unit/ds-accordion.d.ts.map +1 -0
  153. package/dist/3-unit/ds-accordion.js +75 -0
  154. package/dist/3-unit/ds-form.d.ts +70 -0
  155. package/dist/3-unit/ds-form.d.ts.map +1 -0
  156. package/dist/3-unit/ds-form.js +232 -0
  157. package/dist/3-unit/ds-list.d.ts.map +1 -1
  158. package/dist/3-unit/ds-list.js +5 -11
  159. package/dist/3-unit/ds-row.d.ts.map +1 -1
  160. package/dist/3-unit/ds-row.js +3 -19
  161. package/dist/3-unit/ds-table.d.ts.map +1 -1
  162. package/dist/3-unit/ds-table.js +3 -86
  163. package/dist/3-unit/styles/ds-accordion.css +46 -0
  164. package/dist/3-unit/styles/ds-list.css +9 -0
  165. package/dist/3-unit/styles/ds-row.css +19 -0
  166. package/dist/3-unit/styles/ds-table.css +80 -0
  167. package/dist/{3-unit/row-v1.d.ts → 4-page/ds-container.d.ts} +3 -11
  168. package/dist/4-page/ds-container.d.ts.map +1 -0
  169. package/dist/4-page/ds-container.js +11 -0
  170. package/dist/4-page/ds-grid.d.ts +5 -0
  171. package/dist/4-page/ds-grid.d.ts.map +1 -1
  172. package/dist/4-page/ds-grid.js +38 -56
  173. package/dist/4-page/ds-layout.d.ts +3 -3
  174. package/dist/4-page/ds-layout.d.ts.map +1 -1
  175. package/dist/4-page/ds-layout.js +651 -162
  176. package/dist/4-page/styles/ds-container.css +35 -0
  177. package/dist/4-page/styles/ds-grid.css +56 -0
  178. package/dist/4-page/styles/ds-layout.css +251 -0
  179. package/dist/ds-one.bundle.css +700 -0
  180. package/dist/ds-one.bundle.css.map +7 -0
  181. package/dist/ds-one.bundle.js +2728 -1597
  182. package/dist/ds-one.bundle.js.map +1 -7
  183. package/dist/ds-one.bundle.min.css +2 -0
  184. package/dist/ds-one.bundle.min.css.map +7 -0
  185. package/dist/ds-one.bundle.min.js +3850 -546
  186. package/dist/ds-one.bundle.min.js.map +1 -7
  187. package/dist/index.d.ts +9 -1
  188. package/dist/index.d.ts.map +1 -1
  189. package/dist/index.js +9 -1
  190. package/package.json +4 -3
  191. package/dist/3-unit/doublenav-v1.d.ts +0 -51
  192. package/dist/3-unit/doublenav-v1.d.ts.map +0 -1
  193. package/dist/3-unit/doublenav-v1.js +0 -88
  194. package/dist/3-unit/ds-portfolio-doublenav.d.ts +0 -51
  195. package/dist/3-unit/ds-portfolio-doublenav.d.ts.map +0 -1
  196. package/dist/3-unit/ds-portfolio-doublenav.js +0 -88
  197. package/dist/3-unit/ds-portfolio-panel.d.ts +0 -11
  198. package/dist/3-unit/ds-portfolio-panel.d.ts.map +0 -1
  199. package/dist/3-unit/ds-portfolio-panel.js +0 -16
  200. package/dist/3-unit/ds-portfolio-singlenav.d.ts +0 -32
  201. package/dist/3-unit/ds-portfolio-singlenav.d.ts.map +0 -1
  202. package/dist/3-unit/ds-portfolio-singlenav.js +0 -62
  203. package/dist/3-unit/list-v1.d.ts +0 -11
  204. package/dist/3-unit/list-v1.d.ts.map +0 -1
  205. package/dist/3-unit/list-v1.js +0 -15
  206. package/dist/3-unit/panel-v1.d.ts +0 -11
  207. package/dist/3-unit/panel-v1.d.ts.map +0 -1
  208. package/dist/3-unit/panel-v1.js +0 -16
  209. package/dist/3-unit/row-v1.d.ts.map +0 -1
  210. package/dist/3-unit/row-v1.js +0 -32
  211. package/dist/3-unit/singlenav-v1.d.ts +0 -32
  212. package/dist/3-unit/singlenav-v1.d.ts.map +0 -1
  213. package/dist/3-unit/singlenav-v1.js +0 -62
@@ -1,7 +1,8 @@
1
1
  // ds-layout.ts
2
- // Simple grid layout component with debug mode
2
+ // Simple grid layout component with view mode
3
3
 
4
- import { LitElement, html, css } from "lit";
4
+ import { LitElement, html, css, unsafeCSS } from "lit";
5
+ import styles from "./styles/ds-layout.css?inline";
5
6
 
6
7
  declare global {
7
8
  interface CustomElementRegistry {
@@ -14,94 +15,169 @@ export class Layout extends LitElement {
14
15
  static properties = {
15
16
  mode: { type: String },
16
17
  align: { type: String },
17
- debug: { type: Boolean },
18
+ view: { type: Boolean },
18
19
  };
19
20
 
20
21
  mode: string = "portfolio";
21
22
  align?: string;
22
- debug?: boolean;
23
+ view?: boolean;
23
24
 
24
- static styles = css`
25
+ static styles = [
26
+ unsafeCSS(styles),
27
+ css`
25
28
  :host {
26
29
  display: grid;
27
30
  position: relative;
28
31
  width: 100%;
29
32
  }
30
33
 
34
+ slot {
35
+ display: contents;
36
+ }
37
+
31
38
  :host([mode="portfolio"]) {
32
- grid-template-columns: 120px 480px 40px;
33
- grid-template-rows: 120px 120px 60px 180px 60px 120px 60px 20px 120px 120px;
34
- grid-template-areas:
35
- "square . ."
36
- ". title ."
37
- ". header ."
38
- ". projects ."
39
- ". . ."
40
- ". bio ."
41
- ". . ."
42
- ". nav ."
43
- ". . ."
44
- ". footer ."
45
- ". . .";
39
+ --portfolio-cols: 120px 480px 40px;
40
+ --portfolio-rows: 120px 120px 60px 180px 60px 120px 60px 20px 120px 120px;
41
+ --portfolio-areas: "square . ." ". title ." ". header ." ". projects ."
42
+ ". . ." ". bio ." ". . ." ". nav ." ". . ." ". footer ." ". . .";
43
+ --portfolio-overlay-cols: 120px 480px;
44
+ --portfolio-overlay-areas: "square ." ". title" ". header" ". projects"
45
+ ". ." ". bio" ". ." ". nav" ". ." ". footer" ". .";
46
+ grid-template-columns: var(--portfolio-cols);
47
+ grid-template-rows: var(--portfolio-rows);
48
+ grid-template-areas: var(--portfolio-areas);
46
49
  min-height: 600px;
47
50
  background-color: rgba(165, 165, 165, 0.03);
48
51
  max-width: 640px;
49
- margin: 0 auto;
52
+ margin: 0;
53
+ }
54
+
55
+ :host([mode="portfolio"]) .view-overlay {
56
+ grid-template-columns: var(--portfolio-overlay-cols);
57
+ grid-template-rows: var(--portfolio-rows);
58
+ grid-template-areas: var(--portfolio-overlay-areas);
50
59
  }
51
60
 
52
61
  :host([mode="company"]) {
53
- grid-template-columns: auto 400px auto;
54
- grid-template-rows: 80px 20px 20px 120px 20px 120px;
55
- grid-template-areas:
56
- ". . ."
57
- ". header ."
58
- ". . ."
59
- ". content ."
60
- ". . ."
62
+ --company-cols: auto 400px auto;
63
+ --company-rows: 80px 20px 20px 120px 20px 120px;
64
+ --company-areas: ". . ." ". header ." ". . ." ". content ." ". . ."
61
65
  ". footer .";
66
+ grid-template-columns: var(--company-cols);
67
+ grid-template-rows: var(--company-rows);
68
+ grid-template-areas: var(--company-areas);
62
69
  gap: 0;
63
70
  max-width: 100%;
64
71
  }
65
72
 
66
- :host([align="left"]) {
73
+ :host([mode="company"]) .view-overlay {
74
+ grid-template-columns: var(--company-cols);
75
+ grid-template-rows: var(--company-rows);
76
+ grid-template-areas: var(--company-areas);
77
+ gap: 0;
78
+ }
79
+
80
+ :host([align="left"]),
81
+ :host([mode="portfolio"][align="left"]),
82
+ :host([mode="company"][align="left"]),
83
+ :host([mode="app"][align="left"]),
84
+ :host([mode="list"][align="left"]),
85
+ :host([mode="home"][align="left"]) {
67
86
  margin: 0;
68
87
  justify-self: start;
69
88
  }
70
89
 
71
- :host([align="center"]) {
90
+ :host([align="center"]),
91
+ :host([mode="portfolio"][align="center"]),
92
+ :host([mode="company"][align="center"]),
93
+ :host([mode="app"][align="center"]),
94
+ :host([mode="list"][align="center"]),
95
+ :host([mode="home"][align="center"]) {
72
96
  margin: 0 auto;
73
97
  justify-self: center;
74
98
  }
75
99
 
76
- :host([align="right"]) {
100
+ :host([align="right"]),
101
+ :host([mode="portfolio"][align="right"]),
102
+ :host([mode="company"][align="right"]),
103
+ :host([mode="app"][align="right"]),
104
+ :host([mode="list"][align="right"]),
105
+ :host([mode="home"][align="right"]) {
77
106
  margin: 0 0 0 auto;
78
107
  justify-self: end;
79
108
  }
80
109
 
81
110
  /* App mode - Base */
82
111
  :host([mode="app"]) {
83
- grid-template-columns: 1fr;
84
- grid-template-rows: calc(var(--1) * var(--sf)) 20px 1fr auto;
85
- grid-template-areas:
86
- "banner"
87
- "main"
112
+ --app-cols: 100%;
113
+ --app-overlay-cols: 100%;
114
+ grid-template-columns: var(--app-cols);
115
+ grid-template-rows: var(--app-layout);
116
+ grid-template-areas: var(--app-layout-areas);
117
+ min-height: 100vh;
118
+ background-color: transparent;
119
+ width: calc(240px * var(--sf, 1));
120
+ max-width: calc(240px * var(--sf, 1));
121
+ margin: 0 auto;
122
+ }
123
+
124
+ :host([mode="app"]) .view-overlay {
125
+ grid-template-columns: var(--app-overlay-cols);
126
+ grid-template-rows: var(--app-layout);
127
+ grid-template-areas: var(--app-layout-areas);
128
+ }
129
+
130
+ /* List mode - Base */
131
+ :host([mode="list"]) {
132
+ --list-cols: 100%;
133
+ --list-rows: calc(var(--unit) * var(--sf)) calc(var(--unit) * var(--sf))
134
+ calc(var(--unit) * var(--sf)) calc(var(--twenty) * var(--sf));
135
+ --list-areas: "banner" "." "header" "board";
136
+ --list-overlay-cols: 100%;
137
+ --list-overlay-rows: calc(var(--unit) * var(--sf))
138
+ calc(var(--unit) * var(--sf)) calc(var(--unit) * var(--sf))
139
+ calc(var(--twenty) * var(--sf));
140
+ --list-overlay-areas: "banner" "." "header" "board";
141
+ grid-template-columns: var(--list-cols);
142
+ grid-template-rows: var(--list-rows);
143
+ grid-template-areas: var(--list-areas);
144
+ min-height: 100vh;
145
+ background-color: transparent;
146
+ width: calc(240px * var(--sf, 1));
147
+ max-width: calc(240px * var(--sf, 1));
148
+ margin: 0 auto;
149
+ }
150
+
151
+ :host([mode="list"]) .view-overlay {
152
+ grid-template-columns: var(--list-overlay-cols);
153
+ grid-template-rows: var(--list-overlay-rows);
154
+ grid-template-areas: var(--list-overlay-areas);
155
+ }
156
+
157
+ /* Home mode - Base */
158
+ :host([mode="home"]) {
159
+ --home-cols: 100%;
160
+ --home-areas: "banner" "." "header" "." "message" "lists" "." "footer";
161
+ --home-overlay-cols: 100%;
162
+ --home-overlay-areas: "banner" "." "header" "." "message" "lists" "."
88
163
  "footer";
164
+ grid-template-columns: var(--home-cols);
165
+ grid-template-rows: var(--home-layout);
166
+ grid-template-areas: var(--home-areas);
89
167
  min-height: 100vh;
90
168
  background-color: transparent;
91
- width: 100%;
169
+ width: calc(240px * var(--sf, 1));
170
+ max-width: calc(240px * var(--sf, 1));
92
171
  margin: 0 auto;
93
- gap: 0;
94
172
  }
95
173
 
96
- /* App mode - with scaling factor */
97
- :host([mode="app"]) {
98
- max-width: calc(400px * var(--sf, 1));
99
- padding: calc(60px * var(--sf, 1)) calc(28px * var(--sf, 1))
100
- calc(9.751px * var(--sf, 1));
101
- gap: calc(28px * var(--sf, 1));
174
+ :host([mode="home"]) .view-overlay {
175
+ grid-template-columns: var(--home-overlay-cols);
176
+ grid-template-rows: var(--home-layout);
177
+ grid-template-areas: var(--home-overlay-areas);
102
178
  }
103
179
 
104
- .debug-overlay {
180
+ .view-overlay {
105
181
  position: absolute;
106
182
  margin-left: -1px;
107
183
  top: 0;
@@ -111,191 +187,604 @@ export class Layout extends LitElement {
111
187
  pointer-events: none;
112
188
  z-index: 1000;
113
189
  display: grid;
114
- font-size: 18px;
115
- font-weight: bold;
116
- }
117
-
118
- :host([mode="portfolio"]) .debug-overlay {
119
- grid-template-columns: 120px 480px;
120
- grid-template-rows: 120px 120px 60px 180px 60px 120px 60px 20px 120px 120px;
121
- grid-template-areas:
122
- "square ."
123
- ". title"
124
- ". header"
125
- ". projects"
126
- ". ."
127
- ". bio"
128
- ". ."
129
- ". nav"
130
- ". ."
131
- ". footer"
132
- ". .";
133
- }
134
-
135
- :host([mode="company"]) .debug-overlay {
136
- grid-template-columns: auto 400px auto;
137
- grid-template-rows: 80px 20px 20px 120px 20px 120px;
138
- grid-template-areas:
139
- ". . ."
140
- ". header ."
141
- ". . ."
142
- ". content ."
143
- ". . ."
144
- ". footer .";
145
- gap: 0;
146
190
  }
147
191
 
148
- .debug-area {
192
+ .view-area {
149
193
  display: flex;
194
+ width: calc(240px * var(--sf, 1));
195
+ height: 100%;
150
196
  align-items: center;
151
197
  justify-content: center;
152
- font-size: 10px;
153
- font-weight: var(--type-weight-default);
154
- font-family: var(--typeface);
155
- color: var(--black);
156
- border: 1px solid red;
198
+ font-family: var(--typeface-regular);
199
+ font-size: calc(var(--type-size-default) * var(--05));
200
+ color: color-mix(in srgb, var(--tuned-red) 25%, transparent);
201
+ background-color: color-mix(
202
+ in srgb,
203
+ var(--accent-color) 25%,
204
+ transparent
205
+ );
157
206
  opacity: 1;
207
+ position: relative;
158
208
  }
159
209
 
160
- .debug-square {
210
+ .grid-area-label {
211
+ position: absolute;
212
+ top: calc(-20px * var(--sf, 1));
213
+ left: 0;
214
+ height: calc(20px * var(--sf, 1));
215
+ width: fit-content;
216
+ display: inline-flex;
217
+ align-items: center;
218
+ justify-content: center;
219
+ padding: 0 calc(4px * var(--sf, 1));
220
+ border-radius: calc(2px * var(--sf, 1));
221
+ z-index: 10000;
222
+ pointer-events: none;
223
+ white-space: nowrap;
224
+ }
225
+
226
+ /* Banner label stays inside the area (first item) */
227
+ :host([mode="app"]) .view-area.view-banner .grid-area-label,
228
+ :host([mode="list"]) .view-area.view-banner .grid-area-label,
229
+ :host([mode="home"]) .view-area.view-banner .grid-area-label,
230
+ :host([mode="company"]) .view-area.view-header .grid-area-label,
231
+ :host([mode="portfolio"]) .view-area.view-square .grid-area-label {
232
+ top: 0;
233
+ }
234
+
235
+ .grid-area-label ds-text {
236
+ font-size: calc(11px * var(--sf, 1));
237
+ line-height: 1;
238
+ color: white;
239
+ text-transform: lowercase;
240
+ }
241
+
242
+ :host([mode="portfolio"]) .view-area:nth-of-type(1) {
243
+ background-color: color-mix(in srgb, var(--tuned-red) 25%, transparent);
244
+ }
245
+ :host([mode="portfolio"]) .view-area:nth-of-type(1) .grid-area-label {
246
+ background-image:
247
+ linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%),
248
+ linear-gradient(
249
+ 90deg,
250
+ color-mix(in srgb, var(--tuned-red) 70%, black) 0%,
251
+ color-mix(in srgb, var(--tuned-red) 70%, black) 100%
252
+ );
253
+ }
254
+ :host([mode="portfolio"]) .view-area:nth-of-type(2) {
255
+ border-color: var(--sharp-blue);
256
+ }
257
+ :host([mode="portfolio"]) .view-area:nth-of-type(2) .grid-area-label {
258
+ background-image:
259
+ linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%),
260
+ linear-gradient(
261
+ 90deg,
262
+ color-mix(in srgb, var(--sharp-blue) 70%, black) 0%,
263
+ color-mix(in srgb, var(--sharp-blue) 70%, black) 100%
264
+ );
265
+ }
266
+ :host([mode="portfolio"]) .view-area:nth-of-type(3) {
267
+ border-color: var(--yellow);
268
+ }
269
+ :host([mode="portfolio"]) .view-area:nth-of-type(3) .grid-area-label {
270
+ background-image:
271
+ linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%),
272
+ linear-gradient(
273
+ 90deg,
274
+ color-mix(in srgb, var(--yellow) 70%, black) 0%,
275
+ color-mix(in srgb, var(--yellow) 70%, black) 100%
276
+ );
277
+ }
278
+ :host([mode="portfolio"]) .view-area:nth-of-type(4) {
279
+ border-color: var(--apple-green);
280
+ }
281
+ :host([mode="portfolio"]) .view-area:nth-of-type(4) .grid-area-label {
282
+ background-image:
283
+ linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%),
284
+ linear-gradient(
285
+ 90deg,
286
+ color-mix(in srgb, var(--apple-green) 70%, black) 0%,
287
+ color-mix(in srgb, var(--apple-green) 70%, black) 100%
288
+ );
289
+ }
290
+ :host([mode="portfolio"]) .view-area:nth-of-type(5) {
291
+ border-color: var(--pink);
292
+ }
293
+ :host([mode="portfolio"]) .view-area:nth-of-type(5) .grid-area-label {
294
+ background-image:
295
+ linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%),
296
+ linear-gradient(
297
+ 90deg,
298
+ color-mix(in srgb, var(--pink) 70%, black) 0%,
299
+ color-mix(in srgb, var(--pink) 70%, black) 100%
300
+ );
301
+ }
302
+ :host([mode="portfolio"]) .view-area:nth-of-type(6) {
303
+ border-color: var(--orange);
304
+ }
305
+ :host([mode="portfolio"]) .view-area:nth-of-type(6) .grid-area-label {
306
+ background-image:
307
+ linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%),
308
+ linear-gradient(
309
+ 90deg,
310
+ color-mix(in srgb, var(--orange) 70%, black) 0%,
311
+ color-mix(in srgb, var(--orange) 70%, black) 100%
312
+ );
313
+ }
314
+ :host([mode="portfolio"]) .view-area:nth-of-type(7) {
315
+ border-color: var(--zenith-blue);
316
+ }
317
+ :host([mode="portfolio"]) .view-area:nth-of-type(7) .grid-area-label {
318
+ background-image:
319
+ linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%),
320
+ linear-gradient(
321
+ 90deg,
322
+ color-mix(in srgb, var(--zenith-blue) 70%, black) 0%,
323
+ color-mix(in srgb, var(--zenith-blue) 70%, black) 100%
324
+ );
325
+ }
326
+
327
+ :host([mode="company"]) .view-area:nth-of-type(1) {
328
+ border-color: var(--tuned-red);
329
+ }
330
+ :host([mode="company"]) .view-area:nth-of-type(1) .grid-area-label {
331
+ background-image:
332
+ linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%),
333
+ linear-gradient(
334
+ 90deg,
335
+ color-mix(in srgb, var(--tuned-red) 70%, black) 0%,
336
+ color-mix(in srgb, var(--tuned-red) 70%, black) 100%
337
+ );
338
+ }
339
+ :host([mode="company"]) .view-area:nth-of-type(2) {
340
+ border-color: var(--sharp-blue);
341
+ }
342
+ :host([mode="company"]) .view-area:nth-of-type(2) .grid-area-label {
343
+ background-image:
344
+ linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%),
345
+ linear-gradient(
346
+ 90deg,
347
+ color-mix(in srgb, var(--sharp-blue) 70%, black) 0%,
348
+ color-mix(in srgb, var(--sharp-blue) 70%, black) 100%
349
+ );
350
+ }
351
+ :host([mode="company"]) .view-area:nth-of-type(3) {
352
+ border-color: var(--yellow);
353
+ }
354
+ :host([mode="company"]) .view-area:nth-of-type(3) .grid-area-label {
355
+ background-image:
356
+ linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%),
357
+ linear-gradient(
358
+ 90deg,
359
+ color-mix(in srgb, var(--yellow) 70%, black) 0%,
360
+ color-mix(in srgb, var(--yellow) 70%, black) 100%
361
+ );
362
+ }
363
+
364
+ :host([mode="app"]) .view-area:nth-of-type(1) {
365
+ background-color: color-mix(in srgb, var(--tuned-red) 25%, transparent);
366
+ }
367
+ :host([mode="app"]) .view-area:nth-of-type(1) .grid-area-label {
368
+ background-image:
369
+ linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%),
370
+ linear-gradient(
371
+ 90deg,
372
+ color-mix(in srgb, var(--tuned-red) 70%, black) 0%,
373
+ color-mix(in srgb, var(--tuned-red) 70%, black) 100%
374
+ );
375
+ }
376
+ :host([mode="app"]) .view-area:nth-of-type(2) {
377
+ background-color: color-mix(in srgb, var(--sharp-blue) 25%, transparent);
378
+ }
379
+ :host([mode="app"]) .view-area:nth-of-type(2) .grid-area-label {
380
+ background-image:
381
+ linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%),
382
+ linear-gradient(
383
+ 90deg,
384
+ color-mix(in srgb, var(--sharp-blue) 70%, black) 0%,
385
+ color-mix(in srgb, var(--sharp-blue) 70%, black) 100%
386
+ );
387
+ }
388
+ :host([mode="app"]) .view-area:nth-of-type(3) {
389
+ background-color: color-mix(in srgb, var(--yellow) 25%, transparent);
390
+ }
391
+ :host([mode="app"]) .view-area:nth-of-type(3) .grid-area-label {
392
+ background-image:
393
+ linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%),
394
+ linear-gradient(
395
+ 90deg,
396
+ color-mix(in srgb, var(--yellow) 70%, black) 0%,
397
+ color-mix(in srgb, var(--yellow) 70%, black) 100%
398
+ );
399
+ }
400
+ :host([mode="app"]) .view-area:nth-of-type(4) {
401
+ background-color: color-mix(in srgb, var(--apple-green) 25%, transparent);
402
+ }
403
+ :host([mode="app"]) .view-area:nth-of-type(4) .grid-area-label {
404
+ background-image:
405
+ linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%),
406
+ linear-gradient(
407
+ 90deg,
408
+ color-mix(in srgb, var(--apple-green) 70%, black) 0%,
409
+ color-mix(in srgb, var(--apple-green) 70%, black) 100%
410
+ );
411
+ }
412
+ :host([mode="app"]) .view-area:nth-of-type(5) {
413
+ background-color: color-mix(in srgb, var(--pink) 25%, transparent);
414
+ }
415
+ :host([mode="app"]) .view-area:nth-of-type(5) .grid-area-label {
416
+ background-image:
417
+ linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%),
418
+ linear-gradient(
419
+ 90deg,
420
+ color-mix(in srgb, var(--pink) 70%, black) 0%,
421
+ color-mix(in srgb, var(--pink) 70%, black) 100%
422
+ );
423
+ }
424
+
425
+ :host([mode="list"]) .view-area:nth-of-type(1) {
426
+ background-color: color-mix(in srgb, var(--tuned-red) 25%, transparent);
427
+ }
428
+ :host([mode="list"]) .view-area:nth-of-type(1) .grid-area-label {
429
+ background-image:
430
+ linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%),
431
+ linear-gradient(
432
+ 90deg,
433
+ color-mix(in srgb, var(--tuned-red) 70%, black) 0%,
434
+ color-mix(in srgb, var(--tuned-red) 70%, black) 100%
435
+ );
436
+ }
437
+ :host([mode="list"]) .view-area:nth-of-type(2) {
438
+ background-color: color-mix(in srgb, var(--sharp-blue) 25%, transparent);
439
+ }
440
+ :host([mode="list"]) .view-area:nth-of-type(2) .grid-area-label {
441
+ background-image:
442
+ linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%),
443
+ linear-gradient(
444
+ 90deg,
445
+ color-mix(in srgb, var(--sharp-blue) 70%, black) 0%,
446
+ color-mix(in srgb, var(--sharp-blue) 70%, black) 100%
447
+ );
448
+ }
449
+ :host([mode="list"]) .view-area:nth-of-type(3) {
450
+ background-color: color-mix(in srgb, var(--yellow) 25%, transparent);
451
+ }
452
+ :host([mode="list"]) .view-area:nth-of-type(3) .grid-area-label {
453
+ background-image:
454
+ linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%),
455
+ linear-gradient(
456
+ 90deg,
457
+ color-mix(in srgb, var(--yellow) 70%, black) 0%,
458
+ color-mix(in srgb, var(--yellow) 70%, black) 100%
459
+ );
460
+ }
461
+ :host([mode="list"]) .view-area:nth-of-type(4) {
462
+ background-color: color-mix(in srgb, var(--apple-green) 25%, transparent);
463
+ }
464
+ :host([mode="list"]) .view-area:nth-of-type(4) .grid-area-label {
465
+ background-image:
466
+ linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%),
467
+ linear-gradient(
468
+ 90deg,
469
+ color-mix(in srgb, var(--apple-green) 70%, black) 0%,
470
+ color-mix(in srgb, var(--apple-green) 70%, black) 100%
471
+ );
472
+ }
473
+
474
+ :host([mode="home"]) .view-area:nth-of-type(1) {
475
+ background-color: color-mix(in srgb, var(--tuned-red) 25%, transparent);
476
+ }
477
+ :host([mode="home"]) .view-area:nth-of-type(1) .grid-area-label {
478
+ background-image:
479
+ linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%),
480
+ linear-gradient(
481
+ 90deg,
482
+ color-mix(in srgb, var(--tuned-red) 70%, black) 0%,
483
+ color-mix(in srgb, var(--tuned-red) 70%, black) 100%
484
+ );
485
+ }
486
+ :host([mode="home"]) .view-area:nth-of-type(2) {
487
+ background-color: color-mix(in srgb, var(--sharp-blue) 25%, transparent);
488
+ }
489
+ :host([mode="home"]) .view-area:nth-of-type(2) .grid-area-label {
490
+ background-image:
491
+ linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%),
492
+ linear-gradient(
493
+ 90deg,
494
+ color-mix(in srgb, var(--sharp-blue) 70%, black) 0%,
495
+ color-mix(in srgb, var(--sharp-blue) 70%, black) 100%
496
+ );
497
+ }
498
+ :host([mode="home"]) .view-area:nth-of-type(3) {
499
+ background-color: color-mix(in srgb, var(--yellow) 25%, transparent);
500
+ }
501
+ :host([mode="home"]) .view-area:nth-of-type(3) .grid-area-label {
502
+ background-image:
503
+ linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%),
504
+ linear-gradient(
505
+ 90deg,
506
+ color-mix(in srgb, var(--yellow) 70%, black) 0%,
507
+ color-mix(in srgb, var(--yellow) 70%, black) 100%
508
+ );
509
+ }
510
+ :host([mode="home"]) .view-area:nth-of-type(4) {
511
+ background-color: color-mix(in srgb, var(--apple-green) 25%, transparent);
512
+ }
513
+ :host([mode="home"]) .view-area:nth-of-type(4) .grid-area-label {
514
+ background-image:
515
+ linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%),
516
+ linear-gradient(
517
+ 90deg,
518
+ color-mix(in srgb, var(--apple-green) 70%, black) 0%,
519
+ color-mix(in srgb, var(--apple-green) 70%, black) 100%
520
+ );
521
+ }
522
+ :host([mode="home"]) .view-area:nth-of-type(5) {
523
+ background-color: color-mix(in srgb, var(--pink) 25%, transparent);
524
+ }
525
+ :host([mode="home"]) .view-area:nth-of-type(5) .grid-area-label {
526
+ background-image:
527
+ linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0.2) 100%),
528
+ linear-gradient(
529
+ 90deg,
530
+ color-mix(in srgb, var(--pink) 70%, black) 0%,
531
+ color-mix(in srgb, var(--pink) 70%, black) 100%
532
+ );
533
+ }
534
+
535
+ .view-square {
161
536
  grid-area: square;
162
537
  }
163
538
 
164
- .debug-title {
539
+ .view-title {
165
540
  grid-area: title;
166
541
  }
167
542
 
168
- .debug-header {
543
+ .view-header {
169
544
  grid-area: header;
170
- border-color: #0000ff;
171
545
  }
172
546
 
173
- .debug-projects {
547
+ .view-projects {
174
548
  grid-area: projects;
175
- border-color: #ffff00;
176
549
  }
177
550
 
178
- .debug-bio {
551
+ .view-bio {
179
552
  grid-area: bio;
180
- border-color: #ff00ff;
181
553
  }
182
554
 
183
- .debug-nav {
555
+ .view-nav {
184
556
  grid-area: nav;
185
- border-color: #00ffff;
186
557
  }
187
558
 
188
- .debug-footer {
559
+ .view-footer {
189
560
  grid-area: footer;
190
- border-color: rgb(24, 147, 73);
191
- background-color: rgba(127, 123, 11, 0.1);
192
561
  }
193
562
 
194
- .debug-content {
563
+ .view-content {
195
564
  grid-area: content;
196
- border-color: rgba(71, 231, 71, 0.63);
197
- }
198
-
199
- :host([mode="app"]) .debug-overlay {
200
- grid-template-columns: 1fr;
201
- grid-template-rows:
202
- calc(var(--1) * var(--sf))
203
- calc(var(--2) * var(--sf))
204
- calc(var(--4) * var(--sf))
205
- calc(var(--1) * var(--sf));
206
- grid-template-areas:
207
- "banner"
208
- "header"
209
- "main"
210
- "footer";
211
565
  }
212
566
 
213
- .debug-banner {
567
+ .view-banner {
214
568
  grid-area: banner;
215
- border-color: #daed09;
216
569
  }
217
570
 
218
- .debug-header {
219
- grid-area: header;
220
- border-color: #0000ff;
221
- background-color: rgba(127, 123, 11, 0.5);
571
+ .view-main {
572
+ grid-area: main;
222
573
  }
223
574
 
224
- .debug-main {
225
- grid-area: main;
226
- border-color: #0000ff;
575
+ .view-page-dots {
576
+ grid-area: page-dots;
227
577
  }
228
578
 
229
- .debug-footer-app {
230
- grid-area: footer;
231
- border-color: #ffa500;
579
+ .view-board {
580
+ grid-area: board;
581
+ }
582
+
583
+ .view-message {
584
+ grid-area: message;
232
585
  }
233
- `;
586
+
587
+ .view-lists {
588
+ grid-area: lists;
589
+ }
590
+ `
591
+ ];
234
592
 
235
593
  render() {
236
- const isDebug = this.debug || this.mode === "debug";
594
+ const isView = this.view || this.mode === "view";
237
595
  const isPortfolio = this.mode === "portfolio";
238
596
  const isCompany = this.mode === "company";
239
597
  const isApp = this.mode === "app";
598
+ const isList = this.mode === "list";
599
+ const isHome = this.mode === "home";
240
600
 
241
601
  return html`
242
602
  <slot></slot>
243
- ${isDebug
603
+ ${isView
244
604
  ? html`
245
- <div class="debug-overlay">
246
- ${isApp
605
+ <div class="view-overlay">
606
+ ${isHome
247
607
  ? html`
248
- <div class="debug-area debug-banner">
249
- <ds-text key="banner">banner</ds-text>
608
+ <div class="view-area view-banner">
609
+ <div class="grid-area-label">
610
+ <ds-text key="banner" default-value="banner"></ds-text>
611
+ </div>
250
612
  </div>
251
- <div class="debug-area debug-header">
252
- <ds-text key="header">header</ds-text>
613
+ <div class="view-area view-header">
614
+ <div class="grid-area-label">
615
+ <ds-text key="header" default-value="header"></ds-text>
616
+ </div>
253
617
  </div>
254
-
255
- <div class="debug-area debug-main">
256
- <ds-text key="main">main</ds-text>
618
+ <div class="view-area view-message">
619
+ <div class="grid-area-label">
620
+ <ds-text
621
+ key="message"
622
+ default-value="message"
623
+ ></ds-text>
624
+ </div>
625
+ </div>
626
+ <div class="view-area view-lists">
627
+ <div class="grid-area-label">
628
+ <ds-text key="lists" default-value="lists"></ds-text>
629
+ </div>
257
630
  </div>
258
- <div class="debug-area debug-footer-app">
259
- <ds-text key="footer">footer</ds-text>
631
+ <div class="view-area view-footer">
632
+ <div class="grid-area-label">
633
+ <ds-text key="footer" default-value="footer"></ds-text>
634
+ </div>
260
635
  </div>
261
636
  `
262
- : isCompany
637
+ : isList
263
638
  ? html`
264
- <div class="debug-area debug-header">
265
- <ds-text key="header">header</ds-text>
639
+ <div class="view-area view-banner">
640
+ <div class="grid-area-label">
641
+ <ds-text
642
+ key="banner"
643
+ default-value="banner"
644
+ ></ds-text>
645
+ </div>
266
646
  </div>
267
- <div class="debug-area debug-content">
268
- <ds-text key="content">content</ds-text>
647
+ <div class="view-area view-header">
648
+ <div class="grid-area-label">
649
+ <ds-text
650
+ key="header"
651
+ default-value="header"
652
+ ></ds-text>
653
+ </div>
269
654
  </div>
270
- <div class="debug-area debug-footer">
271
- <ds-text key="footer">footer</ds-text>
655
+ <div class="view-area view-board">
656
+ <div class="grid-area-label">
657
+ <ds-text key="board" default-value="board"></ds-text>
658
+ </div>
272
659
  </div>
273
660
  `
274
- : isPortfolio
661
+ : isApp
275
662
  ? html`
276
- <div class="debug-area debug-square">
277
- <ds-text key="square">square</ds-text>
278
- </div>
279
- <div class="debug-area debug-title">
280
- <ds-text key="title">title</ds-text>
281
- </div>
282
- <div class="debug-area debug-header">
283
- <ds-text key="header">header</ds-text>
663
+ <div class="view-area view-banner">
664
+ <div class="grid-area-label">
665
+ <ds-text
666
+ key="banner"
667
+ default-value="banner"
668
+ ></ds-text>
669
+ </div>
284
670
  </div>
285
- <div class="debug-area debug-projects">
286
- <ds-text key="projects">projects</ds-text>
671
+ <div class="view-area view-header">
672
+ <div class="grid-area-label">
673
+ <ds-text
674
+ key="header"
675
+ default-value="header"
676
+ ></ds-text>
677
+ </div>
287
678
  </div>
288
- <div class="debug-area debug-bio">
289
- <ds-text key="bio">bio</ds-text>
679
+ <div class="view-area view-main">
680
+ <div class="grid-area-label">
681
+ <ds-text key="main" default-value="main"></ds-text>
682
+ </div>
290
683
  </div>
291
- <div class="debug-area debug-nav">
292
- <ds-text key="nav">nav</ds-text>
684
+ <div class="view-area view-page-dots">
685
+ <div class="grid-area-label">
686
+ <ds-text
687
+ key="pageDots"
688
+ default-value="page-dots"
689
+ ></ds-text>
690
+ </div>
293
691
  </div>
294
- <div class="debug-area debug-footer">
295
- <ds-text key="footer">footer</ds-text>
692
+ <div class="view-area view-footer">
693
+ <div class="grid-area-label">
694
+ <ds-text
695
+ key="footer"
696
+ default-value="footer"
697
+ ></ds-text>
698
+ </div>
296
699
  </div>
297
700
  `
298
- : ""}
701
+ : isCompany
702
+ ? html`
703
+ <div class="view-area view-header">
704
+ <div class="grid-area-label">
705
+ <ds-text
706
+ key="header"
707
+ default-value="header"
708
+ ></ds-text>
709
+ </div>
710
+ </div>
711
+ <div class="view-area view-content">
712
+ <div class="grid-area-label">
713
+ <ds-text
714
+ key="content"
715
+ default-value="content"
716
+ ></ds-text>
717
+ </div>
718
+ </div>
719
+ <div class="view-area view-footer">
720
+ <div class="grid-area-label">
721
+ <ds-text
722
+ key="footer"
723
+ default-value="footer"
724
+ ></ds-text>
725
+ </div>
726
+ </div>
727
+ `
728
+ : isPortfolio
729
+ ? html`
730
+ <div class="view-area view-square">
731
+ <div class="grid-area-label">
732
+ <ds-text
733
+ key="square"
734
+ default-value="square"
735
+ ></ds-text>
736
+ </div>
737
+ </div>
738
+ <div class="view-area view-title">
739
+ <div class="grid-area-label">
740
+ <ds-text
741
+ key="title"
742
+ default-value="title"
743
+ ></ds-text>
744
+ </div>
745
+ </div>
746
+ <div class="view-area view-header">
747
+ <div class="grid-area-label">
748
+ <ds-text
749
+ key="header"
750
+ default-value="header"
751
+ ></ds-text>
752
+ </div>
753
+ </div>
754
+ <div class="view-area view-projects">
755
+ <div class="grid-area-label">
756
+ <ds-text
757
+ key="projects"
758
+ default-value="projects"
759
+ ></ds-text>
760
+ </div>
761
+ </div>
762
+ <div class="view-area view-bio">
763
+ <div class="grid-area-label">
764
+ <ds-text
765
+ key="bio"
766
+ default-value="bio"
767
+ ></ds-text>
768
+ </div>
769
+ </div>
770
+ <div class="view-area view-nav">
771
+ <div class="grid-area-label">
772
+ <ds-text
773
+ key="nav"
774
+ default-value="nav"
775
+ ></ds-text>
776
+ </div>
777
+ </div>
778
+ <div class="view-area view-footer">
779
+ <div class="grid-area-label">
780
+ <ds-text
781
+ key="footer"
782
+ default-value="footer"
783
+ ></ds-text>
784
+ </div>
785
+ </div>
786
+ `
787
+ : ""}
299
788
  </div>
300
789
  `
301
790
  : ""}