@aarhus-university/au-designsystem-delphinus 0.48.0 → 1.0.0

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 (306) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/Gruntfile.js +74 -288
  3. package/app.js +41 -0
  4. package/bin/www +90 -0
  5. package/esbuild.mjs +18 -0
  6. package/package.json +25 -51
  7. package/{build → public}/figma-tokens/color-themes.json +57 -57
  8. package/{build → public}/figma-tokens/design-system.json +64 -64
  9. package/public/figma-tokens/style.css +1502 -0
  10. package/public/js/app.js +1 -0
  11. package/public/js/app.js.map +1 -0
  12. package/{build → public}/js/components/helpers.ts +0 -63
  13. package/public/js/demo.js +13 -0
  14. package/public/js/demo.js.map +1 -0
  15. package/{build → public}/js/production/app.ts +2 -11
  16. package/{build → public}/js/production/typo3.ts +2 -16
  17. package/public/projects/bachelor-applications/js/app.js +1 -0
  18. package/public/projects/bachelor-applications/style.css +9789 -0
  19. package/public/projects/brightspace/style.css +9792 -0
  20. package/public/projects/course-catalogue/js/app.js +1 -0
  21. package/public/projects/course-catalogue/style.css +9028 -0
  22. package/public/projects/medarbejdere/js/app.js +1 -0
  23. package/public/projects/medarbejdere/style.css +11853 -0
  24. package/public/projects/mitstudie/js/app.js +1 -0
  25. package/public/projects/mitstudie/style.css +11633 -0
  26. package/public/projects/queue-it/style.css +4848 -0
  27. package/public/projects/typo3/assets/chart-empty.png +0 -0
  28. package/public/projects/typo3/assets/chart-grades.png +0 -0
  29. package/public/projects/typo3/assets/delphinus-mug-back.jpg +0 -0
  30. package/public/projects/typo3/assets/delphinus-mug-front.jpg +0 -0
  31. package/public/projects/typo3/assets/delphinus-mug-stack.jpg +0 -0
  32. package/public/projects/typo3/js/app.js +1 -0
  33. package/public/projects/typo3/style.css +10320 -0
  34. package/public/style.css +11134 -0
  35. package/routes/index.js +236 -0
  36. package/routes/users.js +9 -0
  37. package/source/atoms/colors/_color-functions.scss +5 -2
  38. package/source/atoms/colors/_colors.scss +65 -67
  39. package/source/atoms/colors/atom-colors.scss +10 -7
  40. package/source/atoms/colors.pug +1 -1
  41. package/source/atoms/fonts/_fonts.scss +8 -8
  42. package/source/atoms/fonts/atom-fonts.scss +13 -10
  43. package/source/atoms/fonts.pug +1 -1
  44. package/source/atoms/functions/_power.scss +2 -2
  45. package/source/atoms/misc/_atom-layout.pug +1 -2
  46. package/source/atoms/misc/_atom-template.scss +2 -2
  47. package/source/atoms/misc/atom-iframe.css +8 -0
  48. package/source/atoms/misc/atom-iframe.css.map +1 -0
  49. package/source/atoms/misc/atoms-style.scss +3 -0
  50. package/source/atoms/spacing/atom-spacing.scss +5 -2
  51. package/source/atoms/spacing.pug +1 -1
  52. package/source/figma-tokens/cssvars/figma-tokens.scss +10 -7
  53. package/source/js/production/app.ts +1 -1
  54. package/source/markup/atom-colors.pug +2 -6
  55. package/source/markup/atom-fonts.pug +2 -5
  56. package/source/markup/atom-spacing.pug +2 -5
  57. package/source/markup/code/bem-class-naming.pug +4 -4
  58. package/source/markup/code/color.pug +2 -2
  59. package/source/markup/code/font-size.pug +2 -2
  60. package/source/markup/code/icon-style.pug +1 -1
  61. package/source/markup/code/line-height.pug +1 -1
  62. package/source/markup/code/set-colors.pug +1 -1
  63. package/source/markup/code/set-font.pug +1 -1
  64. package/source/markup/code/set-icon.pug +3 -3
  65. package/source/markup/code/spacing.pug +1 -1
  66. package/source/markup/colors-all.pug +1 -1
  67. package/source/markup/colors.pug +3 -3
  68. package/source/markup/components/autosuggest.pug +1 -1
  69. package/source/markup/components/horizontal-scroll-full-width.pug +1 -1
  70. package/source/markup/components/horizontal-scroll.pug +1 -4
  71. package/source/markup/components/large-bullets.pug +1 -1
  72. package/source/markup/components/modal-view.pug +3 -3
  73. package/source/markup/components/profile-image.pug +2 -2
  74. package/source/markup/components/switch.pug +6 -6
  75. package/source/markup/components/tabbed-content.pug +2 -2
  76. package/source/markup/components/tags.pug +1 -1
  77. package/source/markup/components/toolbar.pug +5 -5
  78. package/source/markup/form-character-count.pug +2 -2
  79. package/source/markup/form-example-change-password.pug +1 -1
  80. package/source/markup/form-invalid.pug +1 -1
  81. package/source/markup/form-locked.pug +2 -2
  82. package/source/markup/form-visually-disabled.pug +1 -1
  83. package/source/markup/form.pug +4 -4
  84. package/source/markup/headings.pug +1 -1
  85. package/source/markup/index.pug +7 -7
  86. package/source/markup/partials/mixins/_nav-items.pug +1 -1
  87. package/source/markup/partials/mixins-demo/_nav-code.pug +0 -1
  88. package/source/markup/partials/page-templates/_layout.pug +3 -21
  89. package/source/markup/spacings.pug +1 -1
  90. package/source/projects/bachelor-applications/impersonation-active.pug +1 -1
  91. package/source/projects/bachelor-applications/impersonation-form.pug +1 -1
  92. package/source/projects/bachelor-applications/index.pug +22 -22
  93. package/source/projects/bachelor-applications/kontoaktivering/index.pug +5 -5
  94. package/source/projects/bachelor-applications/markup/_bachelor-applications-template.pug +2 -2
  95. package/source/projects/bachelor-applications/receipt-accepted-animation-landscape.pug +1 -1
  96. package/source/projects/bachelor-applications/receipt-accepted-animation-portrait.pug +1 -1
  97. package/source/projects/bachelor-applications/receipt-accepted-multiple-links.pug +1 -1
  98. package/source/projects/bachelor-applications/receipt-accepted.pug +1 -1
  99. package/source/projects/bachelor-applications/receipt-rejected.pug +1 -1
  100. package/source/projects/bachelor-applications/style/_student-place-offer.scss +1 -1
  101. package/source/projects/bachelor-applications/style.scss +3 -0
  102. package/source/projects/brightspace/index.pug +4 -4
  103. package/source/projects/brightspace/style.scss +3 -0
  104. package/source/projects/course-catalogue/index.pug +8 -8
  105. package/source/projects/course-catalogue/markup/_course-cards.pug +1 -1
  106. package/source/projects/course-catalogue/markup/_course-catalogue-template.pug +1 -1
  107. package/source/projects/course-catalogue/markup/_course-details.pug +3 -3
  108. package/source/projects/course-catalogue/saved-courses.pug +1 -1
  109. package/source/projects/course-catalogue/style.scss +3 -0
  110. package/source/projects/medarbejdere/index.pug +12 -12
  111. package/source/projects/medarbejdere/markup/_medarbejdere-template.pug +1 -1
  112. package/source/projects/medarbejdere/markup/_pure-editor-forms.pug +3 -3
  113. package/source/projects/medarbejdere/markup/_pure-profile-editor.pug +27 -27
  114. package/source/projects/medarbejdere/pure-profile-editor-cv.pug +1 -1
  115. package/source/projects/medarbejdere/pure-profile-editor-free-form-text.pug +1 -1
  116. package/source/projects/medarbejdere/pure-profile-editor-image-receipt.pug +1 -1
  117. package/source/projects/medarbejdere/pure-profile-editor-image.pug +1 -1
  118. package/source/projects/medarbejdere/pure-profile-editor-links.pug +1 -1
  119. package/source/projects/medarbejdere/pure-profile-editor-subject-areas.pug +1 -1
  120. package/source/projects/medarbejdere/style/_pure-profile-editor-form.scss +1 -1
  121. package/source/projects/medarbejdere/style.scss +3 -0
  122. package/source/projects/mitstudie/applications-credit-transfer-intro.pug +2 -2
  123. package/source/projects/mitstudie/applications-credit-transfer-receipt.pug +1 -1
  124. package/source/projects/mitstudie/applications-credit-transfer-step1-edit.pug +3 -3
  125. package/source/projects/mitstudie/applications-credit-transfer-step1.pug +2 -2
  126. package/source/projects/mitstudie/applications-credit-transfer-step2.pug +3 -3
  127. package/source/projects/mitstudie/applications-credit-transfer-step3.pug +2 -2
  128. package/source/projects/mitstudie/applications-credit-transfer-step4.pug +3 -3
  129. package/source/projects/mitstudie/applications-credit-transfer-step5.pug +1 -1
  130. package/source/projects/mitstudie/applications-credit-transfer-step6.pug +2 -2
  131. package/source/projects/mitstudie/applications.pug +1 -1
  132. package/source/projects/mitstudie/home.pug +1 -1
  133. package/source/projects/mitstudie/index.pug +17 -17
  134. package/source/projects/mitstudie/markup/_mitstudie-template.pug +4 -4
  135. package/source/projects/mitstudie/style/_diagramme.scss +1 -6
  136. package/source/projects/mitstudie/style/_student-id.scss +5 -5
  137. package/source/projects/mitstudie/style/_timeline.scss +4 -4
  138. package/source/projects/mitstudie/style/_timetable.scss +7 -7
  139. package/source/projects/mitstudie/style.scss +3 -0
  140. package/source/projects/mitstudie/timetable-link-not-accessible.pug +1 -1
  141. package/source/projects/queue-it/style/_au-style.scss +1 -1
  142. package/source/projects/queue-it/style.scss +3 -1
  143. package/source/projects/typo3/employee-profiles/index.pug +12 -12
  144. package/source/projects/typo3/news-events/_content-elements.pug +16 -16
  145. package/source/projects/typo3/news-events/_elements.pug +5 -5
  146. package/source/projects/typo3/news-events/index.pug +15 -15
  147. package/source/projects/typo3/page/index.pug +8 -8
  148. package/source/projects/typo3/style/_contact-list.scss +1 -1
  149. package/source/projects/typo3/style/_news-event.scss +17 -17
  150. package/source/projects/typo3/style/_profile-header.scss +1 -1
  151. package/source/projects/typo3/style/_typo3-component-sass-variables.scss +6 -6
  152. package/source/projects/typo3/style/_typo3-delphinus-component-fixes.scss +1 -1
  153. package/source/projects/typo3/style/_typo3-sass-variables.scss +1 -1
  154. package/source/projects/typo3/style.scss +5 -2
  155. package/source/projects/typo3/typo3-markup/_typo3-header.pug +2 -1
  156. package/source/style/_includes/_transparent.scss +9 -10
  157. package/source/style/_sass-variables.scss +9 -14
  158. package/source/style/base/_buttons.scss +1 -1
  159. package/source/style/base/_links.scss +1 -1
  160. package/source/style/base/_text.scss +2 -2
  161. package/source/style/layout/_breakpoints.scss +3 -3
  162. package/source/style/layout/_page.scss +12 -12
  163. package/source/style/layout/_vertical-spacing.scss +1 -1
  164. package/source/style/module/_card.scss +3 -3
  165. package/source/style/module/_header-callout.scss +2 -2
  166. package/source/style/module/_nav.scss +3 -3
  167. package/source/style/module/_pre-header.scss +2 -2
  168. package/source/style/module/_search-filter.scss +2 -2
  169. package/source/style/module/_stepper.scss +2 -2
  170. package/source/style/module/_toast-notification.scss +1 -1
  171. package/source/style/module/_toolbar.scss +1 -1
  172. package/source/style/module/_tooltip.scss +4 -3
  173. package/source/style/module-demo/_demo.scss +8 -1
  174. package/source/style/module-demo/_prism-modifications.scss +1 -1
  175. package/source/style.scss +3 -1
  176. package/.eslintrc.js +0 -35
  177. package/README.md +0 -5
  178. package/babel.config.js +0 -16
  179. package/build/changelog.html +0 -871
  180. package/build/js/app.js +0 -2
  181. package/build/js/app.js.map +0 -1
  182. package/build/js/components/affiliate-expand.ts +0 -31
  183. package/build/projects/bachelor-applications/js/app.js +0 -2
  184. package/build/projects/bachelor-applications/js/app.js.map +0 -1
  185. package/build/projects/bachelor-applications/style.css +0 -3
  186. package/build/projects/bachelor-applications/style.css.map +0 -87
  187. package/build/projects/brightspace/style.css +0 -3
  188. package/build/projects/brightspace/style.css.map +0 -60
  189. package/build/projects/course-catalogue/js/app.js +0 -2
  190. package/build/projects/course-catalogue/js/app.js.map +0 -1
  191. package/build/projects/course-catalogue/style.css +0 -3
  192. package/build/projects/course-catalogue/style.css.map +0 -77
  193. package/build/projects/medarbejdere/js/app.js +0 -2
  194. package/build/projects/medarbejdere/js/app.js.map +0 -1
  195. package/build/projects/medarbejdere/style.css +0 -3
  196. package/build/projects/medarbejdere/style.css.map +0 -92
  197. package/build/projects/mitstudie/js/app.js +0 -2
  198. package/build/projects/mitstudie/js/app.js.map +0 -1
  199. package/build/projects/mitstudie/style.css +0 -3
  200. package/build/projects/mitstudie/style.css.map +0 -94
  201. package/build/projects/queue-it/style.css +0 -3
  202. package/build/projects/queue-it/style.css.map +0 -46
  203. package/build/projects/typo3/js/app.js +0 -2
  204. package/build/projects/typo3/js/app.js.map +0 -1
  205. package/build/projects/typo3/style.css +0 -3
  206. package/build/projects/typo3/style.css.map +0 -71
  207. package/build/style.css +0 -3
  208. package/build/style.css.map +0 -89
  209. package/source/.htaccess +0 -14
  210. package/source/projects/bachelor-applications/kontoaktivering/originals/faq.pug +0 -168
  211. package/source/projects/bachelor-applications/kontoaktivering/originals/password.pug +0 -205
  212. package/source/projects/bachelor-applications/kontoaktivering/originals/receipt.pug +0 -170
  213. package/source/projects/typo3/plain-delphinus.scss +0 -20
  214. package/tsconfig.json +0 -47
  215. package/webpack.config.js +0 -77
  216. /package/{source → public}/assets/au-logo-da.svg +0 -0
  217. /package/{source → public}/assets/au-logo-en.svg +0 -0
  218. /package/{source → public}/assets/au-seal-white.svg +0 -0
  219. /package/{source → public}/assets/au-seal.svg +0 -0
  220. /package/{source → public}/assets/delphinus-apple-touch-icon.png +0 -0
  221. /package/{source → public}/assets/delphinus-favicon.ico +0 -0
  222. /package/{source → public}/assets/delphinus-favicon.svg +0 -0
  223. /package/{source → public}/assets/delphinus-logo.svg +0 -0
  224. /package/{source → public}/assets/profile-images/originals/profile-image-1.jpg +0 -0
  225. /package/{source → public}/assets/profile-images/originals/profile-image-10.jpg +0 -0
  226. /package/{source → public}/assets/profile-images/originals/profile-image-2.jpg +0 -0
  227. /package/{source → public}/assets/profile-images/originals/profile-image-3.jpg +0 -0
  228. /package/{source → public}/assets/profile-images/originals/profile-image-4.jpg +0 -0
  229. /package/{source → public}/assets/profile-images/originals/profile-image-5.jpg +0 -0
  230. /package/{source → public}/assets/profile-images/originals/profile-image-6.jpg +0 -0
  231. /package/{source → public}/assets/profile-images/originals/profile-image-7.jpg +0 -0
  232. /package/{source → public}/assets/profile-images/originals/profile-image-8.jpg +0 -0
  233. /package/{source → public}/assets/profile-images/originals/profile-image-9.jpg +0 -0
  234. /package/{source → public}/assets/profile-images/portrait/default/profile-image-1.jpg +0 -0
  235. /package/{source → public}/assets/profile-images/portrait/default/profile-image-2.jpg +0 -0
  236. /package/{source → public}/assets/profile-images/portrait/default/profile-image-3.jpg +0 -0
  237. /package/{source → public}/assets/profile-images/portrait/default/profile-image-4.jpg +0 -0
  238. /package/{source → public}/assets/profile-images/portrait/default/profile-image-5.jpg +0 -0
  239. /package/{source → public}/assets/profile-images/portrait/default/profile-image-6.jpg +0 -0
  240. /package/{source → public}/assets/profile-images/portrait/large/profile-image-1.jpg +0 -0
  241. /package/{source → public}/assets/profile-images/portrait/large/profile-image-2.jpg +0 -0
  242. /package/{source → public}/assets/profile-images/portrait/large/profile-image-3.jpg +0 -0
  243. /package/{source → public}/assets/profile-images/portrait/large/profile-image-4.jpg +0 -0
  244. /package/{source → public}/assets/profile-images/portrait/large/profile-image-5.jpg +0 -0
  245. /package/{source → public}/assets/profile-images/portrait/large/profile-image-6.jpg +0 -0
  246. /package/{source → public}/assets/profile-images/square/default/profile-image-1.jpg +0 -0
  247. /package/{source → public}/assets/profile-images/square/default/profile-image-10.jpg +0 -0
  248. /package/{source → public}/assets/profile-images/square/default/profile-image-2.jpg +0 -0
  249. /package/{source → public}/assets/profile-images/square/default/profile-image-3.jpg +0 -0
  250. /package/{source → public}/assets/profile-images/square/default/profile-image-4.jpg +0 -0
  251. /package/{source → public}/assets/profile-images/square/default/profile-image-5.jpg +0 -0
  252. /package/{source → public}/assets/profile-images/square/default/profile-image-6.jpg +0 -0
  253. /package/{source → public}/assets/profile-images/square/default/profile-image-7.jpg +0 -0
  254. /package/{source → public}/assets/profile-images/square/default/profile-image-8.jpg +0 -0
  255. /package/{source → public}/assets/profile-images/square/default/profile-image-9.jpg +0 -0
  256. /package/{source → public}/assets/profile-images/square/large/profile-image-1.jpg +0 -0
  257. /package/{source → public}/assets/profile-images/square/large/profile-image-10.jpg +0 -0
  258. /package/{source → public}/assets/profile-images/square/large/profile-image-2.jpg +0 -0
  259. /package/{source → public}/assets/profile-images/square/large/profile-image-3.jpg +0 -0
  260. /package/{source → public}/assets/profile-images/square/large/profile-image-4.jpg +0 -0
  261. /package/{source → public}/assets/profile-images/square/large/profile-image-5.jpg +0 -0
  262. /package/{source → public}/assets/profile-images/square/large/profile-image-6.jpg +0 -0
  263. /package/{source → public}/assets/profile-images/square/large/profile-image-7.jpg +0 -0
  264. /package/{source → public}/assets/profile-images/square/large/profile-image-8.jpg +0 -0
  265. /package/{source → public}/assets/profile-images/square/large/profile-image-9.jpg +0 -0
  266. /package/{source → public}/assets/profile-images/square/small/profile-image-1.jpg +0 -0
  267. /package/{source → public}/assets/profile-images/square/small/profile-image-10.jpg +0 -0
  268. /package/{source → public}/assets/profile-images/square/small/profile-image-2.jpg +0 -0
  269. /package/{source → public}/assets/profile-images/square/small/profile-image-3.jpg +0 -0
  270. /package/{source → public}/assets/profile-images/square/small/profile-image-4.jpg +0 -0
  271. /package/{source → public}/assets/profile-images/square/small/profile-image-5.jpg +0 -0
  272. /package/{source → public}/assets/profile-images/square/small/profile-image-6.jpg +0 -0
  273. /package/{source → public}/assets/profile-images/square/small/profile-image-7.jpg +0 -0
  274. /package/{source → public}/assets/profile-images/square/small/profile-image-8.jpg +0 -0
  275. /package/{source → public}/assets/profile-images/square/small/profile-image-9.jpg +0 -0
  276. /package/{source → public}/favicon.ico +0 -0
  277. /package/{build → public}/figma-tokens/breakpoint-styles.json +0 -0
  278. /package/{build → public}/figma-tokens/design-file.json +0 -0
  279. /package/{build → public}/js/3rdparty/iframeResizer.contentWindow.min.js +0 -0
  280. /package/{build → public}/js/3rdparty/iframeResizer.min.js +0 -0
  281. /package/{build → public}/js/3rdparty/prism.js +0 -0
  282. /package/{build → public}/js/autocomplete.js +0 -0
  283. /package/{build → public}/js/autocomplete.js.map +0 -0
  284. /package/{build → public}/js/components/atom-picker.ts +0 -0
  285. /package/{build → public}/js/components/content-toggle.ts +0 -0
  286. /package/{build → public}/js/components/copy-hex-code.ts +0 -0
  287. /package/{build → public}/js/components/form.ts +0 -0
  288. /package/{build → public}/js/components/modal-view.ts +0 -0
  289. /package/{build → public}/js/components/nav.ts +0 -0
  290. /package/{build → public}/js/components/ready.ts +0 -0
  291. /package/{build → public}/js/components/selection-list.ts +0 -0
  292. /package/{build → public}/js/components/table.ts +0 -0
  293. /package/{build → public}/js/components/tabs.ts +0 -0
  294. /package/{build → public}/js/components/toolbar.ts +0 -0
  295. /package/{build → public}/js/components/truncator.ts +0 -0
  296. /package/{build → public}/js/demo/app.ts +0 -0
  297. /package/{source → public}/projects/typo3/assets/au-herning.jpg +0 -0
  298. /package/{source → public}/projects/typo3/assets/hc-oersted-guldmedalje-16-9.jpg +0 -0
  299. /package/{source → public}/projects/typo3/assets/hc-oersted-guldmedalje-content-width.jpg +0 -0
  300. /package/{source → public}/projects/typo3/assets/hc-oersted-guldmedalje-narrow.jpg +0 -0
  301. /package/{source → public}/projects/typo3/assets/hc-oersted-guldmedalje-wide.jpg +0 -0
  302. /package/{source → public}/projects/typo3/assets/hc-oersted-guldmedalje.jpg +0 -0
  303. /package/{source → public}/projects/typo3/assets/hero-3-2.jpg +0 -0
  304. /package/{source → public}/projects/typo3/assets/karl-anker-closeup.jpg +0 -0
  305. /package/{source → public}/projects/typo3/assets/karl-anker-narrow.jpg +0 -0
  306. /package/{source → public}/projects/typo3/assets/karl-anker.jpg +0 -0
