ds-one 0.2.0-alpha.3 → 0.2.5-alpha.10

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 (271) hide show
  1. package/DS1/0-face/{2025-04-23-device.ts → device.ts} +10 -6
  2. package/DS1/{utils/language.ts → 0-face/i18n.ts} +236 -92
  3. package/DS1/0-face/preferences.ts +23 -0
  4. package/DS1/0-face/pricing.ts +57 -0
  5. package/DS1/1-root/fonts/Iosevka-Regular.woff2 +0 -0
  6. package/DS1/1-root/one.css +76 -107
  7. package/DS1/2-core/ds-banner.ts +3 -0
  8. package/DS1/2-core/ds-button.ts +13 -16
  9. package/DS1/2-core/ds-cycle.ts +84 -39
  10. package/DS1/2-core/{ds-year.ts → ds-date.ts} +5 -6
  11. package/DS1/2-core/ds-icon.ts +4 -4
  12. package/DS1/2-core/ds-input.ts +1 -0
  13. package/DS1/2-core/ds-text.ts +27 -3
  14. package/DS1/2-core/ds-tooltip.ts +9 -14
  15. package/DS1/3-unit/ds-list.ts +7 -0
  16. package/DS1/3-unit/ds-row.ts +4 -5
  17. package/DS1/3-unit/ds-table.ts +5 -6
  18. package/DS1/4-page/ds-grid.ts +9 -59
  19. package/DS1/4-page/ds-layout.ts +123 -18
  20. package/DS1/index.ts +39 -37
  21. package/LICENSE +1 -1
  22. package/README.md +43 -133
  23. package/dist/0-face/{2025-04-23-device.d.ts → device.d.ts} +1 -1
  24. package/dist/0-face/device.d.ts.map +1 -0
  25. package/dist/0-face/{2025-04-23-device.js → device.js} +7 -3
  26. package/dist/{utils/language.d.ts → 0-face/i18n.d.ts} +1 -3
  27. package/dist/0-face/i18n.d.ts.map +1 -0
  28. package/dist/{utils/language.js → 0-face/i18n.js} +178 -76
  29. package/dist/0-face/preferences.d.ts +9 -0
  30. package/dist/0-face/preferences.d.ts.map +1 -0
  31. package/dist/0-face/preferences.js +14 -0
  32. package/dist/0-face/pricing.d.ts +15 -0
  33. package/dist/0-face/pricing.d.ts.map +1 -0
  34. package/dist/0-face/pricing.js +46 -0
  35. package/dist/0-face/theme.d.ts.map +1 -0
  36. package/dist/2-core/ds-banner.d.ts +1 -0
  37. package/dist/2-core/ds-banner.d.ts.map +1 -0
  38. package/dist/2-core/ds-banner.js +2 -0
  39. package/dist/2-core/ds-button.d.ts +2 -7
  40. package/dist/2-core/ds-button.d.ts.map +1 -1
  41. package/dist/2-core/ds-button.js +12 -14
  42. package/dist/2-core/ds-cycle.d.ts +2 -0
  43. package/dist/2-core/ds-cycle.d.ts.map +1 -1
  44. package/dist/2-core/ds-cycle.js +80 -34
  45. package/dist/2-core/{ds-year.d.ts → ds-date.d.ts} +4 -4
  46. package/dist/2-core/ds-date.d.ts.map +1 -0
  47. package/dist/2-core/{ds-year.js → ds-date.js} +5 -5
  48. package/dist/2-core/ds-icon.js +4 -4
  49. package/dist/2-core/ds-input.d.ts +1 -0
  50. package/dist/2-core/ds-input.d.ts.map +1 -0
  51. package/dist/2-core/ds-input.js +1 -0
  52. package/dist/2-core/ds-text.d.ts +2 -0
  53. package/dist/2-core/ds-text.d.ts.map +1 -1
  54. package/dist/2-core/ds-text.js +26 -3
  55. package/dist/2-core/ds-tooltip.d.ts +1 -1
  56. package/dist/2-core/ds-tooltip.d.ts.map +1 -1
  57. package/dist/2-core/ds-tooltip.js +9 -13
  58. package/dist/3-unit/ds-list.d.ts.map +1 -1
  59. package/dist/3-unit/ds-list.js +3 -0
  60. package/dist/3-unit/{ds-doublenav.d.ts → ds-portfolio-doublenav.d.ts} +4 -4
  61. package/dist/3-unit/ds-portfolio-doublenav.d.ts.map +1 -0
  62. package/dist/3-unit/{ds-doublenav.js → ds-portfolio-doublenav.js} +4 -4
  63. package/dist/3-unit/{ds-panel.d.ts → ds-portfolio-panel.d.ts} +3 -3
  64. package/dist/3-unit/ds-portfolio-panel.d.ts.map +1 -0
  65. package/dist/3-unit/{ds-panel.js → ds-portfolio-panel.js} +3 -3
  66. package/dist/3-unit/{ds-singlenav.d.ts → ds-portfolio-singlenav.d.ts} +4 -4
  67. package/dist/3-unit/ds-portfolio-singlenav.d.ts.map +1 -0
  68. package/dist/3-unit/{ds-singlenav.js → ds-portfolio-singlenav.js} +7 -7
  69. package/dist/3-unit/ds-row.js +4 -4
  70. package/dist/3-unit/ds-table.d.ts.map +1 -1
  71. package/dist/3-unit/ds-table.js +5 -6
  72. package/dist/4-page/ds-grid.d.ts +0 -7
  73. package/dist/4-page/ds-grid.d.ts.map +1 -1
  74. package/dist/4-page/ds-grid.js +9 -54
  75. package/dist/4-page/ds-layout.d.ts +1 -1
  76. package/dist/4-page/ds-layout.d.ts.map +1 -1
  77. package/dist/4-page/ds-layout.js +126 -17
  78. package/dist/ds-one.bundle.js +2515 -4132
  79. package/dist/ds-one.bundle.js.map +4 -4
  80. package/dist/ds-one.bundle.min.js +245 -787
  81. package/dist/ds-one.bundle.min.js.map +4 -4
  82. package/dist/index.d.ts +16 -26
  83. package/dist/index.d.ts.map +1 -1
  84. package/dist/index.js +32 -34
  85. package/package.json +8 -9
  86. package/DS1/0-face/2025-04-23-language.ts +0 -4
  87. package/DS1/2-core/ds-article.ts +0 -454
  88. package/DS1/2-core/ds-attributes.ts +0 -155
  89. package/DS1/2-core/ds-downloadcv.ts +0 -146
  90. package/DS1/2-core/ds-header.ts +0 -82
  91. package/DS1/2-core/ds-home.ts +0 -168
  92. package/DS1/2-core/ds-link.ts +0 -121
  93. package/DS1/2-core/ds-markdown.ts +0 -252
  94. package/DS1/2-core/ds-price.ts +0 -108
  95. package/DS1/2-core/ds-squarecircle.ts +0 -155
  96. package/DS1/2-core/ds-title.ts +0 -139
  97. package/DS1/2-core/ds-viewtoggle.ts +0 -83
  98. package/DS1/3-unit/ds-doublenav.ts +0 -106
  99. package/DS1/3-unit/ds-panel.ts +0 -27
  100. package/DS1/3-unit/ds-singlenav.ts +0 -79
  101. package/DS1/utils/cdn-loader.ts +0 -208
  102. package/DS1/utils/keys.json +0 -41
  103. package/DS1/utils/pricing.ts +0 -24
  104. package/DS1/utils/scroll.ts +0 -184
  105. package/DS1/utils/settings.ts +0 -23
  106. package/DS1/utils/viewMode.ts +0 -55
  107. package/dist/0-face/2025-04-23-device.d.ts.map +0 -1
  108. package/dist/0-face/2025-04-23-language.d.ts +0 -1
  109. package/dist/0-face/2025-04-23-language.d.ts.map +0 -1
  110. package/dist/0-face/2025-04-23-language.js +0 -3
  111. package/dist/2-core/article-v1.d.ts +0 -129
  112. package/dist/2-core/article-v1.d.ts.map +0 -1
  113. package/dist/2-core/article-v1.js +0 -361
  114. package/dist/2-core/attributes-v1.d.ts +0 -47
  115. package/dist/2-core/attributes-v1.d.ts.map +0 -1
  116. package/dist/2-core/attributes-v1.js +0 -128
  117. package/dist/2-core/cycle-v1.d.ts +0 -66
  118. package/dist/2-core/cycle-v1.d.ts.map +0 -1
  119. package/dist/2-core/cycle-v1.js +0 -586
  120. package/dist/2-core/downloadcv-v1.d.ts +0 -58
  121. package/dist/2-core/downloadcv-v1.d.ts.map +0 -1
  122. package/dist/2-core/downloadcv-v1.js +0 -119
  123. package/dist/2-core/ds-article.d.ts +0 -129
  124. package/dist/2-core/ds-article.d.ts.map +0 -1
  125. package/dist/2-core/ds-article.js +0 -361
  126. package/dist/2-core/ds-attributes.d.ts +0 -47
  127. package/dist/2-core/ds-attributes.d.ts.map +0 -1
  128. package/dist/2-core/ds-attributes.js +0 -128
  129. package/dist/2-core/ds-button.figma.d.ts +0 -2
  130. package/dist/2-core/ds-button.figma.d.ts.map +0 -1
  131. package/dist/2-core/ds-button.figma.js +0 -6
  132. package/dist/2-core/ds-downloadcv.d.ts +0 -58
  133. package/dist/2-core/ds-downloadcv.d.ts.map +0 -1
  134. package/dist/2-core/ds-downloadcv.js +0 -119
  135. package/dist/2-core/ds-header.d.ts +0 -28
  136. package/dist/2-core/ds-header.d.ts.map +0 -1
  137. package/dist/2-core/ds-header.js +0 -66
  138. package/dist/2-core/ds-home.d.ts +0 -26
  139. package/dist/2-core/ds-home.d.ts.map +0 -1
  140. package/dist/2-core/ds-home.js +0 -148
  141. package/dist/2-core/ds-link.d.ts +0 -35
  142. package/dist/2-core/ds-link.d.ts.map +0 -1
  143. package/dist/2-core/ds-link.js +0 -85
  144. package/dist/2-core/ds-markdown.d.ts +0 -7
  145. package/dist/2-core/ds-markdown.d.ts.map +0 -1
  146. package/dist/2-core/ds-markdown.js +0 -240
  147. package/dist/2-core/ds-price.d.ts +0 -46
  148. package/dist/2-core/ds-price.d.ts.map +0 -1
  149. package/dist/2-core/ds-price.js +0 -72
  150. package/dist/2-core/ds-squarecircle.d.ts +0 -50
  151. package/dist/2-core/ds-squarecircle.d.ts.map +0 -1
  152. package/dist/2-core/ds-squarecircle.js +0 -133
  153. package/dist/2-core/ds-title.d.ts +0 -50
  154. package/dist/2-core/ds-title.d.ts.map +0 -1
  155. package/dist/2-core/ds-title.js +0 -103
  156. package/dist/2-core/ds-viewtoggle.d.ts +0 -27
  157. package/dist/2-core/ds-viewtoggle.d.ts.map +0 -1
  158. package/dist/2-core/ds-viewtoggle.js +0 -49
  159. package/dist/2-core/ds-year.d.ts.map +0 -1
  160. package/dist/2-core/header-v1.d.ts +0 -28
  161. package/dist/2-core/header-v1.d.ts.map +0 -1
  162. package/dist/2-core/header-v1.js +0 -66
  163. package/dist/2-core/home-v1.d.ts +0 -26
  164. package/dist/2-core/home-v1.d.ts.map +0 -1
  165. package/dist/2-core/home-v1.js +0 -148
  166. package/dist/2-core/icon-v1.d.ts +0 -28
  167. package/dist/2-core/icon-v1.d.ts.map +0 -1
  168. package/dist/2-core/icon-v1.js +0 -297
  169. package/dist/2-core/link-v1.d.ts +0 -35
  170. package/dist/2-core/link-v1.d.ts.map +0 -1
  171. package/dist/2-core/link-v1.js +0 -85
  172. package/dist/2-core/markdown-v1.d.ts +0 -7
  173. package/dist/2-core/markdown-v1.d.ts.map +0 -1
  174. package/dist/2-core/markdown-v1.js +0 -240
  175. package/dist/2-core/price-v1.d.ts +0 -46
  176. package/dist/2-core/price-v1.d.ts.map +0 -1
  177. package/dist/2-core/price-v1.js +0 -72
  178. package/dist/2-core/squarecircle-v1.d.ts +0 -50
  179. package/dist/2-core/squarecircle-v1.d.ts.map +0 -1
  180. package/dist/2-core/squarecircle-v1.js +0 -133
  181. package/dist/2-core/text-v1.d.ts +0 -48
  182. package/dist/2-core/text-v1.d.ts.map +0 -1
  183. package/dist/2-core/text-v1.js +0 -83
  184. package/dist/2-core/title-v1.d.ts +0 -50
  185. package/dist/2-core/title-v1.d.ts.map +0 -1
  186. package/dist/2-core/title-v1.js +0 -103
  187. package/dist/2-core/tooltip-v1.d.ts +0 -39
  188. package/dist/2-core/tooltip-v1.d.ts.map +0 -1
  189. package/dist/2-core/tooltip-v1.js +0 -145
  190. package/dist/2-core/viewtoggle-v1.d.ts +0 -27
  191. package/dist/2-core/viewtoggle-v1.d.ts.map +0 -1
  192. package/dist/2-core/viewtoggle-v1.js +0 -49
  193. package/dist/2-core/year-v1.d.ts +0 -16
  194. package/dist/2-core/year-v1.d.ts.map +0 -1
  195. package/dist/2-core/year-v1.js +0 -21
  196. package/dist/3-unit/ds-doublenav.d.ts.map +0 -1
  197. package/dist/3-unit/ds-panel.d.ts.map +0 -1
  198. package/dist/3-unit/ds-singlenav.d.ts.map +0 -1
  199. package/dist/utils/cdn-loader.d.ts +0 -19
  200. package/dist/utils/cdn-loader.d.ts.map +0 -1
  201. package/dist/utils/cdn-loader.js +0 -142
  202. package/dist/utils/keys.json +0 -41
  203. package/dist/utils/language.d.ts.map +0 -1
  204. package/dist/utils/pricing.d.ts +0 -8
  205. package/dist/utils/pricing.d.ts.map +0 -1
  206. package/dist/utils/pricing.js +0 -14
  207. package/dist/utils/scroll.d.ts +0 -34
  208. package/dist/utils/scroll.d.ts.map +0 -1
  209. package/dist/utils/scroll.js +0 -140
  210. package/dist/utils/settings.d.ts +0 -9
  211. package/dist/utils/settings.d.ts.map +0 -1
  212. package/dist/utils/settings.js +0 -14
  213. package/dist/utils/theme.d.ts.map +0 -1
  214. package/dist/utils/viewMode.d.ts +0 -14
  215. package/dist/utils/viewMode.d.ts.map +0 -1
  216. package/dist/utils/viewMode.js +0 -46
  217. /package/DS1/{utils → 0-face}/theme.ts +0 -0
  218. /package/DS1/{x Icon → x-icon}/1x.svg +0 -0
  219. /package/DS1/{x Icon → x-icon}/1xdots.svg +0 -0
  220. /package/DS1/{x Icon → x-icon}/1xgrid.svg +0 -0
  221. /package/DS1/{x Icon → x-icon}/1xlines.svg +0 -0
  222. /package/DS1/{x Icon → x-icon}/2x.svg +0 -0
  223. /package/DS1/{x Icon → x-icon}/2xdots.svg +0 -0
  224. /package/DS1/{x Icon → x-icon}/2xgrid.svg +0 -0
  225. /package/DS1/{x Icon → x-icon}/2xlines.svg +0 -0
  226. /package/DS1/{x Icon → x-icon}/big.svg +0 -0
  227. /package/DS1/{x Icon → x-icon}/blank.svg +0 -0
  228. /package/DS1/{x Icon → x-icon}/check.svg +0 -0
  229. /package/DS1/{x Icon → x-icon}/close.svg +0 -0
  230. /package/DS1/{x Icon → x-icon}/collapse.svg +0 -0
  231. /package/DS1/{x Icon → x-icon}/color.svg +0 -0
  232. /package/DS1/{x Icon → x-icon}/column.svg +0 -0
  233. /package/DS1/{x Icon → x-icon}/default.svg +0 -0
  234. /package/DS1/{x Icon → x-icon}/delete.svg +0 -0
  235. /package/DS1/{x Icon → x-icon}/do.svg +0 -0
  236. /package/DS1/{x Icon → x-icon}/down.svg +0 -0
  237. /package/DS1/{x Icon → x-icon}/duplicate.svg +0 -0
  238. /package/DS1/{x Icon → x-icon}/email.svg +0 -0
  239. /package/DS1/{x Icon → x-icon}/expand.svg +0 -0
  240. /package/DS1/{x Icon → x-icon}/gallery.svg +0 -0
  241. /package/DS1/{x Icon → x-icon}/group.svg +0 -0
  242. /package/DS1/{x Icon → x-icon}/head.svg +0 -0
  243. /package/DS1/{x Icon → x-icon}/icon.svg +0 -0
  244. /package/DS1/{x Icon → x-icon}/left.svg +0 -0
  245. /package/DS1/{x Icon → x-icon}/lock.svg +0 -0
  246. /package/DS1/{x Icon → x-icon}/mic.svg +0 -0
  247. /package/DS1/{x Icon → x-icon}/minimize.svg +0 -0
  248. /package/DS1/{x Icon → x-icon}/more.svg +0 -0
  249. /package/DS1/{x Icon → x-icon}/note.svg +0 -0
  250. /package/DS1/{x Icon → x-icon}/open.svg +0 -0
  251. /package/DS1/{x Icon → x-icon}/page.svg +0 -0
  252. /package/DS1/{x Icon → x-icon}/plus.svg +0 -0
  253. /package/DS1/{x Icon → x-icon}/rewind.svg +0 -0
  254. /package/DS1/{x Icon → x-icon}/right.svg +0 -0
  255. /package/DS1/{x Icon/row..svg → x-icon/row.svg} +0 -0
  256. /package/DS1/{x Icon → x-icon}/search.svg +0 -0
  257. /package/DS1/{x Icon → x-icon}/see.svg +0 -0
  258. /package/DS1/{x Icon → x-icon}/star.svg +0 -0
  259. /package/DS1/{x Icon → x-icon}/title.svg +0 -0
  260. /package/DS1/{x Icon → x-icon}/undo.svg +0 -0
  261. /package/DS1/{x Icon → x-icon}/ungroup.svg +0 -0
  262. /package/DS1/{x Icon → x-icon}/unhead.svg +0 -0
  263. /package/DS1/{x Icon → x-icon}/unicon.svg +0 -0
  264. /package/DS1/{x Icon → x-icon}/unlock.svg +0 -0
  265. /package/DS1/{x Icon → x-icon}/unmic.svg +0 -0
  266. /package/DS1/{x Icon → x-icon}/unsee.svg +0 -0
  267. /package/DS1/{x Icon → x-icon}/unstar.svg +0 -0
  268. /package/DS1/{x Icon → x-icon}/untitle.svg +0 -0
  269. /package/DS1/{x Icon → x-icon}/up.svg +0 -0
  270. /package/dist/{utils → 0-face}/theme.d.ts +0 -0
  271. /package/dist/{utils → 0-face}/theme.js +0 -0
