vipassana-design-standards 0.0.19 → 0.0.21

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 (327) hide show
  1. package/dist/css/bootstrap5-theme.css +2 -2
  2. package/dist/css/bootstrap5-theme.min.css +1 -1
  3. package/dist/css/bootstrap5-theme.rtl.css +2 -2
  4. package/dist/css/bootstrap5-theme.rtl.min.css +1 -1
  5. package/dist/js/helper.js +165 -0
  6. package/package.json +10 -5
  7. package/.htaccess +0 -3
  8. package/HOW_TO_PUBLISH.md +0 -29
  9. package/TODO +0 -14
  10. package/demo/.gitattributes +0 -5
  11. package/demo/.ruby-version +0 -1
  12. package/demo/Gemfile +0 -29
  13. package/demo/Gemfile.lock +0 -182
  14. package/demo/Rakefile +0 -6
  15. package/demo/app/assets/config/manifest.js +0 -2
  16. package/demo/app/assets/stylesheets/application.css +0 -15
  17. package/demo/app/controllers/application_controller.rb +0 -3
  18. package/demo/app/controllers/demo_controller.rb +0 -4
  19. package/demo/app/views/demo/index.html.erb +0 -11
  20. package/demo/app/views/layouts/application.html.erb +0 -74
  21. package/demo/bin/bundle +0 -114
  22. package/demo/bin/rails +0 -4
  23. package/demo/bin/rake +0 -4
  24. package/demo/bin/setup +0 -25
  25. package/demo/config/application.rb +0 -37
  26. package/demo/config/boot.rb +0 -3
  27. package/demo/config/credentials.yml.enc +0 -1
  28. package/demo/config/environment.rb +0 -5
  29. package/demo/config/environments/development.rb +0 -56
  30. package/demo/config/environments/production.rb +0 -72
  31. package/demo/config/environments/test.rb +0 -50
  32. package/demo/config/initializers/assets.rb +0 -12
  33. package/demo/config/initializers/content_security_policy.rb +0 -25
  34. package/demo/config/initializers/filter_parameter_logging.rb +0 -8
  35. package/demo/config/initializers/inflections.rb +0 -16
  36. package/demo/config/initializers/permissions_policy.rb +0 -11
  37. package/demo/config/locales/en.yml +0 -33
  38. package/demo/config/puma.rb +0 -43
  39. package/demo/config/routes.rb +0 -5
  40. package/demo/config.ru +0 -6
  41. package/demo/public/404.html +0 -67
  42. package/demo/public/422.html +0 -67
  43. package/demo/public/500.html +0 -66
  44. package/demo/public/apple-touch-icon-precomposed.png +0 -0
  45. package/demo/public/apple-touch-icon.png +0 -0
  46. package/demo/public/favicon.ico +0 -0
  47. package/demo/public/robots.txt +0 -1
  48. package/demo.html +0 -55
  49. package/dist/0.0.16/css/bootstrap5-theme.css +0 -12623
  50. package/dist/0.0.16/css/bootstrap5-theme.css.map +0 -1
  51. package/dist/0.0.16/css/bootstrap5-theme.min.css +0 -6
  52. package/dist/0.0.16/css/bootstrap5-theme.rtl.css +0 -12586
  53. package/dist/0.0.16/css/bootstrap5-theme.rtl.min.css +0 -6
  54. package/dist/0.0.16/css/fonts-gu.css +0 -65
  55. package/dist/0.0.16/css/fonts-gu.min.css +0 -1
  56. package/dist/0.0.16/css/fonts-ja.css +0 -2399
  57. package/dist/0.0.16/css/fonts-ja.min.css +0 -1
  58. package/dist/0.0.16/css/fonts-km.css +0 -2399
  59. package/dist/0.0.16/css/fonts-km.min.css +0 -1
  60. package/dist/0.0.16/css/fonts.css +0 -472
  61. package/dist/0.0.16/css/fonts.css.map +0 -1
  62. package/dist/0.0.16/css/fonts.min.css +0 -1
  63. package/dist/0.0.16/css/logo.css +0 -135
  64. package/dist/0.0.16/css/logo.css.map +0 -1
  65. package/dist/0.0.16/css/logo.min.css +0 -1
  66. package/dist/0.0.16/js/bootstrap.bundle.js +0 -7075
  67. package/dist/0.0.16/js/bootstrap.bundle.js.map +0 -1
  68. package/dist/0.0.16/js/bootstrap.bundle.min.js +0 -7
  69. package/dist/0.0.16/js/bootstrap.bundle.min.js.map +0 -1
  70. package/dist/0.0.17/css/bootstrap5-theme.css +0 -12629
  71. package/dist/0.0.17/css/bootstrap5-theme.css.map +0 -1
  72. package/dist/0.0.17/css/bootstrap5-theme.min.css +0 -6
  73. package/dist/0.0.17/css/bootstrap5-theme.rtl.css +0 -12592
  74. package/dist/0.0.17/css/bootstrap5-theme.rtl.min.css +0 -6
  75. package/dist/0.0.17/css/fonts-gu.css +0 -65
  76. package/dist/0.0.17/css/fonts-gu.min.css +0 -1
  77. package/dist/0.0.17/css/fonts-ja.css +0 -2399
  78. package/dist/0.0.17/css/fonts-ja.min.css +0 -1
  79. package/dist/0.0.17/css/fonts-km.css +0 -2399
  80. package/dist/0.0.17/css/fonts-km.min.css +0 -1
  81. package/dist/0.0.17/css/fonts.css +0 -472
  82. package/dist/0.0.17/css/fonts.css.map +0 -1
  83. package/dist/0.0.17/css/fonts.min.css +0 -1
  84. package/dist/0.0.17/css/logo.css +0 -135
  85. package/dist/0.0.17/css/logo.css.map +0 -1
  86. package/dist/0.0.17/css/logo.min.css +0 -1
  87. package/dist/0.0.17/js/bootstrap5-theme.min.js +0 -37
  88. package/dist/0.0.17/js/bootstrap5-theme.min.js.map +0 -1
  89. package/dist/0.0.18/css/bootstrap5-theme.css +0 -12632
  90. package/dist/0.0.18/css/bootstrap5-theme.css.map +0 -1
  91. package/dist/0.0.18/css/bootstrap5-theme.min.css +0 -6
  92. package/dist/0.0.18/css/bootstrap5-theme.rtl.css +0 -12595
  93. package/dist/0.0.18/css/bootstrap5-theme.rtl.min.css +0 -6
  94. package/dist/0.0.18/css/fonts-gu.css +0 -65
  95. package/dist/0.0.18/css/fonts-gu.min.css +0 -1
  96. package/dist/0.0.18/css/fonts-ja.css +0 -2399
  97. package/dist/0.0.18/css/fonts-ja.min.css +0 -1
  98. package/dist/0.0.18/css/fonts-km.css +0 -2399
  99. package/dist/0.0.18/css/fonts-km.min.css +0 -1
  100. package/dist/0.0.18/css/fonts.css +0 -472
  101. package/dist/0.0.18/css/fonts.css.map +0 -1
  102. package/dist/0.0.18/css/fonts.min.css +0 -1
  103. package/dist/0.0.18/css/logo.css +0 -135
  104. package/dist/0.0.18/css/logo.css.map +0 -1
  105. package/dist/0.0.18/css/logo.min.css +0 -1
  106. package/dist/0.0.18/js/bootstrap5-theme.min.js +0 -37
  107. package/dist/0.0.18/js/bootstrap5-theme.min.js.map +0 -1
  108. package/dist/0.0.19/css/bootstrap5-theme.css +0 -12637
  109. package/dist/0.0.19/css/bootstrap5-theme.css.map +0 -1
  110. package/dist/0.0.19/css/bootstrap5-theme.min.css +0 -6
  111. package/dist/0.0.19/css/bootstrap5-theme.rtl.css +0 -12600
  112. package/dist/0.0.19/css/bootstrap5-theme.rtl.min.css +0 -6
  113. package/dist/0.0.19/css/fonts-gu.css +0 -65
  114. package/dist/0.0.19/css/fonts-gu.min.css +0 -1
  115. package/dist/0.0.19/css/fonts-ja.css +0 -2399
  116. package/dist/0.0.19/css/fonts-ja.min.css +0 -1
  117. package/dist/0.0.19/css/fonts-km.css +0 -2399
  118. package/dist/0.0.19/css/fonts-km.min.css +0 -1
  119. package/dist/0.0.19/css/fonts.css +0 -472
  120. package/dist/0.0.19/css/fonts.css.map +0 -1
  121. package/dist/0.0.19/css/fonts.min.css +0 -1
  122. package/dist/0.0.19/css/logo.css +0 -135
  123. package/dist/0.0.19/css/logo.css.map +0 -1
  124. package/dist/0.0.19/css/logo.min.css +0 -1
  125. package/dist/0.0.19/js/bootstrap5-theme.min.js +0 -37
  126. package/dist/0.0.19/js/bootstrap5-theme.min.js.map +0 -1
  127. package/dist/design-standards-v0.3.pdf +0 -0
  128. package/dist/dhamma-wheel.svg +0 -1
  129. package/dist/favicon.png +0 -0
  130. package/dist/favicon.svg +0 -1490
  131. package/dist/fonts/FootlightMTProBold.woff +0 -0
  132. package/dist/fonts/FootlightMTProBoldItalic.woff +0 -0
  133. package/dist/fonts/FootlightMTProExtraBold.woff +0 -0
  134. package/dist/fonts/FootlightMTProExtraBoldIt.woff +0 -0
  135. package/dist/fonts/FootlightMTProItalic.woff +0 -0
  136. package/dist/fonts/FootlightMTProLight.base64.js +0 -1
  137. package/dist/fonts/FootlightMTProLight.woff +0 -0
  138. package/dist/fonts/FootlightMTProLightItalic.woff +0 -0
  139. package/dist/fonts/FootlightMTProRegular.woff +0 -0
  140. package/dist/fonts/Lato-Black.woff +0 -0
  141. package/dist/fonts/Lato-BlackItalic.woff +0 -0
  142. package/dist/fonts/Lato-Bold.woff +0 -0
  143. package/dist/fonts/Lato-BoldItalic.woff +0 -0
  144. package/dist/fonts/Lato-Italic.woff +0 -0
  145. package/dist/fonts/Lato-Light.base64.js +0 -1
  146. package/dist/fonts/Lato-Light.woff +0 -0
  147. package/dist/fonts/Lato-LightItalic.woff +0 -0
  148. package/dist/fonts/Lato-Regular.woff +0 -0
  149. package/dist/fonts/Lato-Thin.woff +0 -0
  150. package/dist/fonts/Lato-ThinItalic.woff +0 -0
  151. package/dist/fonts/OFL.txt +0 -93
  152. package/dist/fonts.zip +0 -0
  153. package/dist/logos/logo-bg-large.png +0 -0
  154. package/dist/logos/logo-bg-small.png +0 -0
  155. package/dist/logos/logo-bg.png +0 -0
  156. package/dist/logos/logo-cs-large.png +0 -0
  157. package/dist/logos/logo-cs-small.png +0 -0
  158. package/dist/logos/logo-cs.png +0 -0
  159. package/dist/logos/logo-de-large.png +0 -0
  160. package/dist/logos/logo-de-small.png +0 -0
  161. package/dist/logos/logo-de.png +0 -0
  162. package/dist/logos/logo-el-large.png +0 -0
  163. package/dist/logos/logo-el-small.png +0 -0
  164. package/dist/logos/logo-el.png +0 -0
  165. package/dist/logos/logo-en-large.png +0 -0
  166. package/dist/logos/logo-en-small.png +0 -0
  167. package/dist/logos/logo-en.png +0 -0
  168. package/dist/logos/logo-es-large.png +0 -0
  169. package/dist/logos/logo-es-small.png +0 -0
  170. package/dist/logos/logo-es.png +0 -0
  171. package/dist/logos/logo-fa-large.png +0 -0
  172. package/dist/logos/logo-fa-small.png +0 -0
  173. package/dist/logos/logo-fa.png +0 -0
  174. package/dist/logos/logo-fi-large.png +0 -0
  175. package/dist/logos/logo-fi-small.png +0 -0
  176. package/dist/logos/logo-fi.png +0 -0
  177. package/dist/logos/logo-fr-large.png +0 -0
  178. package/dist/logos/logo-fr-small.png +0 -0
  179. package/dist/logos/logo-fr.png +0 -0
  180. package/dist/logos/logo-gu-large.png +0 -0
  181. package/dist/logos/logo-gu-small.png +0 -0
  182. package/dist/logos/logo-gu.png +0 -0
  183. package/dist/logos/logo-he-large.png +0 -0
  184. package/dist/logos/logo-he-small.png +0 -0
  185. package/dist/logos/logo-he.png +0 -0
  186. package/dist/logos/logo-hi-large.png +0 -0
  187. package/dist/logos/logo-hi-small.png +0 -0
  188. package/dist/logos/logo-hi.png +0 -0
  189. package/dist/logos/logo-hu-large.png +0 -0
  190. package/dist/logos/logo-hu-small.png +0 -0
  191. package/dist/logos/logo-hu.png +0 -0
  192. package/dist/logos/logo-id-large.png +0 -0
  193. package/dist/logos/logo-id-small.png +0 -0
  194. package/dist/logos/logo-id.png +0 -0
  195. package/dist/logos/logo-it-large.png +0 -0
  196. package/dist/logos/logo-it-small.png +0 -0
  197. package/dist/logos/logo-it.png +0 -0
  198. package/dist/logos/logo-ja-large.png +0 -0
  199. package/dist/logos/logo-ja-small.png +0 -0
  200. package/dist/logos/logo-ja.png +0 -0
  201. package/dist/logos/logo-km-large.png +0 -0
  202. package/dist/logos/logo-km-small.png +0 -0
  203. package/dist/logos/logo-km.png +0 -0
  204. package/dist/logos/logo-ko-large.png +0 -0
  205. package/dist/logos/logo-ko-small.png +0 -0
  206. package/dist/logos/logo-ko.png +0 -0
  207. package/dist/logos/logo-lt-large.png +0 -0
  208. package/dist/logos/logo-lt-small.png +0 -0
  209. package/dist/logos/logo-lt.png +0 -0
  210. package/dist/logos/logo-lv-large.png +0 -0
  211. package/dist/logos/logo-lv-small.png +0 -0
  212. package/dist/logos/logo-lv.png +0 -0
  213. package/dist/logos/logo-mk-large.png +0 -0
  214. package/dist/logos/logo-mk-small.png +0 -0
  215. package/dist/logos/logo-mk.png +0 -0
  216. package/dist/logos/logo-mr-large.png +0 -0
  217. package/dist/logos/logo-mr-small.png +0 -0
  218. package/dist/logos/logo-mr.png +0 -0
  219. package/dist/logos/logo-nl-large.png +0 -0
  220. package/dist/logos/logo-nl-small.png +0 -0
  221. package/dist/logos/logo-nl.png +0 -0
  222. package/dist/logos/logo-or-large.png +0 -0
  223. package/dist/logos/logo-or-small.png +0 -0
  224. package/dist/logos/logo-or.png +0 -0
  225. package/dist/logos/logo-pl-large.png +0 -0
  226. package/dist/logos/logo-pl-small.png +0 -0
  227. package/dist/logos/logo-pl.png +0 -0
  228. package/dist/logos/logo-pt-large.png +0 -0
  229. package/dist/logos/logo-pt-small.png +0 -0
  230. package/dist/logos/logo-pt.png +0 -0
  231. package/dist/logos/logo-ro-large.png +0 -0
  232. package/dist/logos/logo-ro-small.png +0 -0
  233. package/dist/logos/logo-ro.png +0 -0
  234. package/dist/logos/logo-ru-large.png +0 -0
  235. package/dist/logos/logo-ru-small.png +0 -0
  236. package/dist/logos/logo-ru.png +0 -0
  237. package/dist/logos/logo-si-large.png +0 -0
  238. package/dist/logos/logo-si-small.png +0 -0
  239. package/dist/logos/logo-si.png +0 -0
  240. package/dist/logos/logo-sl-large.png +0 -0
  241. package/dist/logos/logo-sl-small.png +0 -0
  242. package/dist/logos/logo-sl.png +0 -0
  243. package/dist/logos/logo-sr-large.png +0 -0
  244. package/dist/logos/logo-sr-small.png +0 -0
  245. package/dist/logos/logo-sr.png +0 -0
  246. package/dist/logos/logo-sv-large.png +0 -0
  247. package/dist/logos/logo-sv-small.png +0 -0
  248. package/dist/logos/logo-sv.png +0 -0
  249. package/dist/logos/logo-ta-large.png +0 -0
  250. package/dist/logos/logo-ta-small.png +0 -0
  251. package/dist/logos/logo-ta.png +0 -0
  252. package/dist/logos/logo-te-large.png +0 -0
  253. package/dist/logos/logo-te-small.png +0 -0
  254. package/dist/logos/logo-te.png +0 -0
  255. package/dist/logos/logo-th-large.png +0 -0
  256. package/dist/logos/logo-th-small.png +0 -0
  257. package/dist/logos/logo-th.png +0 -0
  258. package/dist/logos/logo-tr-large.png +0 -0
  259. package/dist/logos/logo-tr-small.png +0 -0
  260. package/dist/logos/logo-tr.png +0 -0
  261. package/dist/logos/logo-vi-large.png +0 -0
  262. package/dist/logos/logo-vi-small.png +0 -0
  263. package/dist/logos/logo-vi.png +0 -0
  264. package/dist/logos/logo-zh-HANS-large.png +0 -0
  265. package/dist/logos/logo-zh-HANS-small.png +0 -0
  266. package/dist/logos/logo-zh-HANS.png +0 -0
  267. package/dist/logos/logo-zh-HANT-HK-large.png +0 -0
  268. package/dist/logos/logo-zh-HANT-HK-small.png +0 -0
  269. package/dist/logos/logo-zh-HANT-HK.png +0 -0
  270. package/dist/logos/logo-zh-HANT-large.png +0 -0
  271. package/dist/logos/logo-zh-HANT-small.png +0 -0
  272. package/dist/logos/logo-zh-HANT.png +0 -0
  273. package/dist/logos-inline-svg.json +0 -1
  274. package/dist/logos.zip +0 -0
  275. package/index.html +0 -231
  276. package/lib/vipassana/design_standards_helper.rb +0 -111
  277. package/lib/vipassana/logos_inline_svg.rb +0 -5
  278. package/lib/vipassana/translations.rb +0 -312
  279. package/lib/vipassana/translations_generator.rb +0 -260
  280. package/lib/vipassana-design-standards.rb +0 -3
  281. package/src/images/wheels/favicon.png +0 -0
  282. package/src/images/wheels/favicon.svg +0 -1483
  283. package/src/images/wheels/old versions/2.5D-wheel.png +0 -0
  284. package/src/images/wheels/old versions/2.5D-wheel.svg +0 -109
  285. package/src/images/wheels/old versions/2D-wheel.svg +0 -472
  286. package/src/images/wheels/old versions/3D-wheel.svg +0 -1
  287. package/src/images/wheels/old versions/dhamma wheel 3D.png +0 -0
  288. package/src/images/wheels/old versions/wheel-3d.ai +5 -3727
  289. package/src/images/wheels/old versions/wheel-3d.png +0 -0
  290. package/src/images/wheels/tests/2.5D-wheel-1.svg +0 -414
  291. package/src/images/wheels/tests/2.5D-wheel-2.svg +0 -409
  292. package/src/images/wheels/tests/2.5D-wheel-3.svg +0 -449
  293. package/src/images/wheels/tests/2.5D-wheel-4.svg +0 -459
  294. package/src/images/wheels/tests/2.5D-wheel-5.svg +0 -452
  295. package/src/images/wheels/tests/2.5D-wheel-6.svg +0 -457
  296. package/src/images/wheels/tests/2.5D-wheel-7.svg +0 -459
  297. package/src/images/wheels/tests/2.5D-wheel-8.svg +0 -459
  298. package/src/images/wheels/tests/2.5D-wheel-sebastian.svg +0 -3
  299. package/src/images/wheels/tests/3D-wheel-2.svg +0 -1352
  300. package/src/images/wheels/tests/3D-wheel-sebastian.svg +0 -1
  301. package/src/images/wheels/tests/3D-wheel.svg +0 -1
  302. package/src/images/wheels/wheel-2023-duotone.png +0 -0
  303. package/src/images/wheels/wheel-2023-duotone.svg +0 -1
  304. package/src/images/wheels/wheel-2023-duotone.svg.js +0 -1
  305. package/src/images/wheels/wheel-2023-working-document-with-all-layers.svg +0 -1608
  306. package/src/images/wheels/wheel-2023.png +0 -0
  307. package/src/images/wheels/wheel-2023.svg +0 -1
  308. package/src/images/wheels/wheel-2023.svg.js +0 -1
  309. package/src/javascripts/auto-resize.js +0 -30
  310. package/src/javascripts/index.js +0 -397
  311. package/src/stylesheets/bootstrap5-theme.scss +0 -24
  312. package/src/stylesheets/custom-bootstrap-utilities.scss +0 -143
  313. package/src/stylesheets/custom-bootstrap-variables.scss +0 -121
  314. package/src/stylesheets/custom-bootstrap.scss +0 -159
  315. package/src/stylesheets/fonts.scss +0 -331
  316. package/src/stylesheets/index.css +0 -179
  317. package/src/stylesheets/layout/vds-header.scss +0 -42
  318. package/src/stylesheets/layout/vds-layout.scss +0 -90
  319. package/src/stylesheets/layout/vds-mixins.scss +0 -5
  320. package/src/stylesheets/layout/vds-sidenav.scss +0 -43
  321. package/src/stylesheets/logo.scss +0 -121
  322. package/src/stylesheets/mixins.scss +0 -11
  323. package/src/stylesheets/specific-fonts/fonts-gu.css +0 -65
  324. package/src/stylesheets/specific-fonts/fonts-ja.css +0 -2399
  325. package/src/stylesheets/specific-fonts/fonts-km.css +0 -2399
  326. package/vipassana-design-standards.gemspec +0 -15
  327. /package/{src/javascripts → dist/js}/i18n.js +0 -0