package/CHANGELOG.md CHANGED
@@ -1,3 +1,23 @@
1
+ ## 1.0.0 (July 20, 2023)
2
+ **Big release!** At least for those of us building Delphinus. With this release, we have transitioned away from using Grunt as our build tool. From now on Sass and TypeScript files are compiled using Node, and Pug files render on the fly using an Express server. This results in dramatically improved build speed and development experience.
3
+
4
+ Two things to note:
5
+ * If you have cloned the Delpinus repo, please delete your local copy and clone from new and run `npm install`.
6
+ * If you are sourceing the compiled css files from the CDN, please note that the URLs have a slight change, as compiled css files are now in the `public` dir, not in the previous `build` dir.
7
+
8
+ Hopefulley, this update will make us able to build and develop Delphinus at warp speed ;)
9
+
10
+
11
+ ## 0.48.1 (July 18, 2023)
12
+
13
+ ### Core Delphinus Updates
14
+ Updates Figma tokens to use the new black Omnibus theme color.
15
+
16
+ ### Delphinus Projects Updates
17
+ None
18
+
19
+
20
+
1
21
  ## 0.48.0 (July 18, 2023)
2
22
 
3
23
  ### Core Delphinus Updates
package/Gruntfile.js CHANGED
@@ -1,10 +1,3 @@
1
- /* eslint-disable max-len */
2
- /* eslint-disable consistent-return */
3
- /* eslint-disable @typescript-eslint/no-var-requires */
4
- /* eslint-env node */
5
- const sass = require('node-sass');
6
- const webpackConfig = require('./webpack.config.js');
7
-
8
1
  module.exports = (grunt) => {
9
2
  // configure the tasks
10
3
  grunt.initConfig({
@@ -12,289 +5,104 @@ module.exports = (grunt) => {
12
5
 
13
6
  // clean the build directory
14
7
  clean: {
15
- prebuild: {
16
- src: ['build'],
17
- },
18
- postbuild: {
19
- src: ['build/**/_*.html'],
20
- },
21
- figmatokens: {
22
- src: ['build/figma-tokens', 'bin'],
8
+ figmatokensbin: {
9
+ src: ['public/figma-tokens/bin'],
23
10
  },
24
- bin: {
25
- src: ['bin'],
26
- },
27
- },
28
- cleanempty: {
29
- options: {},
30
- src: ['build/**'],
31
11
  },
32
12
  // copy from the source directory to build
33
13
  copy: {
34
- build: {
35
- cwd: 'source',
36
- src: [
37
- '**',
38
- '!**/*.scss',
39
- '!**/*.pug',
40
- '!**/*.js',
41
- '!figma-tokens/**/*.json',
42
- 'js/3rdparty/**/*.js',
43
- 'projects/**/*.js',
44
- '.htaccess',
45
- ],
46
- dest: 'build',
47
- expand: true,
48
- },
49
14
  figmastyles: {
50
15
  options: {
51
16
  flatten: true,
52
17
  },
53
18
  files: {
54
19
  // the breakpoints
55
- 'bin/pre/breakpoint/01_medium.json': 'source/figma-tokens/styles/breakpoint.json',
56
- 'bin/pre/breakpoint/02_wide.json': 'source/figma-tokens/styles/breakpoint.json',
20
+ 'public/figma-tokens/bin/pre/breakpoint/01_medium.json': 'source/figma-tokens/styles/breakpoint.json',
21
+ 'public/figma-tokens/bin/pre/breakpoint/02_wide.json': 'source/figma-tokens/styles/breakpoint.json',
57
22
  // the color colorthemes
58
- 'bin/pre/theme/01_cyan.json': 'source/figma-tokens/styles/theme.json',
59
- 'bin/pre/theme/02_turquoise.json': 'source/figma-tokens/styles/theme.json',
60
- 'bin/pre/theme/03_green.json': 'source/figma-tokens/styles/theme.json',
61
- 'bin/pre/theme/04_yellow.json': 'source/figma-tokens/styles/theme.json',
62
- 'bin/pre/theme/05_orange.json': 'source/figma-tokens/styles/theme.json',
63
- 'bin/pre/theme/06_red.json': 'source/figma-tokens/styles/theme.json',
64
- 'bin/pre/theme/07_magenta.json': 'source/figma-tokens/styles/theme.json',
65
- 'bin/pre/theme/08_purple.json': 'source/figma-tokens/styles/theme.json',
66
- 'bin/pre/theme/09_blue.json': 'source/figma-tokens/styles/theme.json',
67
- 'bin/pre/theme/21_mitstudie.json': 'source/figma-tokens/styles/theme.json',
68
- 'bin/pre/theme/22_omnibus.json': 'source/figma-tokens/styles/theme.json',
69
- 'bin/pre/theme/23_brightspace.json': 'source/figma-tokens/styles/theme.json',
23
+ 'public/figma-tokens/bin/pre/theme/01_cyan.json': 'source/figma-tokens/styles/theme.json',
24
+ 'public/figma-tokens/bin/pre/theme/02_turquoise.json': 'source/figma-tokens/styles/theme.json',
25
+ 'public/figma-tokens/bin/pre/theme/03_green.json': 'source/figma-tokens/styles/theme.json',
26
+ 'public/figma-tokens/bin/pre/theme/04_yellow.json': 'source/figma-tokens/styles/theme.json',
27
+ 'public/figma-tokens/bin/pre/theme/05_orange.json': 'source/figma-tokens/styles/theme.json',
28
+ 'public/figma-tokens/bin/pre/theme/06_red.json': 'source/figma-tokens/styles/theme.json',
29
+ 'public/figma-tokens/bin/pre/theme/07_magenta.json': 'source/figma-tokens/styles/theme.json',
30
+ 'public/figma-tokens/bin/pre/theme/08_purple.json': 'source/figma-tokens/styles/theme.json',
31
+ 'public/figma-tokens/bin/pre/theme/09_blue.json': 'source/figma-tokens/styles/theme.json',
32
+ 'public/figma-tokens/bin/pre/theme/21_mitstudie.json': 'source/figma-tokens/styles/theme.json',
33
+ 'public/figma-tokens/bin/pre/theme/22_omnibus.json': 'source/figma-tokens/styles/theme.json',
34
+ 'public/figma-tokens/bin/pre/theme/23_brightspace.json': 'source/figma-tokens/styles/theme.json',
70
35
  },
71
36
  },
72
37
  figmatokens: {
73
38
  cwd: 'source',
74
39
  src: 'figma-tokens/*.json',
75
- dest: 'bin/pre',
40
+ dest: 'public/figma-tokens/bin/pre',
76
41
  expand: true,
77
42
  flatten: true,
78
43
  },
79
44
  },
80
- watch: {
81
- sass: {
82
- files: ['source/**/*.scss', '!source/figma-tokens/**/*.scss'],
83
- tasks: ['sass', 'cleanempty'],
84
- },
85
- pug: {
86
- files: ['source/**/*.pug', 'CHANGELOG.md'],
87
- tasks: ['pug', 'cleanempty'],
88
- },
89
- webpack: {
90
- files: ['source/**/*.ts'],
91
- tasks: ['webpack'],
92
- },
93
- copy: {
94
- files: ['source/**', '!source/**/*.scss', '!source/**/*.pug', '!source/figma-tokens/**/*.json'],
95
- tasks: ['copy', 'cleanempty'],
96
- },
97
- },
98
- pug: {
99
- compile: {
100
- options: {
101
- data: {},
102
- },
103
- files: [
104
- {
105
- expand: true,
106
- cwd: 'source/markup',
107
- src: ['**/*.pug'],
108
- dest: 'build',
109
- ext: '.html',
110
- },
111
- ],
112
- },
113
- compileatoms: {
114
- options: {
115
- data: {},
116
- },
117
- files: [
118
- {
119
- expand: true,
120
- cwd: 'source/atoms',
121
- src: ['**/*.pug'],
122
- dest: 'build/atoms',
123
- ext: '.html',
124
- },
125
- ],
126
- },
127
- compileprojects: {
128
- options: {
129
- data: {},
130
- },
131
- files: [
132
- {
133
- expand: true,
134
- cwd: 'source/projects',
135
- //src: ['typo3/**/*.pug', 'medarbejdere/**/*.pug'],
136
- src: ['**/*.pug'],
137
- dest: 'build/projects',
138
- ext: '.html',
139
- },
140
- ],
141
- },
142
- },
143
- sass: {
144
- options: {
145
- outputStyle: 'compressed',
146
- implementation: sass,
147
- sourceMap: true,
148
- },
149
- dist: {
150
- files: [
151
- {
152
- expand: true,
153
- cwd: 'source',
154
- src: ['**/*.scss'],
155
- dest: 'build',
156
- ext: '.css',
157
- },
158
- ],
159
- },
160
- figmatokens: {
161
- files: [
162
- {
163
- expand: true,
164
- cwd: 'source',
165
- src: ['figma-tokens/**/*.scss'],
166
- dest: 'bin/pre/cssvars',
167
- ext: '.css',
168
- flatten: true,
169
- },
170
- ],
171
- },
172
- },
173
- connect: {
174
- server: {
175
- options: {
176
- port: 3001,
177
- base: 'build',
178
- hostname: '*',
179
- },
180
- },
181
- },
182
- browserSync: {
183
- dev: {
184
- bsFiles: {
185
- src: ['img/**/*'],
186
- },
187
- options: {
188
- watchTask: true,
189
- proxy: 'http://localhost:3001',
190
- },
191
- },
192
- },
193
- webpack: {
194
- prod: webpackConfig,
195
- dev: webpackConfig,
196
- },
197
- 'sftp-deploy': {
198
- production: {
199
- auth: {
200
- host: 'cmsftp.auit.au.dk',
201
- port: 22,
202
- authKey: 'key1',
203
- },
204
- cache: false,
205
- src: 'build',
206
- dest: '/aucms/installations/delphinus.au.dk/http',
207
- exclusions: [
208
- 'build/**/.DS_Store',
209
- 'build/.htaccess',
210
- 'build/projects/au-webshop/*',
211
- ],
212
- serverSep: '/',
213
- localSep: '/',
214
- concurrency: 4,
215
- progress: true,
216
- },
217
- dev: {
218
- auth: {
219
- host: 'cmsftp.auit.au.dk',
220
- port: 22,
221
- authKey: 'key1',
222
- },
223
- cache: false,
224
- src: 'build',
225
- dest: '/aucms/installations/delphinus.au.dk/dev',
226
- exclusions: [
227
- 'build/**/.DS_Store',
228
- 'build/.htaccess',
229
- 'build/projects/au-webshop/*',
230
- ],
231
- serverSep: '/',
232
- localSep: '/',
233
- concurrency: 4,
234
- progress: true,
235
- },
236
- },
237
45
  'merge-json': {
238
46
  breakpoints: {
239
- src: ['bin/pre/breakpoint/*.json'],
240
- dest: 'bin/pre/sizes-breakpoints.json',
47
+ src: ['public/figma-tokens/bin/pre/breakpoint/*.json'],
48
+ dest: 'public/figma-tokens/bin/pre/sizes-breakpoints.json',
241
49
  },
242
50
  themes: {
243
- src: ['bin/pre/theme/*.json'],
244
- dest: 'bin/pre/colors-themes.json',
51
+ src: ['public/figma-tokens/bin/pre/theme/*.json'],
52
+ dest: 'public/figma-tokens/bin/pre/colors-themes.json',
245
53
  },
246
54
  designsystem: {
247
55
  src: [
248
- 'bin/figma-tokens/colors-all.json',
249
- 'bin/figma-tokens/colors-themes.json',
250
- 'bin/figma-tokens/sizes-default.json',
251
- 'bin/figma-tokens/sizes-breakpoints.json',
252
- 'bin/figma-tokens/sizing.json',
253
- 'bin/figma-tokens/spacing.json',
254
- 'bin/figma-tokens/shadows-default.json',
255
- 'bin/figma-tokens/blurs-default.json',
256
- 'bin/figma-tokens/typography-fonts.json',
257
- 'bin/figma-tokens/typography-line-widths.json',
258
- 'bin/figma-tokens/typography-styles.json',
259
- 'bin/figma-tokens/borders-widths.json',
260
- 'bin/figma-tokens/borders-default.json',
261
- 'bin/figma-tokens/borders-theme.json',
262
- 'bin/figma-tokens/borders-nav-item.json',
263
- 'bin/figma-tokens/borders-nav-item-theme.json',
56
+ 'public/figma-tokens/bin/colors-all.json',
57
+ 'public/figma-tokens/bin/colors-themes.json',
58
+ 'public/figma-tokens/bin/sizes-default.json',
59
+ 'public/figma-tokens/bin/sizes-breakpoints.json',
60
+ 'public/figma-tokens/bin/sizing.json',
61
+ 'public/figma-tokens/bin/spacing.json',
62
+ 'public/figma-tokens/bin/shadows-default.json',
63
+ 'public/figma-tokens/bin/blurs-default.json',
64
+ 'public/figma-tokens/bin/typography-fonts.json',
65
+ 'public/figma-tokens/bin/typography-line-widths.json',
66
+ 'public/figma-tokens/bin/typography-styles.json',
67
+ 'public/figma-tokens/bin/borders-widths.json',
68
+ 'public/figma-tokens/bin/borders-default.json',
69
+ 'public/figma-tokens/bin/borders-theme.json',
70
+ 'public/figma-tokens/bin/borders-nav-item.json',
71
+ 'public/figma-tokens/bin/borders-nav-item-theme.json',
264
72
  ],
265
- dest: 'build/figma-tokens/design-system.json',
73
+ dest: 'public/figma-tokens/design-system.json',
266
74
  },
267
75
  designfile: {
268
76
  src: [
269
- 'bin/figma-tokens/sizes-default.json',
270
- 'bin/figma-tokens/sizes-breakpoints.json',
271
- 'bin/figma-tokens/sizing.json',
272
- 'bin/figma-tokens/spacing.json',
273
- 'bin/figma-tokens/blurs-default.json',
274
- 'bin/figma-tokens/typography-fonts.json',
275
- 'bin/figma-tokens/typography-line-widths.json',
276
- 'bin/figma-tokens/typography-styles.json',
277
- 'bin/figma-tokens/borders-widths.json',
77
+ 'public/figma-tokens/bin/sizes-default.json',
78
+ 'public/figma-tokens/bin/sizes-breakpoints.json',
79
+ 'public/figma-tokens/bin/sizing.json',
80
+ 'public/figma-tokens/bin/spacing.json',
81
+ 'public/figma-tokens/bin/blurs-default.json',
82
+ 'public/figma-tokens/bin/typography-fonts.json',
83
+ 'public/figma-tokens/bin/typography-line-widths.json',
84
+ 'public/figma-tokens/bin/typography-styles.json',
85
+ 'public/figma-tokens/bin/borders-widths.json',
278
86
  ],
279
- dest: 'build/figma-tokens/design-file.json',
87
+ dest: 'public/figma-tokens/design-file.json',
280
88
  },
281
89
  colorthemes: {
282
90
  src: [
283
- 'bin/figma-tokens/borders-widths.json',
284
- 'bin/figma-tokens/borders-theme.json',
285
- 'bin/figma-tokens/borders-nav-item-theme.json',
286
- 'bin/figma-tokens/colors-themes.json',
91
+ 'public/figma-tokens/bin/borders-widths.json',
92
+ 'public/figma-tokens/bin/borders-theme.json',
93
+ 'public/figma-tokens/bin/borders-nav-item-theme.json',
94
+ 'public/figma-tokens/bin/colors-themes.json',
287
95
  ],
288
- dest: 'build/figma-tokens/color-themes.json',
96
+ dest: 'public/figma-tokens/color-themes.json',
289
97
  },
290
98
  breakpointstyles: {
291
99
  src: [
292
- 'bin/figma-tokens/typography-fonts.json',
293
- 'bin/figma-tokens/typography-line-widths.json',
294
- 'bin/figma-tokens/typography-styles.json',
295
- 'bin/figma-tokens/sizes-breakpoints.json',
100
+ 'public/figma-tokens/bin/typography-fonts.json',
101
+ 'public/figma-tokens/bin/typography-line-widths.json',
102
+ 'public/figma-tokens/bin/typography-styles.json',
103
+ 'public/figma-tokens/bin/sizes-breakpoints.json',
296
104
  ],
297
- dest: 'build/figma-tokens/breakpoint-styles.json',
105
+ dest: 'public/figma-tokens/breakpoint-styles.json',
298
106
  },
299
107
  },
300
108
  'string-replace': {
@@ -302,16 +110,16 @@ module.exports = (grunt) => {
302
110
  files: [{
303
111
  flatten: true,
304
112
  expand: true,
305
- cwd: 'bin/',
113
+ cwd: 'public/figma-tokens/bin/',
306
114
  src: 'pre/*.json',
307
- dest: 'bin/figma-tokens',
115
+ dest: 'public/figma-tokens/bin/',
308
116
  }],
309
117
  options: {
310
118
  replacements: [{
311
119
  pattern: /(--[a-z0-9-]+)/ig,
312
120
  replacement(match) {
313
121
  // console.log(match)
314
- const cssvars = grunt.file.read('bin/pre/cssvars/figma-tokens.css');
122
+ const cssvars = grunt.file.read('public/figma-tokens/style.css');
315
123
  const regex = new RegExp(`${match}: ([a-zA-Z0-9-#.,()]+)`);
316
124
  const value = cssvars.match(regex);
317
125
  if (value == null) {
@@ -326,9 +134,9 @@ module.exports = (grunt) => {
326
134
  figmastyles: {
327
135
  files: [{
328
136
  expand: true,
329
- cwd: 'bin/',
137
+ cwd: 'public/figma-tokens/bin/',
330
138
  src: ['pre/breakpoint/*.json', 'pre/theme/*.json'],
331
- dest: 'bin/',
139
+ dest: 'public/figma-tokens/bin/',
332
140
  }],
333
141
  options: {
334
142
  replacements: [{
@@ -350,7 +158,7 @@ module.exports = (grunt) => {
350
158
 
351
159
  // if matched value is not name, find display name i css vars file. Else return the filename.
352
160
  if (value !== 'name') {
353
- const cssvars = grunt.file.read('bin/pre/cssvars/figma-tokens.css');
161
+ const cssvars = grunt.file.read('public/figma-tokens/style.css');
354
162
  const re2 = new RegExp(`--${foldername}-${filename}: ([a-zA-Z0-9-#. ]+)`);
355
163
  const displayname = cssvars.match(re2);
356
164
  if (displayname == null) {
@@ -372,50 +180,28 @@ module.exports = (grunt) => {
372
180
 
373
181
  // load the tasks
374
182
  grunt.loadNpmTasks('grunt-contrib-copy');
375
- grunt.loadNpmTasks('grunt-contrib-watch');
376
183
  grunt.loadNpmTasks('grunt-contrib-clean');
377
- grunt.loadNpmTasks('grunt-cleanempty');
378
- grunt.loadNpmTasks('grunt-contrib-pug');
379
- grunt.loadNpmTasks('grunt-sass');
380
- grunt.loadNpmTasks('node-sass');
381
- grunt.loadNpmTasks('grunt-contrib-connect');
382
- grunt.loadNpmTasks('grunt-browser-sync');
383
- grunt.loadNpmTasks('grunt-webpack');
384
- grunt.loadNpmTasks('grunt-sftp-deploy');
385
184
  grunt.loadNpmTasks('grunt-merge-json');
386
185
  grunt.loadNpmTasks('grunt-string-replace');
387
186
 
388
187
  // define the tasks
389
-
390
- grunt.registerTask('build', [
391
- 'clean:prebuild',
392
- 'copy',
393
- 'pug',
394
- 'sass:dist',
395
- 'figma-tokens',
396
- 'clean:postbuild',
397
- 'cleanempty',
398
- 'webpack',
399
- ]);
400
-
401
- grunt.registerTask('default', ['build', 'connect', 'browserSync', 'watch']);
402
-
403
- grunt.registerTask('deploy', ['sftp-deploy:production']);
404
-
405
- grunt.registerTask('dev-deploy', ['sftp-deploy:dev']);
406
-
407
- grunt.registerTask('deploy-both', ['sftp-deploy']);
408
-
409
188
  grunt.registerTask('figma-tokens', [
410
- 'clean:figmatokens',
411
- 'sass:figmatokens',
189
+ //start by deleting the temporary bin folder
190
+ 'clean:figmatokensbin',
191
+ //the we copy some json files from the source folder to the temporary bin folder, we start by creating a json file for each breakpoint and then one for each color theme
412
192
  'copy:figmastyles',
193
+ //the we also copy json files for our tokens from the source folder to the temporary bin folder
413
194
  'copy:figmatokens',
195
+ //then we replace {{name}} in the breakpoint and color theme json files with the theme/breakpoint name from each json file
414
196
  'string-replace:figmastyles',
197
+ //we then merge alle the breakpoint json files in to one file and the same for the color theme json files
415
198
  'merge-json:breakpoints',
416
199
  'merge-json:themes',
200
+ //finally we go through the json files and find all css variable names and replace them with the value from the css file we created in the beginning - this is done in a new copy of each json file
417
201
  'string-replace:cssvars',
202
+ //lastly all json files are merged in to the four files we need for the design system, breakpoints, design file and color themes (these are placed on the build folder and can be deployed to delphinus site)
418
203
  'merge-json',
419
- 'clean:bin',
204
+ //at the end we delete the temporary bin folder
205
+ 'clean:figmatokensbin',
420
206
  ]);
421
207
  };
package/app.js ADDED
@@ -0,0 +1,41 @@
1
+ var createError = require('http-errors');
2
+ var express = require('express');
3
+ var path = require('path');
4
+ var cookieParser = require('cookie-parser');
5
+ var logger = require('morgan');
6
+
7
+ var indexRouter = require('./routes/index');
8
+ var usersRouter = require('./routes/users');
9
+
10
+ var app = express();
11
+
12
+ // view engine setup
13
+ app.set('views', path.join(__dirname, 'source/markup'));
14
+ app.set('view engine', 'pug');
15
+
16
+ app.use(logger('dev'));
17
+ app.use(express.json());
18
+ app.use(express.urlencoded({ extended: false }));
19
+ app.use(cookieParser());
20
+ app.use(express.static(path.join(__dirname, 'public')));
21
+
22
+ app.use('/', indexRouter);
23
+ app.use('/users', usersRouter);
24
+
25
+ // catch 404 and forward to error handler
26
+ app.use(function(req, res, next) {
27
+ next(createError(404));
28
+ });
29
+
30
+ // error handler
31
+ app.use(function(err, req, res, next) {
32
+ // set locals, only providing error in development
33
+ res.locals.message = err.message;
34
+ res.locals.error = req.app.get('env') === 'development' ? err : {};
35
+
36
+ // render the error page
37
+ res.status(err.status || 500);
38
+ res.render('error');
39
+ });
40
+
41
+ module.exports = app;
package/bin/www ADDED
@@ -0,0 +1,90 @@
1
+ #!/usr/bin/env node
2
+
3
+ /**
4
+ * Module dependencies.
5
+ */
6
+
7
+ var app = require('../app');
8
+ var debug = require('debug')('express:server');
9
+ var http = require('http');
10
+
11
+ /**
12
+ * Get port from environment and store in Express.
13
+ */
14
+
15
+ var port = normalizePort(process.env.PORT || '3000');
16
+ app.set('port', port);
17
+
18
+ /**
19
+ * Create HTTP server.
20
+ */
21
+
22
+ var server = http.createServer(app);
23
+
24
+ /**
25
+ * Listen on provided port, on all network interfaces.
26
+ */
27
+
28
+ server.listen(port);
29
+ server.on('error', onError);
30
+ server.on('listening', onListening);
31
+
32
+ /**
33
+ * Normalize a port into a number, string, or false.
34
+ */
35
+
36
+ function normalizePort(val) {
37
+ var port = parseInt(val, 10);
38
+
39
+ if (isNaN(port)) {
40
+ // named pipe
41
+ return val;
42
+ }
43
+
44
+ if (port >= 0) {
45
+ // port number
46
+ return port;
47
+ }
48
+
49
+ return false;
50
+ }
51
+
52
+ /**
53
+ * Event listener for HTTP server "error" event.
54
+ */
55
+
56
+ function onError(error) {
57
+ if (error.syscall !== 'listen') {
58
+ throw error;
59
+ }
60
+
61
+ var bind = typeof port === 'string'
62
+ ? 'Pipe ' + port
63
+ : 'Port ' + port;
64
+
65
+ // handle specific listen errors with friendly messages
66
+ switch (error.code) {
67
+ case 'EACCES':
68
+ console.error(bind + ' requires elevated privileges');
69
+ process.exit(1);
70
+ break;
71
+ case 'EADDRINUSE':
72
+ console.error(bind + ' is already in use');
73
+ process.exit(1);
74
+ break;
75
+ default:
76
+ throw error;
77
+ }
78
+ }
79
+
80
+ /**
81
+ * Event listener for HTTP server "listening" event.
82
+ */
83
+
84
+ function onListening() {
85
+ var addr = server.address();
86
+ var bind = typeof addr === 'string'
87
+ ? 'pipe ' + addr
88
+ : 'port ' + addr.port;
89
+ debug('Listening on ' + bind);
90
+ }
package/esbuild.mjs ADDED
@@ -0,0 +1,18 @@
1
+ #!/usr/bin/env node
2
+
3
+ import * as esbuild from 'esbuild';
4
+
5
+ await esbuild.build({
6
+ entryPoints: {
7
+ 'js/app': './source/js/production/app.ts',
8
+ 'js/demo': './source/js/demo/app.ts',
9
+ 'projects/medarbejdere/js/app': './source/js/production/app.ts',
10
+ 'projects/typo3/js/app': './source/js/production/typo3.ts',
11
+ 'projects/mitstudie/js/app': './source/js/production/app.ts',
12
+ 'projects/bachelor-applications/js/app': './source/js/production/app.ts',
13
+ 'projects/course-catalogue/js/app': './source/js/production/app.ts',
14
+ },
15
+ bundle: true,
16
+ minify: true,
17
+ outdir: 'public',
18
+ });