@@ -15,18 +15,18 @@ Row.styles = css `
15
15
  :host {
16
16
  display: flex;
17
17
  align-items: end;
18
- width: calc(240px * var(--scaling-factor));
18
+ width: calc(240px * var(--sf));
19
19
  }
20
20
 
21
21
  :host([type="fill"]) {
22
22
  justify-content: space-between;
23
- height: calc(var(--1) * var(--scaling-factor));
23
+ height: calc(var(--1) * var(--sf));
24
24
  }
25
25
 
26
26
  :host([type="centered"]) {
27
27
  justify-content: center;
28
- height: calc(var(--1) * var(--scaling-factor));
29
- gap: calc(var(--025) * var(--scaling-factor));
28
+ height: calc(var(--1) * var(--sf));
29
+ gap: calc(var(--025) * var(--sf));
30
30
  }
31
31
  `;
32
32
  customElements.define("ds-row", Row);
@@ -1 +1 @@
1
- {"version":3,"file":"ds-table.d.ts","sourceRoot":"","sources":["../../DS1/3-unit/ds-table.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAa,MAAM,KAAK,CAAC;AAE5C,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,OAAQ,SAAQ,UAAU;IACrC,MAAM,CAAC,UAAU;;;;;;;;;;;MAIf;IAEM,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;;IAS5B,MAAM,CAAC,MAAM,0BAmFX;IAEF,MAAM;CA2BP;AAID,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,UAAU,EAAE,OAAO,CAAC;KACrB;CACF"}
1
+ {"version":3,"file":"ds-table.d.ts","sourceRoot":"","sources":["../../DS1/3-unit/ds-table.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAa,MAAM,KAAK,CAAC;AAE5C,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,OAAQ,SAAQ,UAAU;IACrC,MAAM,CAAC,UAAU;;;;;;;;;;;MAIf;IAEM,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;;IAS5B,MAAM,CAAC,MAAM,0BAmFX;IAEF,MAAM;CA0BP;AAID,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,UAAU,EAAE,OAAO,CAAC;KACrB;CACF"}
@@ -12,7 +12,6 @@ export class DsTable extends LitElement {
12
12
  return html `
13
13
  <div class="table-container">
14
14
  <div class="table-header">
15
-
16
15
  <div class="header-cell product-cell">Product</div>
17
16
  <div class="header-cell users-cell">Users</div>
18
17
  <div class="header-cell retention-cell">Retention</div>
@@ -70,8 +69,8 @@ DsTable.styles = css `
70
69
  display: flex;
71
70
  align-items: center;
72
71
  justify-content: left;
73
- padding: 0 2px;
74
- font-family: var(--typeface);
72
+ padding: 0 2px;
73
+ font-family: var(--typeface-regular);
75
74
  font-size: var(--type-size-default);
76
75
  font-weight: var(--type-weight-default);
77
76
  line-height: var(--type-lineheight-default);
@@ -85,10 +84,10 @@ DsTable.styles = css `
85
84
  display: flex;
86
85
  align-items: center;
87
86
  justify-content: left;
88
-
87
+
89
88
  outline: 1px solid var(--black);
90
89
 
91
- font-family: var(--typeface);
90
+ font-family: var(--typeface-regular);
92
91
  font-size: var(--type-size-default);
93
92
  font-weight: var(--type-weight-default);
94
93
  line-height: var(--type-lineheight-default);
@@ -97,7 +96,7 @@ DsTable.styles = css `
97
96
  }
98
97
 
99
98
  .status-cell {
100
- background-color: var(--light-green);
99
+ background-color: var(--apple-green);
101
100
  }
102
101
 
103
102
  .product-cell {
@@ -10,16 +10,9 @@ export declare class Grid extends LitElement {
10
10
  align: {
11
11
  type: StringConstructor;
12
12
  };
13
- _isMobile: {
14
- type: BooleanConstructor;
15
- state: boolean;
16
- };
17
13
  };
18
14
  align?: string;
19
- _isMobile: boolean;
20
- connectedCallback(): void;
21
15
  static styles: import("lit").CSSResult;
22
- updated(): void;
23
16
  render(): import("lit-html").TemplateResult<1>;
24
17
  }
25
18
  declare global {
@@ -1 +1 @@
1
- {"version":3,"file":"ds-grid.d.ts","sourceRoot":"","sources":["../../DS1/4-page/ds-grid.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAa,MAAM,KAAK,CAAC;AAG5C,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,UAAU,GAAG,IAAI,CAAC;KAC5D;IACD,IAAI,cAAc,EAAE,qBAAqB,CAAC;CAC3C;AAED,qBAAa,IAAK,SAAQ,UAAU;IAClC,MAAM,CAAC,UAAU;;;;;;;;MAGf;IAEF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,OAAO,CAAS;IAE3B,iBAAiB;IAiCjB,MAAM,CAAC,MAAM,0BA2DX;IAEF,OAAO;IASP,MAAM;CAGP;AAID,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,SAAS,EAAE,IAAI,CAAC;KACjB;CACF"}
1
+ {"version":3,"file":"ds-grid.d.ts","sourceRoot":"","sources":["../../DS1/4-page/ds-grid.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAa,MAAM,KAAK,CAAC;AAE5C,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,UAAU,GAAG,IAAI,CAAC;KAC5D;IACD,IAAI,cAAc,EAAE,qBAAqB,CAAC;CAC3C;AAED,qBAAa,IAAK,SAAQ,UAAU;IAClC,MAAM,CAAC,UAAU;;;;MAEf;IAEF,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,MAAM,CAAC,MAAM,0BAsDX;IAEF,MAAM;CAGP;AAID,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,SAAS,EAAE,IAAI,CAAC;KACjB;CACF"}
@@ -1,53 +1,13 @@
1
1
  // ds-grid.ts
2
2
  // Simple grid layout component
3
3
  import { LitElement, html, css } from "lit";
4
- import { detectMobileDevice } from "../0-face/2025-04-23-device";
5
4
  export class Grid extends LitElement {
6
- constructor() {
7
- super(...arguments);
8
- this._isMobile = false;
9
- }
10
- connectedCallback() {
11
- super.connectedCallback();
12
- this._isMobile = detectMobileDevice();
13
- console.log(`[ds-grid] Mobile device: ${this._isMobile}`);
14
- // Apply mobile class immediately
15
- if (this._isMobile) {
16
- this.classList.add("mobile");
17
- console.log(`[ds-grid] Mobile class added`);
18
- }
19
- // Calculate mobile grid dimensions to fit screen
20
- if (this._isMobile && typeof window !== "undefined") {
21
- const screenWidth = window.innerWidth;
22
- const columns = 14;
23
- const gap = 0.5;
24
- // Calculate column size accounting for gaps between columns
25
- // Total width = (columns * columnSize) + ((columns - 1) * gap)
26
- // Therefore: columnSize = (screenWidth - ((columns - 1) * gap)) / columns
27
- const totalGapWidth = (columns - 1) * gap;
28
- const columnSize = (screenWidth - totalGapWidth) / columns;
29
- console.log(`[ds-grid] Mobile grid: ${columns} columns × ${columnSize.toFixed(2)}px + ${totalGapWidth}px gaps = ${screenWidth}px`);
30
- // Set custom property for this grid instance
31
- this.style.setProperty("--mobile-column-size", `${columnSize}px`);
32
- this.style.setProperty("--mobile-gap", `${gap}px`);
33
- }
34
- }
35
- updated() {
36
- // Apply mobile class if detected as mobile device
37
- if (this._isMobile) {
38
- this.classList.add("mobile");
39
- }
40
- else {
41
- this.classList.remove("mobile");
42
- }
43
- }
44
5
  render() {
45
6
  return html ``;
46
7
  }
47
8
  }
48
9
  Grid.properties = {
49
10
  align: { type: String },
50
- _isMobile: { type: Boolean, state: true },
51
11
  };
52
12
  Grid.styles = css `
53
13
  :host {
@@ -55,17 +15,13 @@ Grid.styles = css `
55
15
  margin-left: 0.5px !important;
56
16
  display: grid;
57
17
  width: 1440px;
58
- height: 100%;
18
+ height: 360px;
59
19
  grid-template-columns: repeat(auto-fill, 19px);
60
20
  grid-template-rows: repeat(auto-fill, 19px);
61
21
  gap: 1px;
62
- row-rule: calc(1px * var(--scaling-factor)) solid
63
- light-dark(rgb(147, 147, 147), rgb(147, 147, 147));
64
- column-rule: calc(1px * var(--scaling-factor)) solid
65
- light-dark(rgb(147, 147, 147), rgb(147, 147, 147));
66
- outline:
67
- 1px solid light-dark(rgb(147, 147, 147)),
68
- rgb(147, 147, 147);
22
+ row-rule: calc(1px * var(--sf)) solid var(--grid-color);
23
+ column-rule: calc(1px * var(--sf)) solid var(--grid-color);
24
+ outline: 1px solid black;
69
25
  position: fixed;
70
26
  top: 0;
71
27
  left: 50%;
@@ -76,21 +32,20 @@ Grid.styles = css `
76
32
 
77
33
  /* DO NOT CHANGE THIS GRID CODE FOR MOBILE. ITS PERFECT FOR MOBILE. */
78
34
  :host(.mobile) {
79
- outline: calc(2px * var(--scaling-factor)) solid rgba(251, 255, 0, 0.9);
80
- width: calc(100% - calc(1px * var(--scaling-factor)));
35
+ width: calc(100% - calc(1px * var(--sf)));
81
36
  max-width: 100vw;
82
37
  margin-left: 0 !important;
83
38
  margin-top: 0 !important;
84
39
  box-sizing: border-box;
85
40
  position: fixed;
86
- top: calc(0.5px * var(--scaling-factor));
41
+ top: calc(0.5px * var(--sf));
87
42
  left: 50%;
88
43
  transform: translateX(-50%);
89
44
  pointer-events: none;
90
45
  z-index: 300;
91
- gap: calc(1px * var(--scaling-factor));
92
- grid-template-columns: repeat(14, calc(19px * var(--scaling-factor)));
93
- grid-template-rows: repeat(auto-fill, calc(19px * var(--scaling-factor)));
46
+ gap: calc(1px * var(--sf));
47
+ grid-template-columns: repeat(14, calc(19px * var(--sf)));
48
+ grid-template-rows: repeat(auto-fill, calc(19px * var(--sf)));
94
49
  }
95
50
 
96
51
  :host([align="left"]) {
@@ -17,7 +17,7 @@ export declare class Layout extends LitElement {
17
17
  type: BooleanConstructor;
18
18
  };
19
19
  };
20
- mode?: string;
20
+ mode: string;
21
21
  align?: string;
22
22
  debug?: boolean;
23
23
  static styles: import("lit").CSSResult;
@@ -1 +1 @@
1
- {"version":3,"file":"ds-layout.d.ts","sourceRoot":"","sources":["../../DS1/4-page/ds-layout.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAa,MAAM,KAAK,CAAC;AAE5C,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,UAAU,GAAG,IAAI,CAAC;KAC5D;IACD,IAAI,cAAc,EAAE,qBAAqB,CAAC;CAC3C;AAED,qBAAa,MAAO,SAAQ,UAAU;IACpC,MAAM,CAAC,UAAU;;;;;;;;;;MAIf;IAEF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB,MAAM,CAAC,MAAM,0BAgJX;IAEF,MAAM;CA6BP;AAID,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,WAAW,EAAE,MAAM,CAAC;KACrB;CACF"}
1
+ {"version":3,"file":"ds-layout.d.ts","sourceRoot":"","sources":["../../DS1/4-page/ds-layout.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAa,MAAM,KAAK,CAAC;AAE5C,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,UAAU,GAAG,IAAI,CAAC;KAC5D;IACD,IAAI,cAAc,EAAE,qBAAqB,CAAC;CAC3C;AAED,qBAAa,MAAO,SAAQ,UAAU;IACpC,MAAM,CAAC,UAAU;;;;;;;;;;MAIf;IAEF,IAAI,EAAE,MAAM,CAAe;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAEhB,MAAM,CAAC,MAAM,0BAiNX;IAEF,MAAM;CAqEP;AAID,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,WAAW,EAAE,MAAM,CAAC;KACrB;CACF"}
@@ -2,29 +2,73 @@
2
2
  // Simple grid layout component with debug mode
3
3
  import { LitElement, html, css } from "lit";
4
4
  export class Layout extends LitElement {
5
+ constructor() {
6
+ super(...arguments);
7
+ this.mode = "portfolio";
8
+ }
5
9
  render() {
6
10
  const isDebug = this.debug || this.mode === "debug";
11
+ const isPortfolio = this.mode === "portfolio";
7
12
  const isCompany = this.mode === "company";
13
+ const isApp = this.mode === "app";
8
14
  return html `
9
15
  <slot></slot>
10
16
  ${isDebug
11
17
  ? html `
12
18
  <div class="debug-overlay">
13
- ${isCompany
19
+ ${isApp
14
20
  ? html `
15
- <div class="debug-area debug-header">header</div>
16
- <div class="debug-area debug-content">content</div>
17
- <div class="debug-area debug-footer">footer</div>
21
+ <div class="debug-area debug-banner">
22
+ <ds-text key="banner">banner</ds-text>
23
+ </div>
24
+ <div class="debug-area debug-header">
25
+ <ds-text key="header">header</ds-text>
26
+ </div>
27
+
28
+ <div class="debug-area debug-main">
29
+ <ds-text key="main">main</ds-text>
30
+ </div>
31
+ <div class="debug-area debug-footer-app">
32
+ <ds-text key="footer">footer</ds-text>
33
+ </div>
18
34
  `
19
- : html `
20
- <div class="debug-area debug-square">square</div>
21
- <div class="debug-area debug-title">title</div>
22
- <div class="debug-area debug-header">header</div>
23
- <div class="debug-area debug-projects">projects</div>
24
- <div class="debug-area debug-bio">bio</div>
25
- <div class="debug-area debug-nav">nav</div>
26
- <div class="debug-area debug-footer">footer</div>
27
- `}
35
+ : isCompany
36
+ ? html `
37
+ <div class="debug-area debug-header">
38
+ <ds-text key="header">header</ds-text>
39
+ </div>
40
+ <div class="debug-area debug-content">
41
+ <ds-text key="content">content</ds-text>
42
+ </div>
43
+ <div class="debug-area debug-footer">
44
+ <ds-text key="footer">footer</ds-text>
45
+ </div>
46
+ `
47
+ : isPortfolio
48
+ ? html `
49
+ <div class="debug-area debug-square">
50
+ <ds-text key="square">square</ds-text>
51
+ </div>
52
+ <div class="debug-area debug-title">
53
+ <ds-text key="title">title</ds-text>
54
+ </div>
55
+ <div class="debug-area debug-header">
56
+ <ds-text key="header">header</ds-text>
57
+ </div>
58
+ <div class="debug-area debug-projects">
59
+ <ds-text key="projects">projects</ds-text>
60
+ </div>
61
+ <div class="debug-area debug-bio">
62
+ <ds-text key="bio">bio</ds-text>
63
+ </div>
64
+ <div class="debug-area debug-nav">
65
+ <ds-text key="nav">nav</ds-text>
66
+ </div>
67
+ <div class="debug-area debug-footer">
68
+ <ds-text key="footer">footer</ds-text>
69
+ </div>
70
+ `
71
+ : ""}
28
72
  </div>
29
73
  `
30
74
  : ""}
@@ -39,6 +83,11 @@ Layout.properties = {
39
83
  Layout.styles = css `
40
84
  :host {
41
85
  display: grid;
86
+ position: relative;
87
+ width: 100%;
88
+ }
89
+
90
+ :host([mode="portfolio"]) {
42
91
  grid-template-columns: 120px 480px 40px;
43
92
  grid-template-rows: 120px 120px 60px 180px 60px 120px 60px 20px 120px 120px;
44
93
  grid-template-areas:
@@ -55,8 +104,6 @@ Layout.styles = css `
55
104
  ". . .";
56
105
  min-height: 600px;
57
106
  background-color: rgba(165, 165, 165, 0.03);
58
- position: relative;
59
- width: 100%;
60
107
  max-width: 640px;
61
108
  margin: 0 auto;
62
109
  }
@@ -90,6 +137,29 @@ Layout.styles = css `
90
137
  justify-self: end;
91
138
  }
92
139
 
140
+ /* App mode - Base */
141
+ :host([mode="app"]) {
142
+ grid-template-columns: 1fr;
143
+ grid-template-rows: calc(var(--1) * var(--sf)) 20px 1fr auto;
144
+ grid-template-areas:
145
+ "banner"
146
+ "main"
147
+ "footer";
148
+ min-height: 100vh;
149
+ background-color: transparent;
150
+ width: 100%;
151
+ margin: 0 auto;
152
+ gap: 0;
153
+ }
154
+
155
+ /* App mode - with scaling factor */
156
+ :host([mode="app"]) {
157
+ max-width: calc(400px * var(--sf, 1));
158
+ padding: calc(60px * var(--sf, 1)) calc(28px * var(--sf, 1))
159
+ calc(9.751px * var(--sf, 1));
160
+ gap: calc(28px * var(--sf, 1));
161
+ }
162
+
93
163
  .debug-overlay {
94
164
  position: absolute;
95
165
  margin-left: -1px;
@@ -102,6 +172,9 @@ Layout.styles = css `
102
172
  display: grid;
103
173
  font-size: 18px;
104
174
  font-weight: bold;
175
+ }
176
+
177
+ :host([mode="portfolio"]) .debug-overlay {
105
178
  grid-template-columns: 120px 480px;
106
179
  grid-template-rows: 120px 120px 60px 180px 60px 120px 60px 20px 120px 120px;
107
180
  grid-template-areas:
@@ -137,7 +210,7 @@ Layout.styles = css `
137
210
  justify-content: center;
138
211
  font-size: 10px;
139
212
  font-weight: var(--type-weight-default);
140
- font-family: var(--typeface);
213
+ font-family: var(--typeface-regular);
141
214
  color: var(--black);
142
215
  border: 1px solid red;
143
216
  opacity: 1;
@@ -173,12 +246,48 @@ Layout.styles = css `
173
246
 
174
247
  .debug-footer {
175
248
  grid-area: footer;
176
- border-color: #ffa500;
249
+ border-color: rgb(24, 147, 73);
250
+ background-color: rgba(127, 123, 11, 0.1);
177
251
  }
178
252
 
179
253
  .debug-content {
180
254
  grid-area: content;
181
255
  border-color: rgba(71, 231, 71, 0.63);
182
256
  }
257
+
258
+ :host([mode="app"]) .debug-overlay {
259
+ grid-template-columns: 1fr;
260
+ grid-template-rows:
261
+ calc(var(--1) * var(--sf))
262
+ calc(var(--2) * var(--sf))
263
+ calc(var(--4) * var(--sf))
264
+ calc(var(--1) * var(--sf));
265
+ grid-template-areas:
266
+ "banner"
267
+ "header"
268
+ "main"
269
+ "footer";
270
+ }
271
+
272
+ .debug-banner {
273
+ grid-area: banner;
274
+ border-color: #daed09;
275
+ }
276
+
277
+ .debug-header {
278
+ grid-area: header;
279
+ border-color: #0000ff;
280
+ background-color: rgba(127, 123, 11, 0.5);
281
+ }
282
+
283
+ .debug-main {
284
+ grid-area: main;
285
+ border-color: #0000ff;
286
+ }
287
+
288
+ .debug-footer-app {
289
+ grid-area: footer;
290
+ border-color: #ffa500;
291
+ }
183
292
  `;
184
293
  customElements.define("ds-layout", Layout);