@@ -0,0 +1,165 @@
1
+ import i18n from './i18n.js'
2
+
3
+ function isRtl(locale) {
4
+ return ['ar', 'fa', 'he'].includes(locale)
5
+ }
6
+
7
+ function vdsAssetUrl(path, localhost = false) {
8
+ // For localhost dev, just run vscode liveserver
9
+ if (localhost) return `http://localhost:5500/dist/${path}`
10
+
11
+ return `https://design-standards.dhamma.org/dist/0.0.21/${path}`
12
+ }
13
+
14
+ function stylesheetLinkTag(url) {
15
+ return `<link rel="stylesheet" type="text/css" href="${url}">`
16
+ }
17
+
18
+ function StylesheetLinkTag({url}) {
19
+ return <link rel="stylesheet" type="text/css" href={url} />
20
+ }
21
+
22
+ function javascriptIncludeTag(url) {
23
+ return `<script type="text/javascript" src="${url}"></script>`
24
+ }
25
+
26
+ export function vdsFaviconTag() {
27
+ return `<link rel="shortcut icon" type="image/x-icon" href="https://design-standards.dhamma.org/dist/favicon.png">`
28
+ }
29
+
30
+ export function VdsFaviconTag() {
31
+ return <link rel="shortcut icon" type="image/x-icon" href="https://design-standards.dhamma.org/dist/favicon.png" />
32
+ }
33
+
34
+ export function vdsBootstrapThemeCssTag(locale, localhost = false) {
35
+ let tags = [
36
+ stylesheetLinkTag(vdsAssetUrl(`css/bootstrap5-theme${isRtl(locale) ? '.rtl' : ''}.min.css`, localhost))
37
+ ]
38
+ // Add specific fonts for languages not compatible with Footlight and Lato
39
+ if (['gu', 'ja', 'km'].includes(locale))
40
+ tags.push(stylesheetLinkTag(vdsAssetUrl(`css/fonts-${locale}.min.css`)))
41
+
42
+ return tags.join('')
43
+ }
44
+
45
+ export function VdsBootstrapThemeCssTag({ locale, localhost = false }) {
46
+ const url = vdsAssetUrl(`css/bootstrap5-theme${isRtl(locale) ? '.rtl' : ''}.min.css`, localhost)
47
+ return <>
48
+ <StylesheetLinkTag url={url}/>
49
+ {['gu', 'ja', 'km'].includes(locale) && <StylesheetLinkTag url={vdsAssetUrl(`css/fonts-${locale}.min.css`)}/>}
50
+ </>
51
+ }
52
+
53
+ export function vdsBootstrapThemeJsTag(locale, localhost = false) {
54
+ return javascriptIncludeTag(vdsAssetUrl("js/bootstrap5-theme.min.js", localhost))
55
+ }
56
+
57
+ export function VdsBootstrapThemeJsTag({ localhost = false }) {
58
+ const url = vdsAssetUrl("js/bootstrap5-theme.min.js", localhost)
59
+ return <script type="text/javascript" src={url}></script>
60
+ }
61
+
62
+ export function vdsLogo({locale, disposition = "default", size = '18', tagline = true, dark = false}) {
63
+ let trans = i18n[locale] || i18n.en
64
+
65
+ if (disposition == "mobile") {
66
+ disposition = "left-two-lines"
67
+ tagline = false
68
+ }
69
+
70
+ return `
71
+ <div class="vipassana-logo"
72
+ data-disposition="${disposition}"
73
+ data-tagline="${tagline}"
74
+ data-dark-mode="${dark}"
75
+ data-reverse="${trans.reverse}"
76
+ style="font-size: ${size}px">
77
+ <img class="logo-wheel" src="https://design-standards.dhamma.org/dist/dhamma-wheel.svg" />
78
+ <div class="logo-text">
79
+ <h1 class="logo-title">
80
+ <span data-start-with="${trans.vipassana_meditation.charAt(0).toLowerCase()}">
81
+ ${trans.vipassana_meditation}
82
+ </span>
83
+ <span class="logo-space">&nbsp;</span>
84
+ <span>${trans.as_taught}</span>
85
+ </h1>
86
+ <div class="logo-subtitle">${trans.in_the_tradition}</div>
87
+ </div>
88
+ </div>
89
+ `
90
+ }
91
+
92
+ export function VdsLogo({locale, disposition = "default", size = '18', tagline = true, dark = false}) {
93
+ let trans = i18n[locale] || i18n.en
94
+
95
+ if (disposition == "mobile") {
96
+ disposition = "left-two-lines"
97
+ tagline = false
98
+ }
99
+
100
+ return <div className="vipassana-logo"
101
+ data-disposition={disposition}
102
+ data-tagline={tagline}
103
+ data-dark-mode={dark}
104
+ data-reverse={trans.reverse}
105
+ style={{fontSize: `${size}px`}}>
106
+ <img className="logo-wheel" src="https://design-standards.dhamma.org/dist/dhamma-wheel.svg" />
107
+ <div className="logo-text">
108
+ <h1 className="logo-title">
109
+ <span data-start-with={trans.vipassana_meditation.charAt(0).toLowerCase()}>
110
+ {trans.vipassana_meditation}
111
+ </span>
112
+ <span className="logo-space">&nbsp;</span>
113
+ <span>{trans.as_taught}</span>
114
+ </h1>
115
+ <div className="logo-subtitle">{trans.in_the_tradition}</div>
116
+ </div>
117
+ </div>
118
+ }
119
+
120
+ // Some icons from bootstrap icons, so all websites use the same
121
+ export function vdsIconLocale() {
122
+ return `
123
+ <svg xmlns="http://www.w3.org/2000/svg" width="1.2em" height="1.2em" fill="currentColor" viewBox="0 0 16 16">
124
+ <path d="M4.545 6.714 4.11 8H3l1.862-5h1.284L8 8H6.833l-.435-1.286H4.545zm1.634-.736L5.5 3.956h-.049l-.679 2.022H6.18z"/>
125
+ <path d="M0 2a2 2 0 0 1 2-2h7a2 2 0 0 1 2 2v3h3a2 2 0 0 1 2 2v7a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2v-3H2a2 2 0 0 1-2-2V2zm2-1a1 1 0 0 0-1 1v7a1 1 0 0 0 1 1h7a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H2zm7.138 9.995c.193.301.402.583.63.846-.748.575-1.673 1.001-2.768 1.292.178.217.451.635.555.867 1.125-.359 2.08-.844 2.886-1.494.777.665 1.739 1.165 2.93 1.472.133-.254.414-.673.629-.89-1.125-.253-2.057-.694-2.82-1.284.681-.747 1.222-1.651 1.621-2.757H14V8h-3v1.047h.765c-.318.844-.74 1.546-1.272 2.13a6.066 6.066 0 0 1-.415-.492 1.988 1.988 0 0 1-.94.31z"/>
126
+ </svg>
127
+ `
128
+ }
129
+
130
+ export function VdsIconLocale({size = 1.2}) {
131
+ return <svg xmlns="http://www.w3.org/2000/svg" width={`${size}em`} height={`${size}em`} fill="currentColor" viewBox="0 0 16 16">
132
+ <path d="M4.545 6.714 4.11 8H3l1.862-5h1.284L8 8H6.833l-.435-1.286H4.545zm1.634-.736L5.5 3.956h-.049l-.679 2.022H6.18z"/>
133
+ <path d="M0 2a2 2 0 0 1 2-2h7a2 2 0 0 1 2 2v3h3a2 2 0 0 1 2 2v7a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2v-3H2a2 2 0 0 1-2-2V2zm2-1a1 1 0 0 0-1 1v7a1 1 0 0 0 1 1h7a1 1 0 0 0 1-1V2a1 1 0 0 0-1-1H2zm7.138 9.995c.193.301.402.583.63.846-.748.575-1.673 1.001-2.768 1.292.178.217.451.635.555.867 1.125-.359 2.08-.844 2.886-1.494.777.665 1.739 1.165 2.93 1.472.133-.254.414-.673.629-.89-1.125-.253-2.057-.694-2.82-1.284.681-.747 1.222-1.651 1.621-2.757H14V8h-3v1.047h.765c-.318.844-.74 1.546-1.272 2.13a6.066 6.066 0 0 1-.415-.492 1.988 1.988 0 0 1-.94.31z"/>
134
+ </svg>
135
+ }
136
+
137
+ export function vdsIconAccount() {
138
+ return `
139
+ <svg xmlns="http://www.w3.org/2000/svg" width="2.2em" height="2.2em" fill="currentColor" viewBox="0 0 16 16">
140
+ <path d="M11 6a3 3 0 1 1-6 0 3 3 0 0 1 6 0z"/>
141
+ <path fill-rule="evenodd" d="M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8zm8-7a7 7 0 0 0-5.468 11.37C3.242 11.226 4.805 10 8 10s4.757 1.225 5.468 2.37A7 7 0 0 0 8 1z"/>
142
+ </svg>
143
+ `
144
+ }
145
+
146
+ export function VdsIconAccount({size = 2.2}) {
147
+ return <svg xmlns="http://www.w3.org/2000/svg" width={`${size}em`} height={`${size}em`} fill="currentColor" viewBox="0 0 16 16">
148
+ <path d="M11 6a3 3 0 1 1-6 0 3 3 0 0 1 6 0z"/>
149
+ <path fill-rule="evenodd" d="M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8zm8-7a7 7 0 0 0-5.468 11.37C3.242 11.226 4.805 10 8 10s4.757 1.225 5.468 2.37A7 7 0 0 0 8 1z"/>
150
+ </svg>
151
+ }
152
+
153
+ export function vdsIconMenu() {
154
+ return `
155
+ <svg xmlns="http://www.w3.org/2000/svg" width="1.8em" height="1.8em" fill="currentColor" viewBox="0 0 16 16">
156
+ <path fill-rule="evenodd" d="M2.5 12a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5z"/>
157
+ </svg>
158
+ `
159
+ }
160
+
161
+ export function VdsIconMenu({size = 1.8}) {
162
+ return <svg xmlns="http://www.w3.org/2000/svg" width={`${size}em`} height={`${size}em`} fill="currentColor" viewBox="0 0 16 16">
163
+ <path fill-rule="evenodd" d="M2.5 12a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5z"/>
164
+ </svg>
165
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vipassana-design-standards",
3
- "version": "0.0.19",
3
+ "version": "0.0.21",
4
4
  "description": "Vipassana design standards materials",
5
5
  "homepage": "https://design-standards.dhamma.org",
6
6
  "author": "Dhamma Workers",
@@ -8,15 +8,20 @@
8
8
  "@popperjs/core": "^2.9.1",
9
9
  "bootstrap5": "npm:bootstrap@5"
10
10
  },
11
- "sass": "src/stylesheets/bootstrap5-theme.scss",
12
- "css": "dist/bootstrap5-theme.css",
13
- "scripts" : {
11
+ "js": "dist/js/helper.js",
12
+ "files": [
13
+ "dist/js",
14
+ "dist/css"
15
+ ],
16
+ "scripts": {
14
17
  "build-sass": "sass --load-path=node_modules src/stylesheets/bootstrap5-theme.scss dist/css/bootstrap5-theme.css && sass src/stylesheets/fonts.scss dist/css/fonts.css && sass src/stylesheets/logo.scss dist/css/logo.css",
15
18
  "build-rtl": "rtlcss dist/css/bootstrap5-theme.css dist/css/bootstrap5-theme.rtl.css",
16
19
  "build-fonts": "cp src/stylesheets/specific-fonts/* dist/css/",
17
20
  "build-min": "cleancss --batch --batch-suffix '.min' dist/css/*.css",
18
21
  "build-css": "rm -f dist/css/* && npm run build-fonts && npm run build-sass && npm run build-rtl && npm run build-min",
19
- "build-js": "rm -f dist/js/* && concat -o dist/js/bootstrap5-theme.min.js node_modules/bootstrap5/dist/js/bootstrap.bundle.min.js src/javascripts/auto-resize.js && cp node_modules/bootstrap5/dist/js/bootstrap.bundle.min.js.map dist/js/bootstrap5-theme.min.js.map",
22
+ "build-js": "rm -f dist/js/* && npm run build-js-bootstrap && npm run build-js-helper",
23
+ "build-js-bootstrap": "concat -o dist/js/bootstrap5-theme.min.js node_modules/bootstrap5/dist/js/bootstrap.bundle.min.js src/javascripts/auto-resize.js && cp node_modules/bootstrap5/dist/js/bootstrap.bundle.min.js.map dist/js/bootstrap5-theme.min.js.map",
24
+ "build-js-helper": "cp src/javascripts/helper.js dist/js && cp src/javascripts/i18n.js dist/js && node replace-version.js",
20
25
  "build": "npm run build-css && npm run build-js",
21
26
  "dist": "npm run build && npm run dist-version-folder && npm publish && npm run dist-gem",
22
27
  "dist-gem": "gem build vipassana-design-standards.gemspec && gem push vipassana-design-standards-$npm_package_version.gem && rm vipassana-design-standards-$npm_package_version.gem",
package/.htaccess DELETED
@@ -1,3 +0,0 @@
1
- allow from all
2
-
3
- Header set Access-Control-Allow-Origin *
package/HOW_TO_PUBLISH.md DELETED
@@ -1,29 +0,0 @@
1
- ## Compile CSS
2
-
3
- Install compilers libs
4
- ```
5
- npm install -g sass clean-css-cli rtlcss concat
6
- ```
7
-
8
- Install local dependecies
9
- ```
10
- yarn
11
- ```
12
-
13
- Compile
14
- ```
15
- npm run build
16
- ```
17
-
18
- ## Deploy
19
-
20
- Bump version in both `package.json` and `vipassana-design-standards.gemspec`
21
-
22
- ```
23
- npm run dist
24
- ```
25
-
26
- Global replace `?ver=old_version` by `?ver=new_version` if you made changes to the public website
27
-
28
- Update https://design-standards.dhamma.org by pushing new files via FTP
29
- At least you need to push the new versionned dist folder
package/TODO DELETED
@@ -1,14 +0,0 @@
1
- make repo public, and use jsdeliver
2
- compile also bootstrap js and make it avaiable with CDN
3
- -> ask sysadmin for them opportunity to comment
4
-
5
- in CALM, VIS, DO use VDS css and not scss so it's cached
6
-
7
- fonts: provide Noto font or not? only on demand?
8
- fonts: make font-weight consistent
9
- -> start with easy one, and optimize later if needed
10
-
11
- open sans
12
-
13
- locale picker make it the same everywhere?
14
-
@@ -1,5 +0,0 @@
1
- # See https://git-scm.com/docs/gitattributes for more about git attribute files.
2
-
3
-
4
- # Mark any vendored files as having been vendored.
5
- vendor/* linguist-vendored
@@ -1 +0,0 @@
1
- ruby-2.7.4
package/demo/Gemfile DELETED
@@ -1,29 +0,0 @@
1
- source "https://rubygems.org"
2
- git_source(:github) { |repo| "https://github.com/#{repo}.git" }
3
-
4
- ruby "2.7.4"
5
-
6
- # Bundle edge Rails instead: gem "rails", github: "rails/rails", branch: "main"
7
- gem "rails", "~> 7.0.5"
8
-
9
- # The original asset pipeline for Rails [https://github.com/rails/sprockets-rails]
10
- gem "sprockets-rails"
11
-
12
- # Use the Puma web server [https://github.com/puma/puma]
13
- gem "puma", "~> 5.0"
14
-
15
- # Windows does not include zoneinfo files, so bundle the tzinfo-data gem
16
- gem "tzinfo-data", platforms: %i[ mingw mswin x64_mingw jruby ]
17
-
18
- group :development, :test do
19
- # See https://guides.rubyonrails.org/debugging_rails_applications.html#debugging-with-the-debug-gem
20
- gem "debug", platforms: %i[ mri mingw x64_mingw ]
21
- end
22
-
23
- group :development do
24
- # Speed up commands on slow machines / big apps [https://github.com/rails/spring]
25
- # gem "spring"
26
- end
27
-
28
-
29
- gem "vipassana-design-standards", path: "/home/websites/design-standards"
package/demo/Gemfile.lock DELETED
@@ -1,182 +0,0 @@
1
- PATH
2
- remote: /home/websites/design-standards
3
- specs:
4
- vipassana-design-standards (0.0.16)
5
-
6
- GEM
7
- remote: https://rubygems.org/
8
- specs:
9
- actioncable (7.0.5)
10
- actionpack (= 7.0.5)
11
- activesupport (= 7.0.5)
12
- nio4r (~> 2.0)
13
- websocket-driver (>= 0.6.1)
14
- actionmailbox (7.0.5)
15
- actionpack (= 7.0.5)
16
- activejob (= 7.0.5)
17
- activerecord (= 7.0.5)
18
- activestorage (= 7.0.5)
19
- activesupport (= 7.0.5)
20
- mail (>= 2.7.1)
21
- net-imap
22
- net-pop
23
- net-smtp
24
- actionmailer (7.0.5)
25
- actionpack (= 7.0.5)
26
- actionview (= 7.0.5)
27
- activejob (= 7.0.5)
28
- activesupport (= 7.0.5)
29
- mail (~> 2.5, >= 2.5.4)
30
- net-imap
31
- net-pop
32
- net-smtp
33
- rails-dom-testing (~> 2.0)
34
- actionpack (7.0.5)
35
- actionview (= 7.0.5)
36
- activesupport (= 7.0.5)
37
- rack (~> 2.0, >= 2.2.4)
38
- rack-test (>= 0.6.3)
39
- rails-dom-testing (~> 2.0)
40
- rails-html-sanitizer (~> 1.0, >= 1.2.0)
41
- actiontext (7.0.5)
42
- actionpack (= 7.0.5)
43
- activerecord (= 7.0.5)
44
- activestorage (= 7.0.5)
45
- activesupport (= 7.0.5)
46
- globalid (>= 0.6.0)
47
- nokogiri (>= 1.8.5)
48
- actionview (7.0.5)
49
- activesupport (= 7.0.5)
50
- builder (~> 3.1)
51
- erubi (~> 1.4)
52
- rails-dom-testing (~> 2.0)
53
- rails-html-sanitizer (~> 1.1, >= 1.2.0)
54
- activejob (7.0.5)
55
- activesupport (= 7.0.5)
56
- globalid (>= 0.3.6)
57
- activemodel (7.0.5)
58
- activesupport (= 7.0.5)
59
- activerecord (7.0.5)
60
- activemodel (= 7.0.5)
61
- activesupport (= 7.0.5)
62
- activestorage (7.0.5)
63
- actionpack (= 7.0.5)
64
- activejob (= 7.0.5)
65
- activerecord (= 7.0.5)
66
- activesupport (= 7.0.5)
67
- marcel (~> 1.0)
68
- mini_mime (>= 1.1.0)
69
- activesupport (7.0.5)
70
- concurrent-ruby (~> 1.0, >= 1.0.2)
71
- i18n (>= 1.6, < 2)
72
- minitest (>= 5.1)
73
- tzinfo (~> 2.0)
74
- builder (3.2.4)
75
- concurrent-ruby (1.2.2)
76
- crass (1.0.6)
77
- date (3.3.3)
78
- debug (1.8.0)
79
- irb (>= 1.5.0)
80
- reline (>= 0.3.1)
81
- erubi (1.12.0)
82
- globalid (1.1.0)
83
- activesupport (>= 5.0)
84
- i18n (1.14.1)
85
- concurrent-ruby (~> 1.0)
86
- io-console (0.6.0)
87
- irb (1.7.0)
88
- reline (>= 0.3.0)
89
- loofah (2.21.3)
90
- crass (~> 1.0.2)
91
- nokogiri (>= 1.12.0)
92
- mail (2.8.1)
93
- mini_mime (>= 0.1.1)
94
- net-imap
95
- net-pop
96
- net-smtp
97
- marcel (1.0.2)
98
- method_source (1.0.0)
99
- mini_mime (1.1.2)
100
- mini_portile2 (2.8.2)
101
- minitest (5.18.0)
102
- net-imap (0.3.6)
103
- date
104
- net-protocol
105
- net-pop (0.1.2)
106
- net-protocol
107
- net-protocol (0.2.1)
108
- timeout
109
- net-smtp (0.3.3)
110
- net-protocol
111
- nio4r (2.5.9)
112
- nokogiri (1.15.2)
113
- mini_portile2 (~> 2.8.2)
114
- racc (~> 1.4)
115
- puma (5.6.5)
116
- nio4r (~> 2.0)
117
- racc (1.7.1)
118
- rack (2.2.7)
119
- rack-test (2.1.0)
120
- rack (>= 1.3)
121
- rails (7.0.5)
122
- actioncable (= 7.0.5)
123
- actionmailbox (= 7.0.5)
124
- actionmailer (= 7.0.5)
125
- actionpack (= 7.0.5)
126
- actiontext (= 7.0.5)
127
- actionview (= 7.0.5)
128
- activejob (= 7.0.5)
129
- activemodel (= 7.0.5)
130
- activerecord (= 7.0.5)
131
- activestorage (= 7.0.5)
132
- activesupport (= 7.0.5)
133
- bundler (>= 1.15.0)
134
- railties (= 7.0.5)
135
- rails-dom-testing (2.0.3)
136
- activesupport (>= 4.2.0)
137
- nokogiri (>= 1.6)
138
- rails-html-sanitizer (1.6.0)
139
- loofah (~> 2.21)
140
- nokogiri (~> 1.14)
141
- railties (7.0.5)
142
- actionpack (= 7.0.5)
143
- activesupport (= 7.0.5)
144
- method_source
145
- rake (>= 12.2)
146
- thor (~> 1.0)
147
- zeitwerk (~> 2.5)
148
- rake (13.0.6)
149
- reline (0.3.5)
150
- io-console (~> 0.5)
151
- sprockets (4.2.0)
152
- concurrent-ruby (~> 1.0)
153
- rack (>= 2.2.4, < 4)
154
- sprockets-rails (3.4.2)
155
- actionpack (>= 5.2)
156
- activesupport (>= 5.2)
157
- sprockets (>= 3.0.0)
158
- thor (1.2.2)
159
- timeout (0.3.2)
160
- tzinfo (2.0.6)
161
- concurrent-ruby (~> 1.0)
162
- websocket-driver (0.7.5)
163
- websocket-extensions (>= 0.1.0)
164
- websocket-extensions (0.1.5)
165
- zeitwerk (2.6.8)
166
-
167
- PLATFORMS
168
- ruby
169
-
170
- DEPENDENCIES
171
- debug
172
- puma (~> 5.0)
173
- rails (~> 7.0.5)
174
- sprockets-rails
175
- tzinfo-data
176
- vipassana-design-standards!
177
-
178
- RUBY VERSION
179
- ruby 2.7.4p191
180
-
181
- BUNDLED WITH
182
- 2.1.4
package/demo/Rakefile DELETED
@@ -1,6 +0,0 @@
1
- # Add your own tasks in files placed in lib/tasks ending in .rake,
2
- # for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
3
-
4
- require_relative "config/application"
5
-
6
- Rails.application.load_tasks
@@ -1,2 +0,0 @@
1
- //= link_tree ../images
2
- //= link_directory ../stylesheets .css
@@ -1,15 +0,0 @@
1
- /*
2
- * This is a manifest file that'll be compiled into application.css, which will include all the files
3
- * listed below.
4
- *
5
- * Any CSS (and SCSS, if configured) file within this directory, lib/assets/stylesheets, or any plugin's
6
- * vendor/assets/stylesheets directory can be referenced here using a relative path.
7
- *
8
- * You're free to add application-wide styles to this file and they'll appear at the bottom of the
9
- * compiled file so the styles you add here take precedence over styles defined in any other CSS
10
- * files in this directory. Styles in this file should be added after the last require_* statement.
11
- * It is generally better to create a new file per style scope.
12
- *
13
- *= require_tree .
14
- *= require_self
15
- */
@@ -1,3 +0,0 @@
1
- class ApplicationController < ActionController::Base
2
- helper Vipassana::DesignStandardsHelper
3
- end
@@ -1,4 +0,0 @@
1
- class DemoController < ApplicationController
2
- def index
3
- end
4
- end
@@ -1,11 +0,0 @@
1
- <h1>Demo#index</h1>
2
- <p>Find me in app/views/demo/index.html.erb</p>
3
-
4
- <div class="form-floating mb-3">
5
- <input type="text" class="form-control" id="floatingInput" placeholder="name@example.com">
6
- <label for="floatingInput">Email address</label>
7
- </div>
8
- <div class="form-floating">
9
- <input type="password" class="form-control" id="floatingPassword" placeholder="Password">
10
- <label for="floatingPassword">Password</label>
11
- </div>
@@ -1,74 +0,0 @@
1
- <!DOCTYPE html>
2
- <%- locale = "en" %>
3
-
4
- <html class="vds-html" lang="<%= locale %>" dir="<%= is_rtl?(locale) && 'rtl' %>">
5
- <head>
6
- <title>Demo</title>
7
- <meta name="viewport" content="width=device-width,initial-scale=1">
8
- <%= csrf_meta_tags %>
9
- <%= csp_meta_tag %>
10
-
11
- <%= stylesheet_link_tag "application" %>
12
-
13
- <%= vds_favicon_tag %>
14
- <%= vds_bootstrap_theme_css_tag(locale: locale, localhost: true) %>
15
- <%= vds_bootstrap_theme_js_tag(locale: locale, localhost: true) %>
16
- </head>
17
-
18
- <body class="vds-body">
19
- <div class="vds-header-and-content">
20
- <!-- Header -->
21
- <header class="vds-header">
22
- <div class="vds-container d-flex">
23
- <!-- Logo -->
24
- <a href class="vds-logo-link me-auto">
25
- <%= vds_logo_html(locale: locale, size: 14) %>
26
- </a>
27
-
28
- <div class="d-flex align-items-center">
29
- <!-- Locale Picker -->
30
- <span class="d-flex align-items-center flex-shrink-0">
31
- <%= vds_icon_locale %>
32
- </span>
33
- <select class="form-select vds-locale-picker auto-resize">
34
- <option selected>English</option>
35
- <option>Other Language</option>
36
- </select>
37
-
38
- <!-- Account Dropdown -->
39
- <div class="dropdown account-dropdown">
40
- <button class="btn btn-link pe-0 dropdown-toggle text-secondary" id="header-menu" data-bs-toggle="dropdown"
41
- data-bs-auto-close="outside" aria-expanded="false">
42
- <%= vds_icon_account %>
43
- </button>
44
- <ul class="dropdown-menu dropdown-menu-end dropdown-with-modal-inside" aria-labelledby="header-menu">
45
- <li><a class="dropdown-item" href="#">Link</a></li>
46
- </ul>
47
- </div>
48
- </div>
49
- </div>
50
- </header>
51
-
52
- <!-- Page -->
53
- <div class="vds-page vds-container">
54
- <div class="vds-sidenav">
55
- <ul>
56
- <li><a href="#" class="active">Home Page</a></li>
57
- <li><a href="#">My Settings</a></li>
58
- </ul>
59
- </div>
60
- <div class="vds-page-content">
61
- <!-- Page content -->
62
- <%= yield %>
63
- </div>
64
- </div>
65
- </div>
66
-
67
- <!-- Footer -->
68
- <footer class="vds-footer">
69
- <div class="vds-container">
70
- Footer
71
- </div>
72
- </footer>
73
- </body>
74
- </html>