@supersoniks/concorde 5.1.2 → 5.1.3-immutable.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (497) hide show
  1. package/.agents/skills/concorde-docs/SKILL.md +1 -1
  2. package/.claude/skills +1 -0
  3. package/.github/workflows/ci.yml +21 -0
  4. package/.github-export-ignore +30 -0
  5. package/CONTRIBUTING.md +59 -0
  6. package/DEV.md +54 -0
  7. package/LICENSE +21 -0
  8. package/OPEN_SOURCE_CHECKPOINT.md +133 -0
  9. package/README.md +1 -1
  10. package/ai/README.md +29 -41
  11. package/ai/skills/concorde/SKILL.md +54 -324
  12. package/ai/skills/concorde/rules/composition.md +32 -0
  13. package/ai/skills/concorde/rules/data.md +47 -0
  14. package/ai/skills/concorde/rules/http.md +25 -0
  15. package/ai/skills/concorde/rules/lists-forms.md +35 -0
  16. package/ai/skills/concorde/rules/styling.md +46 -0
  17. package/ai/skills/concorde/rules/troubleshooting.md +45 -0
  18. package/build-infos.json +1 -1
  19. package/concorde-core.bundle.js +177 -177
  20. package/concorde-core.es.js +4993 -4833
  21. package/custom-elements-manifest.public.config.mjs +8 -0
  22. package/{.tmp-cem/custom-elements.json → custom-elements.json} +11722 -8868
  23. package/dist/concorde-core.bundle.js +177 -177
  24. package/dist/concorde-core.es.js +4993 -4833
  25. package/dist/docs-mock-api-sw.js +58 -223
  26. package/dist/docs-mock-api-sw.js.map +4 -4
  27. package/dist/img/og-concorde.jpg +0 -0
  28. package/dist/robots.txt +11 -10
  29. package/docs/assets/index-CD4WyL6o.css +1 -0
  30. package/docs/assets/index-D_alEsng.js +12122 -0
  31. package/docs/crawl/core/components/functional/date/date.html +190 -0
  32. package/docs/crawl/core/components/functional/fetch/fetch.html +109 -0
  33. package/docs/crawl/core/components/functional/if/if.html +27 -0
  34. package/docs/crawl/core/components/functional/jsonata/jsonata.html +79 -0
  35. package/docs/crawl/core/components/functional/list/list.html +70 -0
  36. package/docs/crawl/core/components/functional/mix/mix.html +45 -0
  37. package/docs/crawl/core/components/functional/queue/queue.html +96 -0
  38. package/docs/crawl/core/components/functional/router/router.html +106 -0
  39. package/docs/{core → crawl/core}/components/functional/sdui/sdui-extension-points.html +8 -9
  40. package/docs/crawl/core/components/functional/sdui/sdui.html +368 -0
  41. package/docs/crawl/core/components/functional/states/states.html +66 -0
  42. package/docs/crawl/core/components/functional/submit/submit.html +160 -0
  43. package/docs/{core → crawl/core}/components/functional/subscriber/subscriber.html +5 -6
  44. package/docs/crawl/core/components/functional/value/value.html +51 -0
  45. package/docs/{core → crawl/core}/components/ui/alert/alert.html +63 -53
  46. package/docs/{core → crawl/core}/components/ui/alert-messages/alert-messages.html +5 -6
  47. package/docs/{core → crawl/core}/components/ui/badge/badge.html +33 -33
  48. package/docs/crawl/core/components/ui/button/button.html +150 -0
  49. package/docs/crawl/core/components/ui/captcha/captcha.html +112 -0
  50. package/docs/{core → crawl/core}/components/ui/card/card.html +11 -12
  51. package/docs/{core → crawl/core}/components/ui/divider/divider.html +14 -14
  52. package/docs/crawl/core/components/ui/form/checkbox/checkbox.html +73 -0
  53. package/docs/crawl/core/components/ui/form/fieldset/fieldset.html +266 -0
  54. package/docs/{core → crawl/core}/components/ui/form/form-actions/form-actions.html +23 -23
  55. package/docs/crawl/core/components/ui/form/form-layout/form-layout.html +121 -0
  56. package/docs/crawl/core/components/ui/form/input/input.html +109 -0
  57. package/docs/crawl/core/components/ui/form/input-autocomplete/input-autocomplete.html +38 -0
  58. package/docs/crawl/core/components/ui/form/radio/radio.html +56 -0
  59. package/docs/crawl/core/components/ui/form/select/select.html +73 -0
  60. package/docs/crawl/core/components/ui/form/switch/switch.html +56 -0
  61. package/docs/crawl/core/components/ui/form/textarea/textarea.html +59 -0
  62. package/docs/crawl/core/components/ui/group/group.html +104 -0
  63. package/docs/{core → crawl/core}/components/ui/icon/icon.html +9 -10
  64. package/docs/crawl/core/components/ui/image/image.html +298 -0
  65. package/docs/{core → crawl/core}/components/ui/link/link.html +11 -12
  66. package/docs/crawl/core/components/ui/loader/loader.html +124 -0
  67. package/docs/{core → crawl/core}/components/ui/menu/menu.html +33 -34
  68. package/docs/crawl/core/components/ui/modal/modal.html +342 -0
  69. package/docs/crawl/core/components/ui/pop/pop.html +296 -0
  70. package/docs/{core → crawl/core}/components/ui/progress/progress.html +7 -8
  71. package/docs/crawl/core/components/ui/table/table.html +545 -0
  72. package/docs/crawl/core/components/ui/theme/theme.html +131 -0
  73. package/docs/crawl/core/components/ui/toast/toast.html +233 -0
  74. package/docs/crawl/core/components/ui/tooltip/tooltip.html +140 -0
  75. package/docs/{docs/getting-started → crawl/docs/_core-concept}/dataFlow.html +29 -26
  76. package/docs/crawl/docs/_core-concept/overview.html +66 -0
  77. package/docs/crawl/docs/_core-concept/subscriber.html +75 -0
  78. package/docs/crawl/docs/_decorators/ancestor-attribute.html +117 -0
  79. package/docs/crawl/docs/_decorators/auto-subscribe.html +202 -0
  80. package/docs/crawl/docs/_decorators/bind.html +141 -0
  81. package/docs/crawl/docs/_decorators/get.html +149 -0
  82. package/docs/crawl/docs/_decorators/handle.html +165 -0
  83. package/docs/crawl/docs/_decorators/on-assign.html +355 -0
  84. package/docs/crawl/docs/_decorators/patch.html +78 -0
  85. package/docs/crawl/docs/_decorators/post.html +139 -0
  86. package/docs/crawl/docs/_decorators/publish.html +61 -0
  87. package/docs/crawl/docs/_decorators/put.html +78 -0
  88. package/docs/crawl/docs/_decorators/subscribe.html +109 -0
  89. package/docs/crawl/docs/_decorators/wait-for-ancestors.html +137 -0
  90. package/docs/crawl/docs/_directives/sub.html +93 -0
  91. package/docs/{docs/getting-started → crawl/docs/_getting-started}/ai-agents.html +11 -12
  92. package/docs/crawl/docs/_getting-started/concorde-manual-install.html +100 -0
  93. package/docs/crawl/docs/_getting-started/concorde-outside.html +58 -0
  94. package/docs/{docs/getting-started → crawl/docs/_getting-started}/create-a-component.html +14 -11
  95. package/docs/{docs/getting-started → crawl/docs/_getting-started}/my-first-component.html +22 -13
  96. package/docs/crawl/docs/_getting-started/my-first-subscriber.html +110 -0
  97. package/docs/crawl/docs/_getting-started/pubsub.html +62 -0
  98. package/docs/crawl/docs/_getting-started/start.html +76 -0
  99. package/docs/{docs/getting-started → crawl/docs/_getting-started}/theming.html +9 -10
  100. package/docs/{docs/misc → crawl/docs/_misc}/api-configuration.html +18 -18
  101. package/docs/{docs/misc → crawl/docs/_misc}/dataProviderKey.html +11 -12
  102. package/docs/{docs/misc → crawl/docs/_misc}/docs-mock-api.html +28 -25
  103. package/docs/{docs/misc → crawl/docs/_misc}/dynamic-path.html +15 -16
  104. package/docs/{docs/misc → crawl/docs/_misc}/endpoint.html +15 -16
  105. package/docs/crawl/docs/_misc/formelement-subscriber-removal.html +138 -0
  106. package/docs/{docs/misc → crawl/docs/_misc}/html-integration.html +15 -12
  107. package/docs/crawl/hubs/decorators.html +547 -0
  108. package/docs/crawl/hubs/form-components.html +381 -0
  109. package/docs/crawl/hubs/remote-data.html +452 -0
  110. package/docs/crawl/index.html +103 -0
  111. package/docs/docs-mock-api-sw.js +223 -58
  112. package/docs/docs-mock-api-sw.js.map +4 -4
  113. package/docs/index.html +68 -95
  114. package/docs/llms-full.txt +3610 -2231
  115. package/docs/llms.txt +86 -94
  116. package/docs/robots.txt +10 -11
  117. package/docs/sitemap.xml +84 -78
  118. package/docs/src/core/components/functional/date/date.md +231 -91
  119. package/docs/src/core/components/functional/fetch/fetch.md +83 -66
  120. package/docs/src/core/components/functional/if/if.md +3 -28
  121. package/docs/src/core/components/functional/jsonata/jsonata.md +37 -42
  122. package/docs/src/core/components/functional/list/list.md +43 -99
  123. package/docs/src/core/components/functional/mix/mix.md +26 -31
  124. package/docs/src/core/components/functional/queue/queue.md +61 -40
  125. package/docs/src/core/components/functional/router/router.md +65 -64
  126. package/docs/src/core/components/functional/sdui/component-catalog.gaps.json +1 -1
  127. package/docs/src/core/components/functional/sdui/component-catalog.json +1 -1
  128. package/docs/src/core/components/functional/sdui/example.json +86 -19
  129. package/docs/src/core/components/functional/sdui/sdui-extension-points.md +1 -1
  130. package/docs/src/core/components/functional/sdui/sdui.md +358 -187
  131. package/docs/src/core/components/functional/states/states.md +61 -86
  132. package/docs/src/core/components/functional/submit/submit.md +72 -64
  133. package/docs/src/core/components/functional/value/value.md +22 -34
  134. package/docs/src/core/components/ui/alert/alert.md +58 -48
  135. package/docs/src/core/components/ui/badge/badge.md +34 -27
  136. package/docs/src/core/components/ui/button/button.md +106 -139
  137. package/docs/src/core/components/ui/captcha/captcha.md +32 -17
  138. package/docs/src/core/components/ui/card/card.md +6 -6
  139. package/docs/src/core/components/ui/divider/divider.md +11 -8
  140. package/docs/src/core/components/ui/form/checkbox/checkbox.md +42 -90
  141. package/docs/src/core/components/ui/form/fieldset/fieldset.md +75 -31
  142. package/docs/src/core/components/ui/form/form-actions/form-actions.md +16 -14
  143. package/docs/src/core/components/ui/form/form-layout/form-layout.md +29 -19
  144. package/docs/src/core/components/ui/form/input/input.md +95 -95
  145. package/docs/src/core/components/ui/form/input-autocomplete/input-autocomplete.md +29 -0
  146. package/docs/src/core/components/ui/form/radio/radio.md +34 -55
  147. package/docs/src/core/components/ui/form/select/select.md +45 -60
  148. package/docs/src/core/components/ui/form/switch/switch.md +34 -57
  149. package/docs/src/core/components/ui/form/textarea/textarea.md +38 -55
  150. package/docs/src/core/components/ui/group/group.md +33 -35
  151. package/docs/src/core/components/ui/icon/icon.md +4 -4
  152. package/docs/src/core/components/ui/image/image.md +107 -41
  153. package/docs/src/core/components/ui/link/link.md +6 -6
  154. package/docs/src/core/components/ui/loader/loader.md +55 -30
  155. package/docs/src/core/components/ui/menu/menu.md +27 -27
  156. package/docs/src/core/components/ui/modal/modal.md +96 -72
  157. package/docs/src/core/components/ui/pop/pop.md +158 -80
  158. package/docs/src/core/components/ui/progress/progress.md +2 -2
  159. package/docs/src/core/components/ui/table/table.md +255 -91
  160. package/docs/src/core/components/ui/theme/theme.md +36 -11
  161. package/docs/src/core/components/ui/toast/toast.md +117 -48
  162. package/docs/src/core/components/ui/tooltip/tooltip.md +62 -27
  163. package/docs/{docs/getting-started → src/docs/_core-concept}/dataFlow.md +18 -17
  164. package/docs/src/docs/_core-concept/overview.md +57 -0
  165. package/docs/src/docs/_core-concept/subscriber.md +75 -0
  166. package/docs/src/docs/_decorators/ancestor-attribute.md +128 -0
  167. package/docs/src/docs/_decorators/auto-subscribe.md +202 -0
  168. package/docs/src/docs/_decorators/bind.md +167 -0
  169. package/docs/src/docs/_decorators/get.md +162 -0
  170. package/docs/src/docs/_decorators/handle.md +175 -0
  171. package/docs/src/docs/_decorators/on-assign.md +390 -0
  172. package/docs/src/docs/_decorators/patch.md +70 -0
  173. package/docs/src/docs/_decorators/post.md +146 -0
  174. package/docs/src/docs/_decorators/publish.md +55 -0
  175. package/docs/src/docs/_decorators/put.md +70 -0
  176. package/docs/src/docs/_decorators/subscribe.md +100 -0
  177. package/docs/src/docs/_decorators/wait-for-ancestors.md +163 -0
  178. package/docs/src/docs/_directives/sub.md +91 -0
  179. package/docs/src/docs/{getting-started → _getting-started}/ai-agents.md +3 -3
  180. package/docs/src/docs/_getting-started/concorde-manual-install.md +133 -0
  181. package/docs/src/docs/_getting-started/concorde-outside.md +33 -0
  182. package/docs/{docs/getting-started → src/docs/_getting-started}/create-a-component.md +6 -3
  183. package/docs/src/docs/{getting-started → _getting-started}/my-first-component.md +14 -5
  184. package/docs/src/docs/_getting-started/my-first-subscriber.md +120 -0
  185. package/docs/src/docs/_getting-started/pubsub.md +37 -0
  186. package/docs/src/docs/{getting-started → _getting-started}/start.md +13 -1
  187. package/docs/src/docs/{getting-started → _getting-started}/theming.md +2 -2
  188. package/docs/src/docs/{misc → _misc}/api-configuration.md +12 -10
  189. package/docs/src/docs/{misc → _misc}/dataProviderKey.md +4 -4
  190. package/docs/{docs/misc → src/docs/_misc}/docs-mock-api.md +13 -12
  191. package/docs/{docs/misc → src/docs/_misc}/dynamic-path.md +8 -8
  192. package/docs/{docs/misc → src/docs/_misc}/endpoint.md +8 -8
  193. package/docs/src/docs/_misc/formelement-subscriber-removal.md +115 -0
  194. package/docs/{docs/misc → src/docs/_misc}/html-integration.md +5 -4
  195. package/docs/src/docs/search/docs-search.json +4375 -2420
  196. package/docs/src/tsconfig.declarations.json +22 -0
  197. package/docs/src/tsconfig.emit.json +23 -0
  198. package/docs/src/tsconfig.json +2 -23
  199. package/gitlab/job_github_mirror.sh +39 -0
  200. package/index.html +89 -0
  201. package/package.json +22 -4
  202. package/public/img/og-concorde.jpg +0 -0
  203. package/scripts/ai-init.mjs +104 -379
  204. package/scripts/ai-init.test.mjs +81 -239
  205. package/scripts/docs-markdown-vite-plugin.ts +11 -5
  206. package/scripts/docs-public-url.mjs +6 -0
  207. package/scripts/docs.htaccess +7 -0
  208. package/scripts/generate-cem.mjs +244 -0
  209. package/scripts/generate-cem.test.mjs +122 -0
  210. package/scripts/generate-crawl-docs.mjs +29 -5
  211. package/scripts/generate-sdui-catalog.mjs +11 -10
  212. package/scripts/github-export.mjs +150 -0
  213. package/scripts/post-build-docs.js +3 -0
  214. package/scripts/post-build.mjs +0 -0
  215. package/scripts/pre-publish.mjs +2 -1
  216. package/scripts/site-pages.mjs +212 -0
  217. package/scripts/site-pages.test.mjs +116 -0
  218. package/site-pages/about.md +22 -0
  219. package/site-pages/privacy.md +32 -0
  220. package/src/core/components/functional/date/date.md +1 -1
  221. package/src/core/components/functional/example/example.ts +3 -1
  222. package/src/core/components/functional/if/if.ts +0 -0
  223. package/src/core/components/functional/list/list.demo.ts +0 -0
  224. package/src/core/components/functional/list/list.md +6 -2
  225. package/src/core/components/functional/list/list.ts +17 -4
  226. package/src/core/components/functional/mix/mix.md +0 -0
  227. package/src/core/components/functional/router/router.demo.ts +0 -0
  228. package/src/core/components/functional/router/router.ts +0 -0
  229. package/src/core/components/functional/sdui/SDUIDescriptorTransformer.ts +0 -0
  230. package/src/core/components/functional/sdui/component-catalog.gaps.json +1 -1
  231. package/src/core/components/functional/sdui/component-catalog.json +2 -2
  232. package/src/core/components/functional/sdui/example.json +0 -0
  233. package/src/core/components/functional/sdui/sdui-immutable.spec.ts +74 -0
  234. package/src/core/components/functional/sdui/sdui.ts +33 -8
  235. package/src/core/components/functional/sdui/types.ts +0 -0
  236. package/src/core/components/functional/states/states.ts +0 -0
  237. package/src/core/components/functional/submit/submit.spec.ts +60 -0
  238. package/src/core/components/functional/submit/submit.ts +6 -3
  239. package/src/core/components/functional/subscriber/subscriber.ts +0 -0
  240. package/src/core/components/functional/value/value.md +0 -0
  241. package/src/core/components/functional/value/value.ts +0 -0
  242. package/src/core/components/ui/_css/size.ts +0 -0
  243. package/src/core/components/ui/captcha/altchaStyles.ts +0 -0
  244. package/src/core/components/ui/card/card.md +1 -1
  245. package/src/core/components/ui/form/input/input.md +19 -1
  246. package/src/core/components/ui/form/input/input.ts +8 -2
  247. package/src/core/components/ui/form/radio/radio.md +14 -0
  248. package/src/core/components/ui/image/image.md +17 -17
  249. package/src/core/components/ui/modal/modal.md +2 -2
  250. package/src/core/decorators/subscriber/bind.ts +9 -14
  251. package/src/core/decorators/subscriber/subscribe.ts +15 -9
  252. package/src/core/decorators/subscriber/subscribe.type-test.ts +14 -5
  253. package/src/core/mixins/Subscriber.ts +0 -0
  254. package/src/core/utils/DataBindObserver.ts +0 -0
  255. package/src/core/utils/Objects.ts +0 -0
  256. package/src/core/utils/PublisherProxy.ts +166 -125
  257. package/src/core/utils/deepReadonly.spec.ts +66 -0
  258. package/src/core/utils/deepReadonly.ts +71 -0
  259. package/src/core/utils/immutableValue.spec.ts +54 -0
  260. package/src/core/utils/immutableValue.ts +102 -0
  261. package/src/core/utils/nestedDotForm.spec.ts +88 -0
  262. package/src/core/utils/publisherImmutable.spec.ts +76 -0
  263. package/src/core/utils/route.ts +0 -0
  264. package/src/core/utils/strictGet.spec.ts +61 -0
  265. package/src/core/utils/strictGet.ts +102 -0
  266. package/src/css.d.ts +19 -0
  267. package/src/docs/components/docs-demo-sources.ts +3 -3
  268. package/src/docs/decorators/bind.md +23 -24
  269. package/src/docs/docs-location.spec.ts +10 -0
  270. package/src/docs/docs-location.ts +10 -0
  271. package/src/docs/example/decorators-demo-bind-demos.ts +11 -28
  272. package/src/docs/example/docs-toggle-demos.ts +1 -1
  273. package/src/docs/example/users.ts +0 -0
  274. package/src/docs/getting-started/ai-agents.md +29 -55
  275. package/src/docs/getting-started/dataFlow.md +2 -2
  276. package/src/docs/home/home.ts +3 -1
  277. package/src/docs/misc/publisher-get-immutability-docs-crawl.json +902 -0
  278. package/src/docs/misc/publisher-get-immutability-docs-recheck.json +13 -0
  279. package/src/docs/misc/publisher-get-immutability-study.md +229 -0
  280. package/src/docs/navigation/navigation.ts +5 -1
  281. package/src/docs/search/docs-search.json +358 -58
  282. package/src/docs/search/markdown-renderer.ts +6 -1
  283. package/src/docs/tailwind/css/docs/content.css +4 -5
  284. package/src/tsconfig.declarations.json +22 -0
  285. package/src/tsconfig.emit.json +23 -0
  286. package/src/tsconfig.json +53 -5
  287. package/src/tsconfig.tsbuildinfo +1 -1
  288. package/.taste-skill/after/desktop-fold.jpg +0 -0
  289. package/.taste-skill/after/desktop-page-01.jpg +0 -0
  290. package/.taste-skill/after/desktop-page-02.jpg +0 -0
  291. package/.taste-skill/after/desktop-page-03.jpg +0 -0
  292. package/.taste-skill/after/mobile-fold.jpg +0 -0
  293. package/.taste-skill/after/mobile-page-01.jpg +0 -0
  294. package/.taste-skill/after/report.json +0 -4103
  295. package/.taste-skill/after/tablet-fold.jpg +0 -0
  296. package/.taste-skill/after/tablet-page-01.jpg +0 -0
  297. package/.taste-skill/after/tablet-page-02.jpg +0 -0
  298. package/.taste-skill/before/desktop-fold.jpg +0 -0
  299. package/.taste-skill/before/desktop-page-01.jpg +0 -0
  300. package/.taste-skill/before/desktop-page-02.jpg +0 -0
  301. package/.taste-skill/before/mobile-fold.jpg +0 -0
  302. package/.taste-skill/before/mobile-page-01.jpg +0 -0
  303. package/.taste-skill/before/report.json +0 -2556
  304. package/.taste-skill/before/tablet-fold.jpg +0 -0
  305. package/.taste-skill/before/tablet-page-01.jpg +0 -0
  306. package/.taste-skill/direction.json +0 -510
  307. package/.taste-skill/notes.md +0 -84
  308. package/.taste-skill/prod/desktop-fold.jpg +0 -0
  309. package/.taste-skill/prod/desktop-page-01.jpg +0 -0
  310. package/.taste-skill/prod/desktop-page-02.jpg +0 -0
  311. package/.taste-skill/prod/desktop-page-03.jpg +0 -0
  312. package/.taste-skill/prod/mobile-fold.jpg +0 -0
  313. package/.taste-skill/prod/mobile-page-01.jpg +0 -0
  314. package/.taste-skill/prod/mobile-page-02.jpg +0 -0
  315. package/.taste-skill/prod/report.json +0 -1973
  316. package/.taste-skill/prod/tablet-fold.jpg +0 -0
  317. package/.taste-skill/prod/tablet-page-01.jpg +0 -0
  318. package/.taste-skill/prod/tablet-page-02.jpg +0 -0
  319. package/AUDIT.md +0 -228
  320. package/PLAN-AMELIORATION.md +0 -220
  321. package/PLAN-DOCS-AGENTS.md +0 -80
  322. package/ai/AGENTS.md +0 -56
  323. package/ai/cursor/rules/concorde-menu.mdc +0 -15
  324. package/ai/cursor/rules/concorde-scope.mdc +0 -14
  325. package/ai/cursor/rules/concorde-theme.mdc +0 -13
  326. package/ai/cursor/rules/concorde.mdc +0 -66
  327. package/ai/jetbrains/rules/concorde.md +0 -53
  328. package/ai/skills/concorde-get-set-dp/SKILL.md +0 -194
  329. package/ai/skills/concorde-imports/SKILL.md +0 -78
  330. package/ai/skills/concorde-menu/SKILL.md +0 -74
  331. package/ai/skills/concorde-scope/SKILL.md +0 -70
  332. package/ai/skills/concorde-theme/SKILL.md +0 -57
  333. package/docs/.htaccess +0 -75
  334. package/docs/404.html +0 -15
  335. package/docs/404.md +0 -5
  336. package/docs/assets/index-BgG6FFPt.js +0 -11765
  337. package/docs/assets/index-x89XINSG.css +0 -1
  338. package/docs/core/components/functional/date/date.html +0 -211
  339. package/docs/core/components/functional/date/date.md +0 -150
  340. package/docs/core/components/functional/fetch/fetch.html +0 -180
  341. package/docs/core/components/functional/fetch/fetch.md +0 -108
  342. package/docs/core/components/functional/if/if.html +0 -65
  343. package/docs/core/components/functional/if/if.md +0 -34
  344. package/docs/core/components/functional/jsonata/jsonata.html +0 -110
  345. package/docs/core/components/functional/jsonata/jsonata.md +0 -61
  346. package/docs/core/components/functional/list/list.html +0 -198
  347. package/docs/core/components/functional/list/list.md +0 -121
  348. package/docs/core/components/functional/mix/mix.html +0 -78
  349. package/docs/core/components/functional/mix/mix.md +0 -46
  350. package/docs/core/components/functional/queue/queue.html +0 -155
  351. package/docs/core/components/functional/queue/queue.md +0 -51
  352. package/docs/core/components/functional/router/router.html +0 -154
  353. package/docs/core/components/functional/router/router.md +0 -93
  354. package/docs/core/components/functional/sdui/sdui-extension-points.md +0 -94
  355. package/docs/core/components/functional/sdui/sdui.html +0 -397
  356. package/docs/core/components/functional/sdui/sdui.md +0 -307
  357. package/docs/core/components/functional/states/states.html +0 -141
  358. package/docs/core/components/functional/states/states.md +0 -112
  359. package/docs/core/components/functional/submit/submit.html +0 -178
  360. package/docs/core/components/functional/submit/submit.md +0 -106
  361. package/docs/core/components/functional/subscriber/subscriber.md +0 -91
  362. package/docs/core/components/functional/translation/translation.html +0 -60
  363. package/docs/core/components/functional/translation/translation.md +0 -38
  364. package/docs/core/components/functional/value/value.html +0 -81
  365. package/docs/core/components/functional/value/value.md +0 -47
  366. package/docs/core/components/ui/alert/alert.md +0 -186
  367. package/docs/core/components/ui/alert-messages/alert-messages.md +0 -85
  368. package/docs/core/components/ui/badge/badge.md +0 -181
  369. package/docs/core/components/ui/button/button.html +0 -309
  370. package/docs/core/components/ui/button/button.md +0 -216
  371. package/docs/core/components/ui/captcha/captcha.html +0 -80
  372. package/docs/core/components/ui/captcha/captcha.md +0 -56
  373. package/docs/core/components/ui/card/card.md +0 -215
  374. package/docs/core/components/ui/divider/divider.md +0 -126
  375. package/docs/core/components/ui/form/checkbox/checkbox.html +0 -200
  376. package/docs/core/components/ui/form/checkbox/checkbox.md +0 -125
  377. package/docs/core/components/ui/form/fieldset/fieldset.html +0 -238
  378. package/docs/core/components/ui/form/fieldset/fieldset.md +0 -161
  379. package/docs/core/components/ui/form/form-actions/form-actions.md +0 -98
  380. package/docs/core/components/ui/form/form-layout/form-layout.html +0 -115
  381. package/docs/core/components/ui/form/form-layout/form-layout.md +0 -109
  382. package/docs/core/components/ui/form/input/input.html +0 -235
  383. package/docs/core/components/ui/form/input/input.md +0 -142
  384. package/docs/core/components/ui/form/radio/radio.html +0 -144
  385. package/docs/core/components/ui/form/radio/radio.md +0 -78
  386. package/docs/core/components/ui/form/select/select.html +0 -178
  387. package/docs/core/components/ui/form/select/select.md +0 -86
  388. package/docs/core/components/ui/form/switch/switch.html +0 -146
  389. package/docs/core/components/ui/form/switch/switch.md +0 -80
  390. package/docs/core/components/ui/form/textarea/textarea.html +0 -162
  391. package/docs/core/components/ui/form/textarea/textarea.md +0 -82
  392. package/docs/core/components/ui/group/group.html +0 -113
  393. package/docs/core/components/ui/group/group.md +0 -77
  394. package/docs/core/components/ui/icon/icon.md +0 -214
  395. package/docs/core/components/ui/image/image.html +0 -194
  396. package/docs/core/components/ui/image/image.md +0 -167
  397. package/docs/core/components/ui/link/link.md +0 -81
  398. package/docs/core/components/ui/loader/loader.html +0 -114
  399. package/docs/core/components/ui/loader/loader.md +0 -87
  400. package/docs/core/components/ui/menu/menu.md +0 -370
  401. package/docs/core/components/ui/modal/modal.html +0 -324
  402. package/docs/core/components/ui/modal/modal.md +0 -211
  403. package/docs/core/components/ui/pop/pop.html +0 -250
  404. package/docs/core/components/ui/pop/pop.md +0 -216
  405. package/docs/core/components/ui/progress/progress.md +0 -109
  406. package/docs/core/components/ui/table/table.html +0 -333
  407. package/docs/core/components/ui/table/table.md +0 -267
  408. package/docs/core/components/ui/theme/theme.html +0 -116
  409. package/docs/core/components/ui/theme/theme.md +0 -97
  410. package/docs/core/components/ui/toast/toast.html +0 -185
  411. package/docs/core/components/ui/toast/toast.md +0 -147
  412. package/docs/core/components/ui/tooltip/tooltip.html +0 -112
  413. package/docs/core/components/ui/tooltip/tooltip.md +0 -89
  414. package/docs/docs/decorators/ancestor-attribute.html +0 -71
  415. package/docs/docs/decorators/ancestor-attribute.md +0 -59
  416. package/docs/docs/decorators/auto-subscribe.html +0 -61
  417. package/docs/docs/decorators/auto-subscribe.md +0 -40
  418. package/docs/docs/decorators/bind.html +0 -86
  419. package/docs/docs/decorators/bind.md +0 -77
  420. package/docs/docs/decorators/get.html +0 -166
  421. package/docs/docs/decorators/get.md +0 -160
  422. package/docs/docs/decorators/handle.html +0 -139
  423. package/docs/docs/decorators/handle.md +0 -119
  424. package/docs/docs/decorators/on-assign.html +0 -72
  425. package/docs/docs/decorators/on-assign.md +0 -63
  426. package/docs/docs/decorators/patch.html +0 -76
  427. package/docs/docs/decorators/patch.md +0 -44
  428. package/docs/docs/decorators/post.html +0 -150
  429. package/docs/docs/decorators/post.md +0 -134
  430. package/docs/docs/decorators/publish.html +0 -74
  431. package/docs/docs/decorators/publish.md +0 -56
  432. package/docs/docs/decorators/put.html +0 -83
  433. package/docs/docs/decorators/put.md +0 -51
  434. package/docs/docs/decorators/subscribe.html +0 -91
  435. package/docs/docs/decorators/subscribe.md +0 -87
  436. package/docs/docs/decorators/wait-for-ancestors.html +0 -82
  437. package/docs/docs/decorators/wait-for-ancestors.md +0 -76
  438. package/docs/docs/directives/sub.html +0 -79
  439. package/docs/docs/directives/sub.md +0 -75
  440. package/docs/docs/directives/t.html +0 -91
  441. package/docs/docs/directives/t.md +0 -73
  442. package/docs/docs/getting-started/ai-agents.md +0 -76
  443. package/docs/docs/getting-started/components.html +0 -27
  444. package/docs/docs/getting-started/components.md +0 -5
  445. package/docs/docs/getting-started/installation.html +0 -69
  446. package/docs/docs/getting-started/installation.md +0 -36
  447. package/docs/docs/getting-started/my-first-component.md +0 -227
  448. package/docs/docs/getting-started/start.html +0 -47
  449. package/docs/docs/getting-started/start.md +0 -35
  450. package/docs/docs/getting-started/theming.md +0 -253
  451. package/docs/docs/index.html +0 -99
  452. package/docs/docs/misc/api-configuration.md +0 -79
  453. package/docs/docs/misc/dataProviderKey.md +0 -168
  454. package/docs/hubs/decorators.html +0 -443
  455. package/docs/hubs/form-components.html +0 -404
  456. package/docs/hubs/remote-data.html +0 -371
  457. package/docs/img/archive/concorde-001-2cv.webp +0 -0
  458. package/docs/img/archive/concorde-red-arrows-2002-poster.jpg +0 -0
  459. package/docs/img/archive/concorde-red-arrows-2002.webm +0 -0
  460. package/docs/img/archive/credits.json +0 -28
  461. package/docs/index.md +0 -22
  462. package/docs/src/core/components/functional/translation/translation.md +0 -38
  463. package/docs/src/docs/decorators/ancestor-attribute.md +0 -59
  464. package/docs/src/docs/decorators/auto-subscribe.md +0 -40
  465. package/docs/src/docs/decorators/bind.md +0 -77
  466. package/docs/src/docs/decorators/get.md +0 -160
  467. package/docs/src/docs/decorators/handle.md +0 -119
  468. package/docs/src/docs/decorators/on-assign.md +0 -63
  469. package/docs/src/docs/decorators/patch.md +0 -44
  470. package/docs/src/docs/decorators/post.md +0 -134
  471. package/docs/src/docs/decorators/publish.md +0 -56
  472. package/docs/src/docs/decorators/put.md +0 -51
  473. package/docs/src/docs/decorators/subscribe.md +0 -87
  474. package/docs/src/docs/decorators/wait-for-ancestors.md +0 -76
  475. package/docs/src/docs/directives/sub.md +0 -75
  476. package/docs/src/docs/directives/t.md +0 -73
  477. package/docs/src/docs/getting-started/components.md +0 -5
  478. package/docs/src/docs/getting-started/create-a-component.md +0 -136
  479. package/docs/src/docs/getting-started/dataFlow.md +0 -87
  480. package/docs/src/docs/getting-started/installation.md +0 -36
  481. package/docs/src/docs/misc/docs-mock-api.md +0 -62
  482. package/docs/src/docs/misc/dynamic-path.md +0 -71
  483. package/docs/src/docs/misc/endpoint.md +0 -45
  484. package/docs/src/docs/misc/html-integration.md +0 -14
  485. /package/{docs → dist}/img/concorde/plane_01.jpg +0 -0
  486. /package/{docs → dist}/img/concorde/plane_02.jpg +0 -0
  487. /package/{docs → dist}/img/concorde/plane_03.jpg +0 -0
  488. /package/{docs → dist}/img/concorde/plane_04.jpg +0 -0
  489. /package/{docs → dist}/img/concorde/plane_05.jpg +0 -0
  490. /package/{docs → dist}/img/concorde/plane_06.jpg +0 -0
  491. /package/{docs → dist}/img/concorde/plane_07.jpg +0 -0
  492. /package/{docs → dist}/img/concorde/plane_08.jpg +0 -0
  493. /package/{docs → dist}/img/concorde/plane_09.jpg +0 -0
  494. /package/{docs → dist}/img/concorde/plane_10.jpg +0 -0
  495. /package/{docs → dist}/img/concorde/plane_11.jpg +0 -0
  496. /package/{docs → dist}/img/concorde/plane_12.jpg +0 -0
  497. /package/{docs → dist}/img/concorde/plane_13.jpg +0 -0
@@ -1,4103 +0,0 @@
1
- {
2
- "url": "http://localhost:3010/",
3
- "at": "2026-10-25T21:38:17.016Z",
4
- "allow": [],
5
- "viewports": [
6
- {
7
- "width": 1440,
8
- "height": 900,
9
- "load": "load",
10
- "screens": 9,
11
- "filled": [
12
- 0.5,
13
- 0.51,
14
- 0.35,
15
- 0.4,
16
- 0.37,
17
- 0.24,
18
- 0.74,
19
- 0.38,
20
- 0.31
21
- ],
22
- "motion": {
23
- "elements": 21,
24
- "css": 7,
25
- "transitions": 14,
26
- "scripted": 0,
27
- "videos": 1,
28
- "playingVideos": 1
29
- },
30
- "metrics": {
31
- "viewport": {
32
- "w": 1440,
33
- "h": 900
34
- },
35
- "page": {
36
- "height": 7435,
37
- "screens": 8.3,
38
- "words": 462,
39
- "img": 1,
40
- "video": 1,
41
- "canvas": 0,
42
- "svg": 0,
43
- "sections": 6,
44
- "horizontalOverflow": 0,
45
- "overflowCulprits": [],
46
- "uiFragments": 3,
47
- "uiAbuse": false,
48
- "realPictures": 2,
49
- "videoCount": 1,
50
- "uiPictures": 2,
51
- "pictureSamples": [
52
- "concorde-001-2cv.webp"
53
- ],
54
- "blendText": 0,
55
- "sideScrollers": 0,
56
- "brokenImages": [],
57
- "emoji": [],
58
- "videosNoPoster": 0
59
- },
60
- "hero": {
61
- "text": "Web components for every stack.",
62
- "words": 5,
63
- "chars": 31,
64
- "lines": 2,
65
- "size": 68.3,
66
- "vw": 4.7,
67
- "font": "Schibsted Grotesk",
68
- "weight": 800,
69
- "tracking": -0.05,
70
- "leading": 0.88,
71
- "upper": false,
72
- "italic": false,
73
- "mono": false,
74
- "align": "left",
75
- "position": "left",
76
- "widthRatio": 0.44,
77
- "top": 342,
78
- "tag": "h1",
79
- "kind": "heading"
80
- },
81
- "h1": {
82
- "text": "Web components for every stack.",
83
- "words": 5,
84
- "lines": 2,
85
- "size": 68.3,
86
- "font": "Schibsted Grotesk"
87
- },
88
- "headings": [
89
- {
90
- "text": "Web components for every stack.",
91
- "words": 5,
92
- "chars": 31,
93
- "lines": 2,
94
- "size": 68.3,
95
- "vw": 4.7,
96
- "font": "Schibsted Grotesk",
97
- "weight": 800,
98
- "tracking": -0.05,
99
- "leading": 0.88,
100
- "upper": false,
101
- "italic": false,
102
- "mono": false,
103
- "align": "left",
104
- "position": "left",
105
- "widthRatio": 0.44,
106
- "top": 342,
107
- "tag": "h1",
108
- "kind": "heading"
109
- },
110
- {
111
- "text": "CDG",
112
- "words": 1,
113
- "chars": 3,
114
- "lines": 1,
115
- "size": 48,
116
- "vw": 3.3,
117
- "font": "Schibsted Grotesk",
118
- "weight": 400,
119
- "tracking": 0,
120
- "leading": 1,
121
- "upper": true,
122
- "italic": false,
123
- "mono": false,
124
- "align": "left",
125
- "position": "right",
126
- "widthRatio": 0.07,
127
- "top": 523,
128
- "tag": "div",
129
- "kind": "heading"
130
- },
131
- {
132
- "text": "JFK",
133
- "words": 1,
134
- "chars": 3,
135
- "lines": 1,
136
- "size": 48,
137
- "vw": 3.3,
138
- "font": "Schibsted Grotesk",
139
- "weight": 400,
140
- "tracking": 0,
141
- "leading": 1,
142
- "upper": true,
143
- "italic": false,
144
- "mono": false,
145
- "align": "right",
146
- "position": "right",
147
- "widthRatio": 0.06,
148
- "top": 523,
149
- "tag": "div",
150
- "kind": "heading"
151
- },
152
- {
153
- "text": "Concorde is a Lit library of 41 web components. They bind data, call APIs and theme themselves from plain HTML, in React, Vue, PHP or a static page.",
154
- "words": 28,
155
- "chars": 148,
156
- "lines": 3,
157
- "size": 36,
158
- "vw": 2.5,
159
- "font": "Schibsted Grotesk",
160
- "weight": 600,
161
- "tracking": -0.02,
162
- "leading": 1.12,
163
- "upper": false,
164
- "italic": false,
165
- "mono": false,
166
- "align": "left",
167
- "position": "left",
168
- "widthRatio": 0.71,
169
- "top": 1004,
170
- "tag": "p",
171
- "kind": "statement"
172
- },
173
- {
174
- "text": "41 components, one tag each.",
175
- "words": 5,
176
- "chars": 28,
177
- "lines": 2,
178
- "size": 68,
179
- "vw": 4.7,
180
- "font": "Schibsted Grotesk",
181
- "weight": 800,
182
- "tracking": -0.045,
183
- "leading": 0.95,
184
- "upper": false,
185
- "italic": false,
186
- "mono": false,
187
- "align": "left",
188
- "position": "left",
189
- "widthRatio": 0.34,
190
- "top": 1303,
191
- "tag": "h2",
192
- "kind": "heading"
193
- },
194
- {
195
- "text": "Alert /",
196
- "words": 2,
197
- "chars": 7,
198
- "lines": 1,
199
- "size": 47.4,
200
- "vw": 3.3,
201
- "font": "Schibsted Grotesk",
202
- "weight": 800,
203
- "tracking": -0.03,
204
- "leading": 1.08,
205
- "upper": false,
206
- "italic": false,
207
- "mono": false,
208
- "align": "left",
209
- "position": "left",
210
- "widthRatio": 0.11,
211
- "top": 1476,
212
- "tag": "span",
213
- "kind": "statement"
214
- },
215
- {
216
- "text": "Badge /",
217
- "words": 2,
218
- "chars": 7,
219
- "lines": 1,
220
- "size": 47.4,
221
- "vw": 3.3,
222
- "font": "Schibsted Grotesk",
223
- "weight": 800,
224
- "tracking": -0.03,
225
- "leading": 1.08,
226
- "upper": false,
227
- "italic": false,
228
- "mono": false,
229
- "align": "left",
230
- "position": "left",
231
- "widthRatio": 0.12,
232
- "top": 1476,
233
- "tag": "span",
234
- "kind": "statement"
235
- },
236
- {
237
- "text": "Button /",
238
- "words": 2,
239
- "chars": 8,
240
- "lines": 1,
241
- "size": 47.4,
242
- "vw": 3.3,
243
- "font": "Schibsted Grotesk",
244
- "weight": 800,
245
- "tracking": -0.03,
246
- "leading": 1.08,
247
- "upper": false,
248
- "italic": false,
249
- "mono": false,
250
- "align": "left",
251
- "position": "left",
252
- "widthRatio": 0.13,
253
- "top": 1476,
254
- "tag": "span",
255
- "kind": "statement"
256
- },
257
- {
258
- "text": "Captcha /",
259
- "words": 2,
260
- "chars": 9,
261
- "lines": 1,
262
- "size": 47.4,
263
- "vw": 3.3,
264
- "font": "Schibsted Grotesk",
265
- "weight": 800,
266
- "tracking": -0.03,
267
- "leading": 1.08,
268
- "upper": false,
269
- "italic": false,
270
- "mono": false,
271
- "align": "left",
272
- "position": "center",
273
- "widthRatio": 0.16,
274
- "top": 1476,
275
- "tag": "span",
276
- "kind": "statement"
277
- },
278
- {
279
- "text": "Card /",
280
- "words": 2,
281
- "chars": 6,
282
- "lines": 1,
283
- "size": 47.4,
284
- "vw": 3.3,
285
- "font": "Schibsted Grotesk",
286
- "weight": 800,
287
- "tracking": -0.03,
288
- "leading": 1.08,
289
- "upper": false,
290
- "italic": false,
291
- "mono": false,
292
- "align": "left",
293
- "position": "right",
294
- "widthRatio": 0.1,
295
- "top": 1476,
296
- "tag": "span",
297
- "kind": "statement"
298
- },
299
- {
300
- "text": "Checkbox /",
301
- "words": 2,
302
- "chars": 10,
303
- "lines": 1,
304
- "size": 47.4,
305
- "vw": 3.3,
306
- "font": "Schibsted Grotesk",
307
- "weight": 800,
308
- "tracking": -0.03,
309
- "leading": 1.08,
310
- "upper": false,
311
- "italic": false,
312
- "mono": false,
313
- "align": "left",
314
- "position": "right",
315
- "widthRatio": 0.18,
316
- "top": 1476,
317
- "tag": "span",
318
- "kind": "statement"
319
- },
320
- {
321
- "text": "Divider /",
322
- "words": 2,
323
- "chars": 9,
324
- "lines": 1,
325
- "size": 47.4,
326
- "vw": 3.3,
327
- "font": "Schibsted Grotesk",
328
- "weight": 800,
329
- "tracking": -0.03,
330
- "leading": 1.08,
331
- "upper": false,
332
- "italic": false,
333
- "mono": false,
334
- "align": "left",
335
- "position": "left",
336
- "widthRatio": 0.14,
337
- "top": 1527,
338
- "tag": "span",
339
- "kind": "statement"
340
- },
341
- {
342
- "text": "Fieldset /",
343
- "words": 2,
344
- "chars": 10,
345
- "lines": 1,
346
- "size": 47.4,
347
- "vw": 3.3,
348
- "font": "Schibsted Grotesk",
349
- "weight": 800,
350
- "tracking": -0.03,
351
- "leading": 1.08,
352
- "upper": false,
353
- "italic": false,
354
- "mono": false,
355
- "align": "left",
356
- "position": "left",
357
- "widthRatio": 0.15,
358
- "top": 1527,
359
- "tag": "span",
360
- "kind": "statement"
361
- },
362
- {
363
- "text": "Form actions /",
364
- "words": 3,
365
- "chars": 14,
366
- "lines": 1,
367
- "size": 47.4,
368
- "vw": 3.3,
369
- "font": "Schibsted Grotesk",
370
- "weight": 800,
371
- "tracking": -0.03,
372
- "leading": 1.08,
373
- "upper": false,
374
- "italic": false,
375
- "mono": false,
376
- "align": "left",
377
- "position": "center",
378
- "widthRatio": 0.23,
379
- "top": 1527,
380
- "tag": "span",
381
- "kind": "statement"
382
- },
383
- {
384
- "text": "Form layout /",
385
- "words": 3,
386
- "chars": 13,
387
- "lines": 1,
388
- "size": 47.4,
389
- "vw": 3.3,
390
- "font": "Schibsted Grotesk",
391
- "weight": 800,
392
- "tracking": -0.03,
393
- "leading": 1.08,
394
- "upper": false,
395
- "italic": false,
396
- "mono": false,
397
- "align": "left",
398
- "position": "right",
399
- "widthRatio": 0.21,
400
- "top": 1527,
401
- "tag": "span",
402
- "kind": "statement"
403
- },
404
- {
405
- "text": "Group /",
406
- "words": 2,
407
- "chars": 7,
408
- "lines": 1,
409
- "size": 47.4,
410
- "vw": 3.3,
411
- "font": "Schibsted Grotesk",
412
- "weight": 800,
413
- "tracking": -0.03,
414
- "leading": 1.08,
415
- "upper": false,
416
- "italic": false,
417
- "mono": false,
418
- "align": "left",
419
- "position": "right",
420
- "widthRatio": 0.12,
421
- "top": 1527,
422
- "tag": "span",
423
- "kind": "statement"
424
- },
425
- {
426
- "text": "Icon /",
427
- "words": 2,
428
- "chars": 6,
429
- "lines": 1,
430
- "size": 47.4,
431
- "vw": 3.3,
432
- "font": "Schibsted Grotesk",
433
- "weight": 800,
434
- "tracking": -0.03,
435
- "leading": 1.08,
436
- "upper": false,
437
- "italic": false,
438
- "mono": false,
439
- "align": "left",
440
- "position": "left",
441
- "widthRatio": 0.1,
442
- "top": 1578,
443
- "tag": "span",
444
- "kind": "statement"
445
- },
446
- {
447
- "text": "Image /",
448
- "words": 2,
449
- "chars": 7,
450
- "lines": 1,
451
- "size": 47.4,
452
- "vw": 3.3,
453
- "font": "Schibsted Grotesk",
454
- "weight": 800,
455
- "tracking": -0.03,
456
- "leading": 1.08,
457
- "upper": false,
458
- "italic": false,
459
- "mono": false,
460
- "align": "left",
461
- "position": "left",
462
- "widthRatio": 0.13,
463
- "top": 1578,
464
- "tag": "span",
465
- "kind": "statement"
466
- },
467
- {
468
- "text": "Input /",
469
- "words": 2,
470
- "chars": 7,
471
- "lines": 1,
472
- "size": 47.4,
473
- "vw": 3.3,
474
- "font": "Schibsted Grotesk",
475
- "weight": 800,
476
- "tracking": -0.03,
477
- "leading": 1.08,
478
- "upper": false,
479
- "italic": false,
480
- "mono": false,
481
- "align": "left",
482
- "position": "left",
483
- "widthRatio": 0.11,
484
- "top": 1578,
485
- "tag": "span",
486
- "kind": "statement"
487
- },
488
- {
489
- "text": "Input autocomplete /",
490
- "words": 3,
491
- "chars": 20,
492
- "lines": 1,
493
- "size": 47.4,
494
- "vw": 3.3,
495
- "font": "Schibsted Grotesk",
496
- "weight": 800,
497
- "tracking": -0.03,
498
- "leading": 1.08,
499
- "upper": false,
500
- "italic": false,
501
- "mono": false,
502
- "align": "left",
503
- "position": "center",
504
- "widthRatio": 0.33,
505
- "top": 1578,
506
- "tag": "span",
507
- "kind": "statement"
508
- },
509
- {
510
- "text": "Link /",
511
- "words": 2,
512
- "chars": 6,
513
- "lines": 1,
514
- "size": 47.4,
515
- "vw": 3.3,
516
- "font": "Schibsted Grotesk",
517
- "weight": 800,
518
- "tracking": -0.03,
519
- "leading": 1.08,
520
- "upper": false,
521
- "italic": false,
522
- "mono": false,
523
- "align": "left",
524
- "position": "right",
525
- "widthRatio": 0.09,
526
- "top": 1578,
527
- "tag": "span",
528
- "kind": "statement"
529
- },
530
- {
531
- "text": "Loader /",
532
- "words": 2,
533
- "chars": 8,
534
- "lines": 1,
535
- "size": 47.4,
536
- "vw": 3.3,
537
- "font": "Schibsted Grotesk",
538
- "weight": 800,
539
- "tracking": -0.03,
540
- "leading": 1.08,
541
- "upper": false,
542
- "italic": false,
543
- "mono": false,
544
- "align": "left",
545
- "position": "right",
546
- "widthRatio": 0.14,
547
- "top": 1578,
548
- "tag": "span",
549
- "kind": "statement"
550
- },
551
- {
552
- "text": "Menu /",
553
- "words": 2,
554
- "chars": 6,
555
- "lines": 1,
556
- "size": 47.4,
557
- "vw": 3.3,
558
- "font": "Schibsted Grotesk",
559
- "weight": 800,
560
- "tracking": -0.03,
561
- "leading": 1.08,
562
- "upper": false,
563
- "italic": false,
564
- "mono": false,
565
- "align": "left",
566
- "position": "left",
567
- "widthRatio": 0.12,
568
- "top": 1629,
569
- "tag": "span",
570
- "kind": "statement"
571
- },
572
- {
573
- "text": "Modal /",
574
- "words": 2,
575
- "chars": 7,
576
- "lines": 1,
577
- "size": 47.4,
578
- "vw": 3.3,
579
- "font": "Schibsted Grotesk",
580
- "weight": 800,
581
- "tracking": -0.03,
582
- "leading": 1.08,
583
- "upper": false,
584
- "italic": false,
585
- "mono": false,
586
- "align": "left",
587
- "position": "left",
588
- "widthRatio": 0.13,
589
- "top": 1629,
590
- "tag": "span",
591
- "kind": "statement"
592
- },
593
- {
594
- "text": "Pop /",
595
- "words": 2,
596
- "chars": 5,
597
- "lines": 1,
598
- "size": 47.4,
599
- "vw": 3.3,
600
- "font": "Schibsted Grotesk",
601
- "weight": 800,
602
- "tracking": -0.03,
603
- "leading": 1.08,
604
- "upper": false,
605
- "italic": false,
606
- "mono": false,
607
- "align": "left",
608
- "position": "left",
609
- "widthRatio": 0.09,
610
- "top": 1629,
611
- "tag": "span",
612
- "kind": "statement"
613
- },
614
- {
615
- "text": "Progress /",
616
- "words": 2,
617
- "chars": 10,
618
- "lines": 1,
619
- "size": 47.4,
620
- "vw": 3.3,
621
- "font": "Schibsted Grotesk",
622
- "weight": 800,
623
- "tracking": -0.03,
624
- "leading": 1.08,
625
- "upper": false,
626
- "italic": false,
627
- "mono": false,
628
- "align": "left",
629
- "position": "center",
630
- "widthRatio": 0.17,
631
- "top": 1629,
632
- "tag": "span",
633
- "kind": "statement"
634
- },
635
- {
636
- "text": "Radio /",
637
- "words": 2,
638
- "chars": 7,
639
- "lines": 1,
640
- "size": 47.4,
641
- "vw": 3.3,
642
- "font": "Schibsted Grotesk",
643
- "weight": 800,
644
- "tracking": -0.03,
645
- "leading": 1.08,
646
- "upper": false,
647
- "italic": false,
648
- "mono": false,
649
- "align": "left",
650
- "position": "right",
651
- "widthRatio": 0.12,
652
- "top": 1629,
653
- "tag": "span",
654
- "kind": "statement"
655
- },
656
- {
657
- "text": "Select /",
658
- "words": 2,
659
- "chars": 8,
660
- "lines": 1,
661
- "size": 47.4,
662
- "vw": 3.3,
663
- "font": "Schibsted Grotesk",
664
- "weight": 800,
665
- "tracking": -0.03,
666
- "leading": 1.08,
667
- "upper": false,
668
- "italic": false,
669
- "mono": false,
670
- "align": "left",
671
- "position": "right",
672
- "widthRatio": 0.13,
673
- "top": 1629,
674
- "tag": "span",
675
- "kind": "statement"
676
- },
677
- {
678
- "text": "Switch /",
679
- "words": 2,
680
- "chars": 8,
681
- "lines": 1,
682
- "size": 47.4,
683
- "vw": 3.3,
684
- "font": "Schibsted Grotesk",
685
- "weight": 800,
686
- "tracking": -0.03,
687
- "leading": 1.08,
688
- "upper": false,
689
- "italic": false,
690
- "mono": false,
691
- "align": "left",
692
- "position": "right",
693
- "widthRatio": 0.13,
694
- "top": 1629,
695
- "tag": "span",
696
- "kind": "statement"
697
- },
698
- {
699
- "text": "Table /",
700
- "words": 2,
701
- "chars": 7,
702
- "lines": 1,
703
- "size": 47.4,
704
- "vw": 3.3,
705
- "font": "Schibsted Grotesk",
706
- "weight": 800,
707
- "tracking": -0.03,
708
- "leading": 1.08,
709
- "upper": false,
710
- "italic": false,
711
- "mono": false,
712
- "align": "left",
713
- "position": "left",
714
- "widthRatio": 0.11,
715
- "top": 1680,
716
- "tag": "span",
717
- "kind": "statement"
718
- },
719
- {
720
- "text": "Textarea /",
721
- "words": 2,
722
- "chars": 10,
723
- "lines": 1,
724
- "size": 47.4,
725
- "vw": 3.3,
726
- "font": "Schibsted Grotesk",
727
- "weight": 800,
728
- "tracking": -0.03,
729
- "leading": 1.08,
730
- "upper": false,
731
- "italic": false,
732
- "mono": false,
733
- "align": "left",
734
- "position": "left",
735
- "widthRatio": 0.17,
736
- "top": 1680,
737
- "tag": "span",
738
- "kind": "statement"
739
- },
740
- {
741
- "text": "Theme /",
742
- "words": 2,
743
- "chars": 7,
744
- "lines": 1,
745
- "size": 47.4,
746
- "vw": 3.3,
747
- "font": "Schibsted Grotesk",
748
- "weight": 800,
749
- "tracking": -0.03,
750
- "leading": 1.08,
751
- "upper": false,
752
- "italic": false,
753
- "mono": false,
754
- "align": "left",
755
- "position": "left",
756
- "widthRatio": 0.14,
757
- "top": 1680,
758
- "tag": "span",
759
- "kind": "statement"
760
- },
761
- {
762
- "text": "Toast /",
763
- "words": 2,
764
- "chars": 7,
765
- "lines": 1,
766
- "size": 47.4,
767
- "vw": 3.3,
768
- "font": "Schibsted Grotesk",
769
- "weight": 800,
770
- "tracking": -0.03,
771
- "leading": 1.08,
772
- "upper": false,
773
- "italic": false,
774
- "mono": false,
775
- "align": "left",
776
- "position": "center",
777
- "widthRatio": 0.11,
778
- "top": 1680,
779
- "tag": "span",
780
- "kind": "statement"
781
- },
782
- {
783
- "text": "Tooltip /",
784
- "words": 2,
785
- "chars": 9,
786
- "lines": 1,
787
- "size": 47.4,
788
- "vw": 3.3,
789
- "font": "Schibsted Grotesk",
790
- "weight": 800,
791
- "tracking": -0.03,
792
- "leading": 1.08,
793
- "upper": false,
794
- "italic": false,
795
- "mono": false,
796
- "align": "left",
797
- "position": "right",
798
- "widthRatio": 0.13,
799
- "top": 1680,
800
- "tag": "span",
801
- "kind": "statement"
802
- },
803
- {
804
- "text": "Date /",
805
- "words": 2,
806
- "chars": 6,
807
- "lines": 1,
808
- "size": 47.4,
809
- "vw": 3.3,
810
- "font": "Schibsted Grotesk",
811
- "weight": 800,
812
- "tracking": -0.03,
813
- "leading": 1.08,
814
- "upper": false,
815
- "italic": false,
816
- "mono": false,
817
- "align": "left",
818
- "position": "right",
819
- "widthRatio": 0.1,
820
- "top": 1680,
821
- "tag": "span",
822
- "kind": "statement"
823
- },
824
- {
825
- "text": "Fetch /",
826
- "words": 2,
827
- "chars": 7,
828
- "lines": 1,
829
- "size": 47.4,
830
- "vw": 3.3,
831
- "font": "Schibsted Grotesk",
832
- "weight": 800,
833
- "tracking": -0.03,
834
- "leading": 1.08,
835
- "upper": false,
836
- "italic": false,
837
- "mono": false,
838
- "align": "left",
839
- "position": "right",
840
- "widthRatio": 0.11,
841
- "top": 1680,
842
- "tag": "span",
843
- "kind": "statement"
844
- },
845
- {
846
- "text": "If /",
847
- "words": 2,
848
- "chars": 4,
849
- "lines": 1,
850
- "size": 47.4,
851
- "vw": 3.3,
852
- "font": "Schibsted Grotesk",
853
- "weight": 800,
854
- "tracking": -0.03,
855
- "leading": 1.08,
856
- "upper": false,
857
- "italic": false,
858
- "mono": false,
859
- "align": "left",
860
- "position": "left",
861
- "widthRatio": 0.05,
862
- "top": 1731,
863
- "tag": "span",
864
- "kind": "statement"
865
- },
866
- {
867
- "text": "List /",
868
- "words": 2,
869
- "chars": 6,
870
- "lines": 1,
871
- "size": 47.4,
872
- "vw": 3.3,
873
- "font": "Schibsted Grotesk",
874
- "weight": 800,
875
- "tracking": -0.03,
876
- "leading": 1.08,
877
- "upper": false,
878
- "italic": false,
879
- "mono": false,
880
- "align": "left",
881
- "position": "left",
882
- "widthRatio": 0.08,
883
- "top": 1731,
884
- "tag": "span",
885
- "kind": "statement"
886
- },
887
- {
888
- "text": "Mix /",
889
- "words": 2,
890
- "chars": 5,
891
- "lines": 1,
892
- "size": 47.4,
893
- "vw": 3.3,
894
- "font": "Schibsted Grotesk",
895
- "weight": 800,
896
- "tracking": -0.03,
897
- "leading": 1.08,
898
- "upper": false,
899
- "italic": false,
900
- "mono": false,
901
- "align": "left",
902
- "position": "left",
903
- "widthRatio": 0.09,
904
- "top": 1731,
905
- "tag": "span",
906
- "kind": "statement"
907
- },
908
- {
909
- "text": "Jsonata /",
910
- "words": 2,
911
- "chars": 9,
912
- "lines": 1,
913
- "size": 47.4,
914
- "vw": 3.3,
915
- "font": "Schibsted Grotesk",
916
- "weight": 800,
917
- "tracking": -0.03,
918
- "leading": 1.08,
919
- "upper": false,
920
- "italic": false,
921
- "mono": false,
922
- "align": "left",
923
- "position": "left",
924
- "widthRatio": 0.15,
925
- "top": 1731,
926
- "tag": "span",
927
- "kind": "statement"
928
- }
929
- ],
930
- "headingSummary": {
931
- "count": 49,
932
- "maxLines": 3,
933
- "over2Lines": 0,
934
- "statements": 42,
935
- "centered": 0,
936
- "medianWords": 2,
937
- "mixedFontHeadings": 0
938
- },
939
- "type": {
940
- "families": [
941
- {
942
- "family": "Schibsted Grotesk",
943
- "share": 0.99,
944
- "mono": false
945
- },
946
- {
947
- "family": "ui-monospace",
948
- "share": 0.01,
949
- "mono": false
950
- }
951
- ],
952
- "familyCount": 2,
953
- "sizes": [
954
- 14,
955
- 16,
956
- 18,
957
- 19,
958
- 26,
959
- 36,
960
- 47,
961
- 68,
962
- 97
963
- ],
964
- "sizeCount": 9,
965
- "notLoaded": [],
966
- "body": {
967
- "font": "Schibsted Grotesk",
968
- "size": 19,
969
- "leading": 1.45,
970
- "weight": 400,
971
- "tracking": 0,
972
- "contrast": 13.2
973
- },
974
- "measureChars": 64,
975
- "max": {
976
- "size": 97,
977
- "vw": 6.7,
978
- "font": "Schibsted Grotesk",
979
- "text": "Take your projectsupersonic."
980
- },
981
- "monoShare": 0.01,
982
- "monoProseShare": 0,
983
- "monoFamilies": [
984
- "ui-monospace"
985
- ],
986
- "monoSamples": [],
987
- "microLabels": 0,
988
- "microLabelShare": 0,
989
- "microSamples": [],
990
- "upperShare": 0.02,
991
- "centerShare": 0,
992
- "smallText": 0
993
- },
994
- "eyebrows": [],
995
- "numbered": [],
996
- "color": {
997
- "bodyBg": "#e6e0d4",
998
- "bodyBgHsl": {
999
- "h": 40,
1000
- "s": 0.26,
1001
- "l": 0.87
1002
- },
1003
- "dark": false,
1004
- "sectionBgs": [
1005
- {
1006
- "color": "#ff6b1f",
1007
- "top": 66,
1008
- "hsl": {
1009
- "h": 20,
1010
- "s": 1,
1011
- "l": 0.56
1012
- }
1013
- },
1014
- {
1015
- "color": "#24503c",
1016
- "top": 2117,
1017
- "hsl": {
1018
- "h": 153,
1019
- "s": 0.38,
1020
- "l": 0.23
1021
- }
1022
- }
1023
- ],
1024
- "textColors": [
1025
- {
1026
- "color": "#1b1a17",
1027
- "share": 0.95
1028
- },
1029
- {
1030
- "color": "#e6e0d4",
1031
- "share": 0.03
1032
- },
1033
- {
1034
- "color": "#ffffff",
1035
- "share": 0.01
1036
- },
1037
- {
1038
- "color": "#1f4a36",
1039
- "share": 0.01
1040
- },
1041
- {
1042
- "color": "#ff6b1f",
1043
- "share": 0
1044
- }
1045
- ],
1046
- "button": null,
1047
- "lowContrast": []
1048
- },
1049
- "buttons": {
1050
- "count": 0,
1051
- "inHero": 0,
1052
- "withShadow": 0,
1053
- "withGradient": 0,
1054
- "mono": 0,
1055
- "upper": 0,
1056
- "heroLabels": []
1057
- },
1058
- "surfaces": {
1059
- "shadowStatic": 0,
1060
- "shadowOverlay": 0,
1061
- "shadowSamples": [],
1062
- "gradients": 0,
1063
- "scrims": 0,
1064
- "gradientSamples": [],
1065
- "gradientText": 0,
1066
- "hairlines": 0,
1067
- "hairlineSamples": [],
1068
- "outlinedBoxes": 0,
1069
- "dashed": 0,
1070
- "blurred": 0,
1071
- "roundedBoxes": 0,
1072
- "boxRadius": 0,
1073
- "squareMedia": 2,
1074
- "roundedMedia": 0,
1075
- "mediaRadius": 0,
1076
- "textShadow": 0,
1077
- "cardRows": []
1078
- },
1079
- "heroMedia": [],
1080
- "nav": {
1081
- "links": 0,
1082
- "fixed": false,
1083
- "height": 20,
1084
- "floatingPill": false,
1085
- "blur": false
1086
- },
1087
- "fontsLoaded": [
1088
- "schibsted grotesk"
1089
- ]
1090
- },
1091
- "layout": {
1092
- "viewport": {
1093
- "w": 1440,
1094
- "h": 900
1095
- },
1096
- "pageH": 7435,
1097
- "margins": {
1098
- "left": 40,
1099
- "right": 72
1100
- },
1101
- "sections": [
1102
- {
1103
- "sel": "section.hero",
1104
- "tag": "section",
1105
- "top": 66,
1106
- "height": 834,
1107
- "words": 30,
1108
- "media": 0,
1109
- "middle": 249,
1110
- "heading": {
1111
- "text": "Web components",
1112
- "size": 68,
1113
- "tag": "h1"
1114
- },
1115
- "left": 40,
1116
- "right": 113,
1117
- "textLeft": 40,
1118
- "textRight": 113,
1119
- "fullBleed": false,
1120
- "footer": false,
1121
- "hero": true,
1122
- "continues": false,
1123
- "pinned": false
1124
- },
1125
- {
1126
- "sel": "section.manifesto",
1127
- "tag": "section",
1128
- "top": 900,
1129
- "height": 225,
1130
- "words": 26,
1131
- "media": 0,
1132
- "middle": 0,
1133
- "heading": {
1134
- "text": "Concorde is a Lit library of 41 web components. Th",
1135
- "size": 36,
1136
- "tag": "p"
1137
- },
1138
- "left": 40,
1139
- "right": 537,
1140
- "textLeft": 40,
1141
- "textRight": 537,
1142
- "fullBleed": false,
1143
- "footer": false,
1144
- "hero": false,
1145
- "continues": false,
1146
- "pinned": false
1147
- },
1148
- {
1149
- "sel": "section.index",
1150
- "tag": "section",
1151
- "top": 1125,
1152
- "height": 814,
1153
- "words": 66,
1154
- "media": 0,
1155
- "middle": 0,
1156
- "heading": {
1157
- "text": "41 components,",
1158
- "size": 68,
1159
- "tag": "h2"
1160
- },
1161
- "left": 40,
1162
- "right": 40,
1163
- "textLeft": 40,
1164
- "textRight": 40,
1165
- "fullBleed": false,
1166
- "footer": false,
1167
- "hero": false,
1168
- "continues": false,
1169
- "pinned": false
1170
- },
1171
- {
1172
- "sel": "section.instruments",
1173
- "tag": "section",
1174
- "top": 2117,
1175
- "height": 2464,
1176
- "words": 145,
1177
- "media": 0,
1178
- "middle": 188,
1179
- "heading": {
1180
- "text": "Plumbing in attributes.",
1181
- "size": 68,
1182
- "tag": "h2"
1183
- },
1184
- "left": 116,
1185
- "right": 104,
1186
- "textLeft": 116,
1187
- "textRight": 104,
1188
- "fullBleed": false,
1189
- "footer": false,
1190
- "hero": false,
1191
- "continues": false,
1192
- "pinned": true
1193
- },
1194
- {
1195
- "sel": "div.letter",
1196
- "tag": "div",
1197
- "top": 4758,
1198
- "height": 513,
1199
- "words": 115,
1200
- "media": 0,
1201
- "middle": 0,
1202
- "heading": {
1203
- "text": "The Supersoniks team",
1204
- "size": 26,
1205
- "tag": "p"
1206
- },
1207
- "left": 644,
1208
- "right": 190,
1209
- "textLeft": 644,
1210
- "textRight": 190,
1211
- "fullBleed": false,
1212
- "footer": false,
1213
- "hero": false,
1214
- "continues": true,
1215
- "pinned": false
1216
- },
1217
- {
1218
- "sel": "figure.story-figure.settle",
1219
- "tag": "figure",
1220
- "top": 5358,
1221
- "height": 691,
1222
- "words": 0,
1223
- "media": 1,
1224
- "middle": 0,
1225
- "heading": null,
1226
- "left": null,
1227
- "right": null,
1228
- "textLeft": null,
1229
- "textRight": null,
1230
- "fullBleed": true,
1231
- "footer": false,
1232
- "hero": false,
1233
- "continues": true,
1234
- "pinned": false
1235
- },
1236
- {
1237
- "sel": "section.takeoff",
1238
- "tag": "section",
1239
- "top": 6049,
1240
- "height": 1104,
1241
- "words": 20,
1242
- "media": 0,
1243
- "middle": 0,
1244
- "heading": {
1245
- "text": "Take your project",
1246
- "size": 97,
1247
- "tag": "h2"
1248
- },
1249
- "left": 40,
1250
- "right": 632,
1251
- "textLeft": 40,
1252
- "textRight": 632,
1253
- "fullBleed": false,
1254
- "footer": false,
1255
- "hero": false,
1256
- "continues": false,
1257
- "pinned": false
1258
- },
1259
- {
1260
- "sel": "footer.home-footer",
1261
- "tag": "footer",
1262
- "top": 7153,
1263
- "height": 282,
1264
- "words": 28,
1265
- "media": 0,
1266
- "middle": 461,
1267
- "heading": null,
1268
- "left": 40,
1269
- "right": 40,
1270
- "textLeft": 40,
1271
- "textRight": 40,
1272
- "fullBleed": false,
1273
- "footer": true,
1274
- "hero": false,
1275
- "continues": false,
1276
- "pinned": false
1277
- }
1278
- ],
1279
- "gaps": [
1280
- {
1281
- "top": 652,
1282
- "height": 348
1283
- }
1284
- ],
1285
- "h1s": [
1286
- {
1287
- "text": "Web components for every stack.",
1288
- "size": 68,
1289
- "top": 342,
1290
- "firstScreen": true
1291
- }
1292
- ],
1293
- "edgeText": [],
1294
- "edges": [
1295
- {
1296
- "x": 40,
1297
- "n": 9
1298
- },
1299
- {
1300
- "x": 792,
1301
- "n": 5
1302
- },
1303
- {
1304
- "x": 644,
1305
- "n": 4
1306
- }
1307
- ],
1308
- "leftBlocks": 18,
1309
- "bodySize": 19,
1310
- "stage": false,
1311
- "explains": false,
1312
- "slivers": [],
1313
- "voidShare": 0.27,
1314
- "voidBox": {
1315
- "x": 0,
1316
- "y": 660,
1317
- "w": 1440,
1318
- "h": 240
1319
- }
1320
- },
1321
- "app": null,
1322
- "consoleErrors": []
1323
- },
1324
- {
1325
- "width": 768,
1326
- "height": 1024,
1327
- "load": "load",
1328
- "screens": 7,
1329
- "filled": [
1330
- 0.55,
1331
- 0.37,
1332
- 0.39,
1333
- 0.15,
1334
- 0.64,
1335
- 0.37,
1336
- 0.38
1337
- ],
1338
- "motion": {
1339
- "elements": 21,
1340
- "css": 7,
1341
- "transitions": 14,
1342
- "scripted": 0,
1343
- "videos": 1,
1344
- "playingVideos": 1
1345
- },
1346
- "metrics": {
1347
- "viewport": {
1348
- "w": 768,
1349
- "h": 1024
1350
- },
1351
- "page": {
1352
- "height": 6287,
1353
- "screens": 6.1,
1354
- "words": 462,
1355
- "img": 1,
1356
- "video": 1,
1357
- "canvas": 0,
1358
- "svg": 0,
1359
- "sections": 6,
1360
- "horizontalOverflow": 0,
1361
- "overflowCulprits": [],
1362
- "uiFragments": 3,
1363
- "uiAbuse": false,
1364
- "realPictures": 2,
1365
- "videoCount": 1,
1366
- "uiPictures": 2,
1367
- "pictureSamples": [
1368
- "concorde-001-2cv.webp"
1369
- ],
1370
- "blendText": 0,
1371
- "sideScrollers": 0,
1372
- "brokenImages": [],
1373
- "emoji": [],
1374
- "videosNoPoster": 0
1375
- },
1376
- "hero": {
1377
- "text": "Web components for every stack.",
1378
- "words": 5,
1379
- "chars": 31,
1380
- "lines": 2,
1381
- "size": 60.7,
1382
- "vw": 7.9,
1383
- "font": "Schibsted Grotesk",
1384
- "weight": 800,
1385
- "tracking": -0.05,
1386
- "leading": 0.88,
1387
- "upper": false,
1388
- "italic": false,
1389
- "mono": false,
1390
- "align": "left",
1391
- "position": "center",
1392
- "widthRatio": 0.94,
1393
- "top": 148,
1394
- "tag": "h1",
1395
- "kind": "heading"
1396
- },
1397
- "h1": {
1398
- "text": "Web components for every stack.",
1399
- "words": 5,
1400
- "lines": 2,
1401
- "size": 60.7,
1402
- "font": "Schibsted Grotesk"
1403
- },
1404
- "headings": [
1405
- {
1406
- "text": "Web components for every stack.",
1407
- "words": 5,
1408
- "chars": 31,
1409
- "lines": 2,
1410
- "size": 60.7,
1411
- "vw": 7.9,
1412
- "font": "Schibsted Grotesk",
1413
- "weight": 800,
1414
- "tracking": -0.05,
1415
- "leading": 0.88,
1416
- "upper": false,
1417
- "italic": false,
1418
- "mono": false,
1419
- "align": "left",
1420
- "position": "center",
1421
- "widthRatio": 0.94,
1422
- "top": 148,
1423
- "tag": "h1",
1424
- "kind": "heading"
1425
- },
1426
- {
1427
- "text": "CDG",
1428
- "words": 1,
1429
- "chars": 3,
1430
- "lines": 1,
1431
- "size": 48,
1432
- "vw": 6.3,
1433
- "font": "Schibsted Grotesk",
1434
- "weight": 400,
1435
- "tracking": 0,
1436
- "leading": 1,
1437
- "upper": true,
1438
- "italic": false,
1439
- "mono": false,
1440
- "align": "left",
1441
- "position": "left",
1442
- "widthRatio": 0.13,
1443
- "top": 800,
1444
- "tag": "div",
1445
- "kind": "heading"
1446
- },
1447
- {
1448
- "text": "JFK",
1449
- "words": 1,
1450
- "chars": 3,
1451
- "lines": 1,
1452
- "size": 48,
1453
- "vw": 6.3,
1454
- "font": "Schibsted Grotesk",
1455
- "weight": 400,
1456
- "tracking": 0,
1457
- "leading": 1,
1458
- "upper": true,
1459
- "italic": false,
1460
- "mono": false,
1461
- "align": "right",
1462
- "position": "right",
1463
- "widthRatio": 0.11,
1464
- "top": 800,
1465
- "tag": "div",
1466
- "kind": "heading"
1467
- },
1468
- {
1469
- "text": "Concorde is a Lit library of 41 web components. They bind data, call APIs and theme themselves from plain HTML, in React, Vue, PHP or a static page.",
1470
- "words": 28,
1471
- "chars": 148,
1472
- "lines": 3,
1473
- "size": 27.5,
1474
- "vw": 3.6,
1475
- "font": "Schibsted Grotesk",
1476
- "weight": 600,
1477
- "tracking": -0.02,
1478
- "leading": 1.12,
1479
- "upper": false,
1480
- "italic": false,
1481
- "mono": false,
1482
- "align": "left",
1483
- "position": "center",
1484
- "widthRatio": 0.94,
1485
- "top": 1087,
1486
- "tag": "p",
1487
- "kind": "statement"
1488
- },
1489
- {
1490
- "text": "41 components, one tag each.",
1491
- "words": 5,
1492
- "chars": 28,
1493
- "lines": 2,
1494
- "size": 47,
1495
- "vw": 6.1,
1496
- "font": "Schibsted Grotesk",
1497
- "weight": 800,
1498
- "tracking": -0.045,
1499
- "leading": 0.95,
1500
- "upper": false,
1501
- "italic": false,
1502
- "mono": false,
1503
- "align": "left",
1504
- "position": "left",
1505
- "widthRatio": 0.44,
1506
- "top": 1296,
1507
- "tag": "h2",
1508
- "kind": "heading"
1509
- },
1510
- {
1511
- "text": "Alert /",
1512
- "words": 2,
1513
- "chars": 7,
1514
- "lines": 1,
1515
- "size": 31.2,
1516
- "vw": 4.1,
1517
- "font": "Schibsted Grotesk",
1518
- "weight": 800,
1519
- "tracking": -0.03,
1520
- "leading": 1.08,
1521
- "upper": false,
1522
- "italic": false,
1523
- "mono": false,
1524
- "align": "left",
1525
- "position": "left",
1526
- "widthRatio": 0.13,
1527
- "top": 1430,
1528
- "tag": "span",
1529
- "kind": "statement"
1530
- },
1531
- {
1532
- "text": "Badge /",
1533
- "words": 2,
1534
- "chars": 7,
1535
- "lines": 1,
1536
- "size": 31.2,
1537
- "vw": 4.1,
1538
- "font": "Schibsted Grotesk",
1539
- "weight": 800,
1540
- "tracking": -0.03,
1541
- "leading": 1.08,
1542
- "upper": false,
1543
- "italic": false,
1544
- "mono": false,
1545
- "align": "left",
1546
- "position": "left",
1547
- "widthRatio": 0.15,
1548
- "top": 1430,
1549
- "tag": "span",
1550
- "kind": "statement"
1551
- },
1552
- {
1553
- "text": "Button /",
1554
- "words": 2,
1555
- "chars": 8,
1556
- "lines": 1,
1557
- "size": 31.2,
1558
- "vw": 4.1,
1559
- "font": "Schibsted Grotesk",
1560
- "weight": 800,
1561
- "tracking": -0.03,
1562
- "leading": 1.08,
1563
- "upper": false,
1564
- "italic": false,
1565
- "mono": false,
1566
- "align": "left",
1567
- "position": "left",
1568
- "widthRatio": 0.16,
1569
- "top": 1430,
1570
- "tag": "span",
1571
- "kind": "statement"
1572
- },
1573
- {
1574
- "text": "Captcha /",
1575
- "words": 2,
1576
- "chars": 9,
1577
- "lines": 1,
1578
- "size": 31.2,
1579
- "vw": 4.1,
1580
- "font": "Schibsted Grotesk",
1581
- "weight": 800,
1582
- "tracking": -0.03,
1583
- "leading": 1.08,
1584
- "upper": false,
1585
- "italic": false,
1586
- "mono": false,
1587
- "align": "left",
1588
- "position": "right",
1589
- "widthRatio": 0.19,
1590
- "top": 1430,
1591
- "tag": "span",
1592
- "kind": "statement"
1593
- },
1594
- {
1595
- "text": "Card /",
1596
- "words": 2,
1597
- "chars": 6,
1598
- "lines": 1,
1599
- "size": 31.2,
1600
- "vw": 4.1,
1601
- "font": "Schibsted Grotesk",
1602
- "weight": 800,
1603
- "tracking": -0.03,
1604
- "leading": 1.08,
1605
- "upper": false,
1606
- "italic": false,
1607
- "mono": false,
1608
- "align": "left",
1609
- "position": "right",
1610
- "widthRatio": 0.13,
1611
- "top": 1430,
1612
- "tag": "span",
1613
- "kind": "statement"
1614
- },
1615
- {
1616
- "text": "Checkbox /",
1617
- "words": 2,
1618
- "chars": 10,
1619
- "lines": 1,
1620
- "size": 31.2,
1621
- "vw": 4.1,
1622
- "font": "Schibsted Grotesk",
1623
- "weight": 800,
1624
- "tracking": -0.03,
1625
- "leading": 1.08,
1626
- "upper": false,
1627
- "italic": false,
1628
- "mono": false,
1629
- "align": "left",
1630
- "position": "left",
1631
- "widthRatio": 0.23,
1632
- "top": 1464,
1633
- "tag": "span",
1634
- "kind": "statement"
1635
- },
1636
- {
1637
- "text": "Divider /",
1638
- "words": 2,
1639
- "chars": 9,
1640
- "lines": 1,
1641
- "size": 31.2,
1642
- "vw": 4.1,
1643
- "font": "Schibsted Grotesk",
1644
- "weight": 800,
1645
- "tracking": -0.03,
1646
- "leading": 1.08,
1647
- "upper": false,
1648
- "italic": false,
1649
- "mono": false,
1650
- "align": "left",
1651
- "position": "left",
1652
- "widthRatio": 0.17,
1653
- "top": 1464,
1654
- "tag": "span",
1655
- "kind": "statement"
1656
- },
1657
- {
1658
- "text": "Fieldset /",
1659
- "words": 2,
1660
- "chars": 10,
1661
- "lines": 1,
1662
- "size": 31.2,
1663
- "vw": 4.1,
1664
- "font": "Schibsted Grotesk",
1665
- "weight": 800,
1666
- "tracking": -0.03,
1667
- "leading": 1.08,
1668
- "upper": false,
1669
- "italic": false,
1670
- "mono": false,
1671
- "align": "left",
1672
- "position": "center",
1673
- "widthRatio": 0.19,
1674
- "top": 1464,
1675
- "tag": "span",
1676
- "kind": "statement"
1677
- },
1678
- {
1679
- "text": "Form actions /",
1680
- "words": 3,
1681
- "chars": 14,
1682
- "lines": 1,
1683
- "size": 31.2,
1684
- "vw": 4.1,
1685
- "font": "Schibsted Grotesk",
1686
- "weight": 800,
1687
- "tracking": -0.03,
1688
- "leading": 1.08,
1689
- "upper": false,
1690
- "italic": false,
1691
- "mono": false,
1692
- "align": "left",
1693
- "position": "right",
1694
- "widthRatio": 0.28,
1695
- "top": 1464,
1696
- "tag": "span",
1697
- "kind": "statement"
1698
- },
1699
- {
1700
- "text": "Form layout /",
1701
- "words": 3,
1702
- "chars": 13,
1703
- "lines": 1,
1704
- "size": 31.2,
1705
- "vw": 4.1,
1706
- "font": "Schibsted Grotesk",
1707
- "weight": 800,
1708
- "tracking": -0.03,
1709
- "leading": 1.08,
1710
- "upper": false,
1711
- "italic": false,
1712
- "mono": false,
1713
- "align": "left",
1714
- "position": "left",
1715
- "widthRatio": 0.26,
1716
- "top": 1498,
1717
- "tag": "span",
1718
- "kind": "statement"
1719
- },
1720
- {
1721
- "text": "Group /",
1722
- "words": 2,
1723
- "chars": 7,
1724
- "lines": 1,
1725
- "size": 31.2,
1726
- "vw": 4.1,
1727
- "font": "Schibsted Grotesk",
1728
- "weight": 800,
1729
- "tracking": -0.03,
1730
- "leading": 1.08,
1731
- "upper": false,
1732
- "italic": false,
1733
- "mono": false,
1734
- "align": "left",
1735
- "position": "left",
1736
- "widthRatio": 0.15,
1737
- "top": 1498,
1738
- "tag": "span",
1739
- "kind": "statement"
1740
- },
1741
- {
1742
- "text": "Icon /",
1743
- "words": 2,
1744
- "chars": 6,
1745
- "lines": 1,
1746
- "size": 31.2,
1747
- "vw": 4.1,
1748
- "font": "Schibsted Grotesk",
1749
- "weight": 800,
1750
- "tracking": -0.03,
1751
- "leading": 1.08,
1752
- "upper": false,
1753
- "italic": false,
1754
- "mono": false,
1755
- "align": "left",
1756
- "position": "center",
1757
- "widthRatio": 0.12,
1758
- "top": 1498,
1759
- "tag": "span",
1760
- "kind": "statement"
1761
- },
1762
- {
1763
- "text": "Image /",
1764
- "words": 2,
1765
- "chars": 7,
1766
- "lines": 1,
1767
- "size": 31.2,
1768
- "vw": 4.1,
1769
- "font": "Schibsted Grotesk",
1770
- "weight": 800,
1771
- "tracking": -0.03,
1772
- "leading": 1.08,
1773
- "upper": false,
1774
- "italic": false,
1775
- "mono": false,
1776
- "align": "left",
1777
- "position": "right",
1778
- "widthRatio": 0.16,
1779
- "top": 1498,
1780
- "tag": "span",
1781
- "kind": "statement"
1782
- },
1783
- {
1784
- "text": "Input /",
1785
- "words": 2,
1786
- "chars": 7,
1787
- "lines": 1,
1788
- "size": 31.2,
1789
- "vw": 4.1,
1790
- "font": "Schibsted Grotesk",
1791
- "weight": 800,
1792
- "tracking": -0.03,
1793
- "leading": 1.08,
1794
- "upper": false,
1795
- "italic": false,
1796
- "mono": false,
1797
- "align": "left",
1798
- "position": "right",
1799
- "widthRatio": 0.14,
1800
- "top": 1498,
1801
- "tag": "span",
1802
- "kind": "statement"
1803
- },
1804
- {
1805
- "text": "Input autocomplete /",
1806
- "words": 3,
1807
- "chars": 20,
1808
- "lines": 1,
1809
- "size": 31.2,
1810
- "vw": 4.1,
1811
- "font": "Schibsted Grotesk",
1812
- "weight": 800,
1813
- "tracking": -0.03,
1814
- "leading": 1.08,
1815
- "upper": false,
1816
- "italic": false,
1817
- "mono": false,
1818
- "align": "left",
1819
- "position": "left",
1820
- "widthRatio": 0.41,
1821
- "top": 1531,
1822
- "tag": "span",
1823
- "kind": "statement"
1824
- },
1825
- {
1826
- "text": "Link /",
1827
- "words": 2,
1828
- "chars": 6,
1829
- "lines": 1,
1830
- "size": 31.2,
1831
- "vw": 4.1,
1832
- "font": "Schibsted Grotesk",
1833
- "weight": 800,
1834
- "tracking": -0.03,
1835
- "leading": 1.08,
1836
- "upper": false,
1837
- "italic": false,
1838
- "mono": false,
1839
- "align": "left",
1840
- "position": "center",
1841
- "widthRatio": 0.11,
1842
- "top": 1531,
1843
- "tag": "span",
1844
- "kind": "statement"
1845
- },
1846
- {
1847
- "text": "Loader /",
1848
- "words": 2,
1849
- "chars": 8,
1850
- "lines": 1,
1851
- "size": 31.2,
1852
- "vw": 4.1,
1853
- "font": "Schibsted Grotesk",
1854
- "weight": 800,
1855
- "tracking": -0.03,
1856
- "leading": 1.08,
1857
- "upper": false,
1858
- "italic": false,
1859
- "mono": false,
1860
- "align": "left",
1861
- "position": "right",
1862
- "widthRatio": 0.17,
1863
- "top": 1531,
1864
- "tag": "span",
1865
- "kind": "statement"
1866
- },
1867
- {
1868
- "text": "Menu /",
1869
- "words": 2,
1870
- "chars": 6,
1871
- "lines": 1,
1872
- "size": 31.2,
1873
- "vw": 4.1,
1874
- "font": "Schibsted Grotesk",
1875
- "weight": 800,
1876
- "tracking": -0.03,
1877
- "leading": 1.08,
1878
- "upper": false,
1879
- "italic": false,
1880
- "mono": false,
1881
- "align": "left",
1882
- "position": "right",
1883
- "widthRatio": 0.14,
1884
- "top": 1531,
1885
- "tag": "span",
1886
- "kind": "statement"
1887
- },
1888
- {
1889
- "text": "Modal /",
1890
- "words": 2,
1891
- "chars": 7,
1892
- "lines": 1,
1893
- "size": 31.2,
1894
- "vw": 4.1,
1895
- "font": "Schibsted Grotesk",
1896
- "weight": 800,
1897
- "tracking": -0.03,
1898
- "leading": 1.08,
1899
- "upper": false,
1900
- "italic": false,
1901
- "mono": false,
1902
- "align": "left",
1903
- "position": "left",
1904
- "widthRatio": 0.15,
1905
- "top": 1565,
1906
- "tag": "span",
1907
- "kind": "statement"
1908
- },
1909
- {
1910
- "text": "Pop /",
1911
- "words": 2,
1912
- "chars": 5,
1913
- "lines": 1,
1914
- "size": 31.2,
1915
- "vw": 4.1,
1916
- "font": "Schibsted Grotesk",
1917
- "weight": 800,
1918
- "tracking": -0.03,
1919
- "leading": 1.08,
1920
- "upper": false,
1921
- "italic": false,
1922
- "mono": false,
1923
- "align": "left",
1924
- "position": "left",
1925
- "widthRatio": 0.11,
1926
- "top": 1565,
1927
- "tag": "span",
1928
- "kind": "statement"
1929
- },
1930
- {
1931
- "text": "Progress /",
1932
- "words": 2,
1933
- "chars": 10,
1934
- "lines": 1,
1935
- "size": 31.2,
1936
- "vw": 4.1,
1937
- "font": "Schibsted Grotesk",
1938
- "weight": 800,
1939
- "tracking": -0.03,
1940
- "leading": 1.08,
1941
- "upper": false,
1942
- "italic": false,
1943
- "mono": false,
1944
- "align": "left",
1945
- "position": "left",
1946
- "widthRatio": 0.21,
1947
- "top": 1565,
1948
- "tag": "span",
1949
- "kind": "statement"
1950
- },
1951
- {
1952
- "text": "Radio /",
1953
- "words": 2,
1954
- "chars": 7,
1955
- "lines": 1,
1956
- "size": 31.2,
1957
- "vw": 4.1,
1958
- "font": "Schibsted Grotesk",
1959
- "weight": 800,
1960
- "tracking": -0.03,
1961
- "leading": 1.08,
1962
- "upper": false,
1963
- "italic": false,
1964
- "mono": false,
1965
- "align": "left",
1966
- "position": "right",
1967
- "widthRatio": 0.14,
1968
- "top": 1565,
1969
- "tag": "span",
1970
- "kind": "statement"
1971
- },
1972
- {
1973
- "text": "Select /",
1974
- "words": 2,
1975
- "chars": 8,
1976
- "lines": 1,
1977
- "size": 31.2,
1978
- "vw": 4.1,
1979
- "font": "Schibsted Grotesk",
1980
- "weight": 800,
1981
- "tracking": -0.03,
1982
- "leading": 1.08,
1983
- "upper": false,
1984
- "italic": false,
1985
- "mono": false,
1986
- "align": "left",
1987
- "position": "right",
1988
- "widthRatio": 0.15,
1989
- "top": 1565,
1990
- "tag": "span",
1991
- "kind": "statement"
1992
- },
1993
- {
1994
- "text": "Switch /",
1995
- "words": 2,
1996
- "chars": 8,
1997
- "lines": 1,
1998
- "size": 31.2,
1999
- "vw": 4.1,
2000
- "font": "Schibsted Grotesk",
2001
- "weight": 800,
2002
- "tracking": -0.03,
2003
- "leading": 1.08,
2004
- "upper": false,
2005
- "italic": false,
2006
- "mono": false,
2007
- "align": "left",
2008
- "position": "left",
2009
- "widthRatio": 0.17,
2010
- "top": 1599,
2011
- "tag": "span",
2012
- "kind": "statement"
2013
- },
2014
- {
2015
- "text": "Table /",
2016
- "words": 2,
2017
- "chars": 7,
2018
- "lines": 1,
2019
- "size": 31.2,
2020
- "vw": 4.1,
2021
- "font": "Schibsted Grotesk",
2022
- "weight": 800,
2023
- "tracking": -0.03,
2024
- "leading": 1.08,
2025
- "upper": false,
2026
- "italic": false,
2027
- "mono": false,
2028
- "align": "left",
2029
- "position": "left",
2030
- "widthRatio": 0.14,
2031
- "top": 1599,
2032
- "tag": "span",
2033
- "kind": "statement"
2034
- },
2035
- {
2036
- "text": "Textarea /",
2037
- "words": 2,
2038
- "chars": 10,
2039
- "lines": 1,
2040
- "size": 31.2,
2041
- "vw": 4.1,
2042
- "font": "Schibsted Grotesk",
2043
- "weight": 800,
2044
- "tracking": -0.03,
2045
- "leading": 1.08,
2046
- "upper": false,
2047
- "italic": false,
2048
- "mono": false,
2049
- "align": "left",
2050
- "position": "center",
2051
- "widthRatio": 0.21,
2052
- "top": 1599,
2053
- "tag": "span",
2054
- "kind": "statement"
2055
- },
2056
- {
2057
- "text": "Theme /",
2058
- "words": 2,
2059
- "chars": 7,
2060
- "lines": 1,
2061
- "size": 31.2,
2062
- "vw": 4.1,
2063
- "font": "Schibsted Grotesk",
2064
- "weight": 800,
2065
- "tracking": -0.03,
2066
- "leading": 1.08,
2067
- "upper": false,
2068
- "italic": false,
2069
- "mono": false,
2070
- "align": "left",
2071
- "position": "right",
2072
- "widthRatio": 0.17,
2073
- "top": 1599,
2074
- "tag": "span",
2075
- "kind": "statement"
2076
- },
2077
- {
2078
- "text": "Toast /",
2079
- "words": 2,
2080
- "chars": 7,
2081
- "lines": 1,
2082
- "size": 31.2,
2083
- "vw": 4.1,
2084
- "font": "Schibsted Grotesk",
2085
- "weight": 800,
2086
- "tracking": -0.03,
2087
- "leading": 1.08,
2088
- "upper": false,
2089
- "italic": false,
2090
- "mono": false,
2091
- "align": "left",
2092
- "position": "right",
2093
- "widthRatio": 0.14,
2094
- "top": 1599,
2095
- "tag": "span",
2096
- "kind": "statement"
2097
- },
2098
- {
2099
- "text": "Tooltip /",
2100
- "words": 2,
2101
- "chars": 9,
2102
- "lines": 1,
2103
- "size": 31.2,
2104
- "vw": 4.1,
2105
- "font": "Schibsted Grotesk",
2106
- "weight": 800,
2107
- "tracking": -0.03,
2108
- "leading": 1.08,
2109
- "upper": false,
2110
- "italic": false,
2111
- "mono": false,
2112
- "align": "left",
2113
- "position": "left",
2114
- "widthRatio": 0.17,
2115
- "top": 1633,
2116
- "tag": "span",
2117
- "kind": "statement"
2118
- },
2119
- {
2120
- "text": "Date /",
2121
- "words": 2,
2122
- "chars": 6,
2123
- "lines": 1,
2124
- "size": 31.2,
2125
- "vw": 4.1,
2126
- "font": "Schibsted Grotesk",
2127
- "weight": 800,
2128
- "tracking": -0.03,
2129
- "leading": 1.08,
2130
- "upper": false,
2131
- "italic": false,
2132
- "mono": false,
2133
- "align": "left",
2134
- "position": "left",
2135
- "widthRatio": 0.12,
2136
- "top": 1633,
2137
- "tag": "span",
2138
- "kind": "statement"
2139
- },
2140
- {
2141
- "text": "Fetch /",
2142
- "words": 2,
2143
- "chars": 7,
2144
- "lines": 1,
2145
- "size": 31.2,
2146
- "vw": 4.1,
2147
- "font": "Schibsted Grotesk",
2148
- "weight": 800,
2149
- "tracking": -0.03,
2150
- "leading": 1.08,
2151
- "upper": false,
2152
- "italic": false,
2153
- "mono": false,
2154
- "align": "left",
2155
- "position": "left",
2156
- "widthRatio": 0.14,
2157
- "top": 1633,
2158
- "tag": "span",
2159
- "kind": "statement"
2160
- },
2161
- {
2162
- "text": "If /",
2163
- "words": 2,
2164
- "chars": 4,
2165
- "lines": 1,
2166
- "size": 31.2,
2167
- "vw": 4.1,
2168
- "font": "Schibsted Grotesk",
2169
- "weight": 800,
2170
- "tracking": -0.03,
2171
- "leading": 1.08,
2172
- "upper": false,
2173
- "italic": false,
2174
- "mono": false,
2175
- "align": "left",
2176
- "position": "center",
2177
- "widthRatio": 0.06,
2178
- "top": 1633,
2179
- "tag": "span",
2180
- "kind": "statement"
2181
- },
2182
- {
2183
- "text": "List /",
2184
- "words": 2,
2185
- "chars": 6,
2186
- "lines": 1,
2187
- "size": 31.2,
2188
- "vw": 4.1,
2189
- "font": "Schibsted Grotesk",
2190
- "weight": 800,
2191
- "tracking": -0.03,
2192
- "leading": 1.08,
2193
- "upper": false,
2194
- "italic": false,
2195
- "mono": false,
2196
- "align": "left",
2197
- "position": "right",
2198
- "widthRatio": 0.1,
2199
- "top": 1633,
2200
- "tag": "span",
2201
- "kind": "statement"
2202
- },
2203
- {
2204
- "text": "Mix /",
2205
- "words": 2,
2206
- "chars": 5,
2207
- "lines": 1,
2208
- "size": 31.2,
2209
- "vw": 4.1,
2210
- "font": "Schibsted Grotesk",
2211
- "weight": 800,
2212
- "tracking": -0.03,
2213
- "leading": 1.08,
2214
- "upper": false,
2215
- "italic": false,
2216
- "mono": false,
2217
- "align": "left",
2218
- "position": "right",
2219
- "widthRatio": 0.11,
2220
- "top": 1633,
2221
- "tag": "span",
2222
- "kind": "statement"
2223
- },
2224
- {
2225
- "text": "Jsonata /",
2226
- "words": 2,
2227
- "chars": 9,
2228
- "lines": 1,
2229
- "size": 31.2,
2230
- "vw": 4.1,
2231
- "font": "Schibsted Grotesk",
2232
- "weight": 800,
2233
- "tracking": -0.03,
2234
- "leading": 1.08,
2235
- "upper": false,
2236
- "italic": false,
2237
- "mono": false,
2238
- "align": "left",
2239
- "position": "right",
2240
- "widthRatio": 0.19,
2241
- "top": 1633,
2242
- "tag": "span",
2243
- "kind": "statement"
2244
- }
2245
- ],
2246
- "headingSummary": {
2247
- "count": 49,
2248
- "maxLines": 3,
2249
- "over2Lines": 0,
2250
- "statements": 42,
2251
- "centered": 0,
2252
- "medianWords": 2,
2253
- "mixedFontHeadings": 0
2254
- },
2255
- "type": {
2256
- "families": [
2257
- {
2258
- "family": "Schibsted Grotesk",
2259
- "share": 0.99,
2260
- "mono": false
2261
- },
2262
- {
2263
- "family": "ui-monospace",
2264
- "share": 0.01,
2265
- "mono": false
2266
- }
2267
- ],
2268
- "familyCount": 2,
2269
- "sizes": [
2270
- 14,
2271
- 16,
2272
- 18,
2273
- 23,
2274
- 28,
2275
- 31,
2276
- 47,
2277
- 61
2278
- ],
2279
- "sizeCount": 8,
2280
- "notLoaded": [],
2281
- "body": {
2282
- "font": "Schibsted Grotesk",
2283
- "size": 17.9,
2284
- "leading": 1.45,
2285
- "weight": 400,
2286
- "tracking": 0,
2287
- "contrast": 13.2
2288
- },
2289
- "measureChars": 68,
2290
- "max": {
2291
- "size": 60.7,
2292
- "vw": 7.9,
2293
- "font": "Schibsted Grotesk",
2294
- "text": "Web componentsfor every stack."
2295
- },
2296
- "monoShare": 0.01,
2297
- "monoProseShare": 0,
2298
- "monoFamilies": [
2299
- "ui-monospace"
2300
- ],
2301
- "monoSamples": [],
2302
- "microLabels": 0,
2303
- "microLabelShare": 0,
2304
- "microSamples": [],
2305
- "upperShare": 0.02,
2306
- "centerShare": 0,
2307
- "smallText": 0
2308
- },
2309
- "eyebrows": [],
2310
- "numbered": [],
2311
- "color": {
2312
- "bodyBg": "#e6e0d4",
2313
- "bodyBgHsl": {
2314
- "h": 40,
2315
- "s": 0.26,
2316
- "l": 0.87
2317
- },
2318
- "dark": false,
2319
- "sectionBgs": [
2320
- {
2321
- "color": "#ff6b1f",
2322
- "top": 472,
2323
- "hsl": {
2324
- "h": 20,
2325
- "s": 1,
2326
- "l": 0.56
2327
- }
2328
- },
2329
- {
2330
- "color": "#24503c",
2331
- "top": 2031,
2332
- "hsl": {
2333
- "h": 153,
2334
- "s": 0.38,
2335
- "l": 0.23
2336
- }
2337
- },
2338
- {
2339
- "color": "#e6e0d4",
2340
- "top": 2063,
2341
- "hsl": {
2342
- "h": 40,
2343
- "s": 0.26,
2344
- "l": 0.87
2345
- }
2346
- }
2347
- ],
2348
- "textColors": [
2349
- {
2350
- "color": "#1b1a17",
2351
- "share": 0.95
2352
- },
2353
- {
2354
- "color": "#e6e0d4",
2355
- "share": 0.03
2356
- },
2357
- {
2358
- "color": "#ffffff",
2359
- "share": 0.01
2360
- },
2361
- {
2362
- "color": "#1f4a36",
2363
- "share": 0.01
2364
- },
2365
- {
2366
- "color": "#ff6b1f",
2367
- "share": 0
2368
- }
2369
- ],
2370
- "button": null,
2371
- "lowContrast": []
2372
- },
2373
- "buttons": {
2374
- "count": 0,
2375
- "inHero": 0,
2376
- "withShadow": 0,
2377
- "withGradient": 0,
2378
- "mono": 0,
2379
- "upper": 0,
2380
- "heroLabels": []
2381
- },
2382
- "surfaces": {
2383
- "shadowStatic": 0,
2384
- "shadowOverlay": 0,
2385
- "shadowSamples": [],
2386
- "gradients": 0,
2387
- "scrims": 0,
2388
- "gradientSamples": [],
2389
- "gradientText": 0,
2390
- "hairlines": 0,
2391
- "hairlineSamples": [],
2392
- "outlinedBoxes": 0,
2393
- "dashed": 0,
2394
- "blurred": 0,
2395
- "roundedBoxes": 0,
2396
- "boxRadius": 0,
2397
- "squareMedia": 2,
2398
- "roundedMedia": 0,
2399
- "mediaRadius": 0,
2400
- "textShadow": 0,
2401
- "cardRows": []
2402
- },
2403
- "heroMedia": [],
2404
- "nav": {
2405
- "links": 0,
2406
- "fixed": false,
2407
- "height": 20,
2408
- "floatingPill": false,
2409
- "blur": false
2410
- },
2411
- "fontsLoaded": [
2412
- "schibsted grotesk"
2413
- ]
2414
- },
2415
- "layout": {
2416
- "viewport": {
2417
- "w": 768,
2418
- "h": 1024
2419
- },
2420
- "pageH": 6287,
2421
- "margins": {
2422
- "left": 24,
2423
- "right": 34
2424
- },
2425
- "sections": [
2426
- {
2427
- "sel": "section.hero",
2428
- "tag": "section",
2429
- "top": 66,
2430
- "height": 950,
2431
- "words": 30,
2432
- "media": 0,
2433
- "middle": 20,
2434
- "heading": {
2435
- "text": "Web components",
2436
- "size": 61,
2437
- "tag": "h1"
2438
- },
2439
- "left": 24,
2440
- "right": 137,
2441
- "textLeft": 24,
2442
- "textRight": 137,
2443
- "fullBleed": false,
2444
- "footer": false,
2445
- "hero": true,
2446
- "continues": false,
2447
- "pinned": false
2448
- },
2449
- {
2450
- "sel": "section.manifesto",
2451
- "tag": "section",
2452
- "top": 1016,
2453
- "height": 163,
2454
- "words": 26,
2455
- "media": 0,
2456
- "middle": 0,
2457
- "heading": {
2458
- "text": "Concorde is a Lit library of 41 web components. Th",
2459
- "size": 27,
2460
- "tag": "p"
2461
- },
2462
- "left": 24,
2463
- "right": 86,
2464
- "textLeft": 24,
2465
- "textRight": 86,
2466
- "fullBleed": false,
2467
- "footer": false,
2468
- "hero": false,
2469
- "continues": false,
2470
- "pinned": false
2471
- },
2472
- {
2473
- "sel": "section.index",
2474
- "tag": "section",
2475
- "top": 1179,
2476
- "height": 658,
2477
- "words": 66,
2478
- "media": 0,
2479
- "middle": 0,
2480
- "heading": {
2481
- "text": "41 components,",
2482
- "size": 47,
2483
- "tag": "h2"
2484
- },
2485
- "left": 24,
2486
- "right": 24,
2487
- "textLeft": 24,
2488
- "textRight": 24,
2489
- "fullBleed": false,
2490
- "footer": false,
2491
- "hero": false,
2492
- "continues": false,
2493
- "pinned": false
2494
- },
2495
- {
2496
- "sel": "div.instr-field",
2497
- "tag": "div",
2498
- "top": 2031,
2499
- "height": 523,
2500
- "words": 35,
2501
- "media": 0,
2502
- "middle": 43,
2503
- "heading": null,
2504
- "left": 140,
2505
- "right": 140,
2506
- "textLeft": 140,
2507
- "textRight": 140,
2508
- "fullBleed": false,
2509
- "footer": false,
2510
- "hero": false,
2511
- "continues": true,
2512
- "pinned": false
2513
- },
2514
- {
2515
- "sel": "div.instr-blocks",
2516
- "tag": "div",
2517
- "top": 2553,
2518
- "height": 1429,
2519
- "words": 107,
2520
- "media": 0,
2521
- "middle": 0,
2522
- "heading": null,
2523
- "left": 24,
2524
- "right": 223,
2525
- "textLeft": 24,
2526
- "textRight": 223,
2527
- "fullBleed": false,
2528
- "footer": false,
2529
- "hero": false,
2530
- "continues": true,
2531
- "pinned": false
2532
- },
2533
- {
2534
- "sel": "section.story",
2535
- "tag": "section",
2536
- "top": 3982,
2537
- "height": 1064,
2538
- "words": 119,
2539
- "media": 1,
2540
- "middle": 0,
2541
- "heading": {
2542
- "text": "Why we built it.",
2543
- "size": 47,
2544
- "tag": "h2"
2545
- },
2546
- "left": 24,
2547
- "right": 139,
2548
- "textLeft": 24,
2549
- "textRight": 139,
2550
- "fullBleed": true,
2551
- "footer": false,
2552
- "hero": false,
2553
- "continues": false,
2554
- "pinned": false
2555
- },
2556
- {
2557
- "sel": "section.takeoff",
2558
- "tag": "section",
2559
- "top": 5046,
2560
- "height": 999,
2561
- "words": 20,
2562
- "media": 1,
2563
- "middle": 0,
2564
- "heading": {
2565
- "text": "Take your project",
2566
- "size": 61,
2567
- "tag": "h2"
2568
- },
2569
- "left": 0,
2570
- "right": 224,
2571
- "textLeft": 24,
2572
- "textRight": 224,
2573
- "fullBleed": false,
2574
- "footer": false,
2575
- "hero": false,
2576
- "continues": false,
2577
- "pinned": false
2578
- },
2579
- {
2580
- "sel": "footer.home-footer",
2581
- "tag": "footer",
2582
- "top": 6045,
2583
- "height": 242,
2584
- "words": 28,
2585
- "media": 0,
2586
- "middle": 0,
2587
- "heading": null,
2588
- "left": 24,
2589
- "right": 24,
2590
- "textLeft": 24,
2591
- "textRight": 24,
2592
- "fullBleed": false,
2593
- "footer": true,
2594
- "hero": false,
2595
- "continues": false,
2596
- "pinned": false
2597
- }
2598
- ],
2599
- "gaps": [
2600
- {
2601
- "top": 328,
2602
- "height": 348
2603
- },
2604
- {
2605
- "top": 3304,
2606
- "height": 348
2607
- }
2608
- ],
2609
- "h1s": [
2610
- {
2611
- "text": "Web components for every stack.",
2612
- "size": 61,
2613
- "top": 148,
2614
- "firstScreen": true
2615
- }
2616
- ],
2617
- "edgeText": [],
2618
- "edges": [
2619
- {
2620
- "x": 24,
2621
- "n": 18
2622
- }
2623
- ],
2624
- "leftBlocks": 18,
2625
- "bodySize": 18,
2626
- "stage": false,
2627
- "explains": false,
2628
- "slivers": [],
2629
- "voidShare": 0,
2630
- "voidBox": null
2631
- },
2632
- "app": null,
2633
- "consoleErrors": []
2634
- },
2635
- {
2636
- "width": 390,
2637
- "height": 844,
2638
- "load": "load",
2639
- "screens": 8,
2640
- "filled": [
2641
- 0.5,
2642
- 0.63,
2643
- 0.54,
2644
- 0.38,
2645
- 0.26,
2646
- 0.58,
2647
- 0.73,
2648
- 0.48
2649
- ],
2650
- "motion": {
2651
- "elements": 21,
2652
- "css": 7,
2653
- "transitions": 14,
2654
- "scripted": 0,
2655
- "videos": 1,
2656
- "playingVideos": 1
2657
- },
2658
- "metrics": {
2659
- "viewport": {
2660
- "w": 390,
2661
- "h": 844
2662
- },
2663
- "page": {
2664
- "height": 6507,
2665
- "screens": 7.7,
2666
- "words": 462,
2667
- "img": 1,
2668
- "video": 1,
2669
- "canvas": 0,
2670
- "svg": 0,
2671
- "sections": 6,
2672
- "horizontalOverflow": 0,
2673
- "overflowCulprits": [],
2674
- "uiFragments": 3,
2675
- "uiAbuse": false,
2676
- "realPictures": 2,
2677
- "videoCount": 1,
2678
- "uiPictures": 2,
2679
- "pictureSamples": [
2680
- "concorde-001-2cv.webp"
2681
- ],
2682
- "blendText": 0,
2683
- "sideScrollers": 0,
2684
- "brokenImages": [],
2685
- "emoji": [],
2686
- "videosNoPoster": 0
2687
- },
2688
- "hero": {
2689
- "text": "Web components for every stack.",
2690
- "words": 5,
2691
- "chars": 31,
2692
- "lines": 2,
2693
- "size": 40.3,
2694
- "vw": 10.3,
2695
- "font": "Schibsted Grotesk",
2696
- "weight": 800,
2697
- "tracking": -0.05,
2698
- "leading": 0.88,
2699
- "upper": false,
2700
- "italic": false,
2701
- "mono": false,
2702
- "align": "left",
2703
- "position": "center",
2704
- "widthRatio": 0.92,
2705
- "top": 134,
2706
- "tag": "h1",
2707
- "kind": "heading"
2708
- },
2709
- "h1": {
2710
- "text": "Web components for every stack.",
2711
- "words": 5,
2712
- "lines": 2,
2713
- "size": 40.3,
2714
- "font": "Schibsted Grotesk"
2715
- },
2716
- "headings": [
2717
- {
2718
- "text": "Web components for every stack.",
2719
- "words": 5,
2720
- "chars": 31,
2721
- "lines": 2,
2722
- "size": 40.3,
2723
- "vw": 10.3,
2724
- "font": "Schibsted Grotesk",
2725
- "weight": 800,
2726
- "tracking": -0.05,
2727
- "leading": 0.88,
2728
- "upper": false,
2729
- "italic": false,
2730
- "mono": false,
2731
- "align": "left",
2732
- "position": "center",
2733
- "widthRatio": 0.92,
2734
- "top": 134,
2735
- "tag": "h1",
2736
- "kind": "heading"
2737
- },
2738
- {
2739
- "text": "CDG",
2740
- "words": 1,
2741
- "chars": 3,
2742
- "lines": 1,
2743
- "size": 36,
2744
- "vw": 9.2,
2745
- "font": "Schibsted Grotesk",
2746
- "weight": 400,
2747
- "tracking": 0,
2748
- "leading": 1,
2749
- "upper": true,
2750
- "italic": false,
2751
- "mono": false,
2752
- "align": "left",
2753
- "position": "left",
2754
- "widthRatio": 0.2,
2755
- "top": 865,
2756
- "tag": "div",
2757
- "kind": "heading"
2758
- },
2759
- {
2760
- "text": "JFK",
2761
- "words": 1,
2762
- "chars": 3,
2763
- "lines": 1,
2764
- "size": 36,
2765
- "vw": 9.2,
2766
- "font": "Schibsted Grotesk",
2767
- "weight": 400,
2768
- "tracking": 0,
2769
- "leading": 1,
2770
- "upper": true,
2771
- "italic": false,
2772
- "mono": false,
2773
- "align": "right",
2774
- "position": "right",
2775
- "widthRatio": 0.16,
2776
- "top": 865,
2777
- "tag": "div",
2778
- "kind": "heading"
2779
- },
2780
- {
2781
- "text": "Concorde is a Lit library of 41 web components. They bind data, call APIs and theme themselves from plain HTML, in React, Vue, PHP or a static page.",
2782
- "words": 28,
2783
- "chars": 148,
2784
- "lines": 5,
2785
- "size": 22,
2786
- "vw": 5.6,
2787
- "font": "Schibsted Grotesk",
2788
- "weight": 600,
2789
- "tracking": -0.02,
2790
- "leading": 1.12,
2791
- "upper": false,
2792
- "italic": false,
2793
- "mono": false,
2794
- "align": "left",
2795
- "position": "center",
2796
- "widthRatio": 0.92,
2797
- "top": 1183,
2798
- "tag": "p",
2799
- "kind": "statement"
2800
- },
2801
- {
2802
- "text": "41 components, one tag each.",
2803
- "words": 5,
2804
- "chars": 28,
2805
- "lines": 2,
2806
- "size": 36,
2807
- "vw": 9.2,
2808
- "font": "Schibsted Grotesk",
2809
- "weight": 800,
2810
- "tracking": -0.045,
2811
- "leading": 0.95,
2812
- "upper": false,
2813
- "italic": false,
2814
- "mono": false,
2815
- "align": "left",
2816
- "position": "left",
2817
- "widthRatio": 0.66,
2818
- "top": 1402,
2819
- "tag": "h2",
2820
- "kind": "heading"
2821
- },
2822
- {
2823
- "text": "Alert /",
2824
- "words": 2,
2825
- "chars": 7,
2826
- "lines": 1,
2827
- "size": 24,
2828
- "vw": 6.2,
2829
- "font": "Schibsted Grotesk",
2830
- "weight": 800,
2831
- "tracking": -0.03,
2832
- "leading": 1.08,
2833
- "upper": false,
2834
- "italic": false,
2835
- "mono": false,
2836
- "align": "left",
2837
- "position": "left",
2838
- "widthRatio": 0.2,
2839
- "top": 1561,
2840
- "tag": "span",
2841
- "kind": "statement"
2842
- },
2843
- {
2844
- "text": "Badge /",
2845
- "words": 2,
2846
- "chars": 7,
2847
- "lines": 1,
2848
- "size": 24,
2849
- "vw": 6.2,
2850
- "font": "Schibsted Grotesk",
2851
- "weight": 800,
2852
- "tracking": -0.03,
2853
- "leading": 1.08,
2854
- "upper": false,
2855
- "italic": false,
2856
- "mono": false,
2857
- "align": "left",
2858
- "position": "left",
2859
- "widthRatio": 0.23,
2860
- "top": 1561,
2861
- "tag": "span",
2862
- "kind": "statement"
2863
- },
2864
- {
2865
- "text": "Button /",
2866
- "words": 2,
2867
- "chars": 8,
2868
- "lines": 1,
2869
- "size": 24,
2870
- "vw": 6.2,
2871
- "font": "Schibsted Grotesk",
2872
- "weight": 800,
2873
- "tracking": -0.03,
2874
- "leading": 1.08,
2875
- "upper": false,
2876
- "italic": false,
2877
- "mono": false,
2878
- "align": "left",
2879
- "position": "right",
2880
- "widthRatio": 0.24,
2881
- "top": 1561,
2882
- "tag": "span",
2883
- "kind": "statement"
2884
- },
2885
- {
2886
- "text": "Captcha /",
2887
- "words": 2,
2888
- "chars": 9,
2889
- "lines": 1,
2890
- "size": 24,
2891
- "vw": 6.2,
2892
- "font": "Schibsted Grotesk",
2893
- "weight": 800,
2894
- "tracking": -0.03,
2895
- "leading": 1.08,
2896
- "upper": false,
2897
- "italic": false,
2898
- "mono": false,
2899
- "align": "left",
2900
- "position": "left",
2901
- "widthRatio": 0.29,
2902
- "top": 1587,
2903
- "tag": "span",
2904
- "kind": "statement"
2905
- },
2906
- {
2907
- "text": "Card /",
2908
- "words": 2,
2909
- "chars": 6,
2910
- "lines": 1,
2911
- "size": 24,
2912
- "vw": 6.2,
2913
- "font": "Schibsted Grotesk",
2914
- "weight": 800,
2915
- "tracking": -0.03,
2916
- "leading": 1.08,
2917
- "upper": false,
2918
- "italic": false,
2919
- "mono": false,
2920
- "align": "left",
2921
- "position": "center",
2922
- "widthRatio": 0.19,
2923
- "top": 1587,
2924
- "tag": "span",
2925
- "kind": "statement"
2926
- },
2927
- {
2928
- "text": "Checkbox /",
2929
- "words": 2,
2930
- "chars": 10,
2931
- "lines": 1,
2932
- "size": 24,
2933
- "vw": 6.2,
2934
- "font": "Schibsted Grotesk",
2935
- "weight": 800,
2936
- "tracking": -0.03,
2937
- "leading": 1.08,
2938
- "upper": false,
2939
- "italic": false,
2940
- "mono": false,
2941
- "align": "left",
2942
- "position": "right",
2943
- "widthRatio": 0.34,
2944
- "top": 1587,
2945
- "tag": "span",
2946
- "kind": "statement"
2947
- },
2948
- {
2949
- "text": "Divider /",
2950
- "words": 2,
2951
- "chars": 9,
2952
- "lines": 1,
2953
- "size": 24,
2954
- "vw": 6.2,
2955
- "font": "Schibsted Grotesk",
2956
- "weight": 800,
2957
- "tracking": -0.03,
2958
- "leading": 1.08,
2959
- "upper": false,
2960
- "italic": false,
2961
- "mono": false,
2962
- "align": "left",
2963
- "position": "left",
2964
- "widthRatio": 0.26,
2965
- "top": 1613,
2966
- "tag": "span",
2967
- "kind": "statement"
2968
- },
2969
- {
2970
- "text": "Fieldset /",
2971
- "words": 2,
2972
- "chars": 10,
2973
- "lines": 1,
2974
- "size": 24,
2975
- "vw": 6.2,
2976
- "font": "Schibsted Grotesk",
2977
- "weight": 800,
2978
- "tracking": -0.03,
2979
- "leading": 1.08,
2980
- "upper": false,
2981
- "italic": false,
2982
- "mono": false,
2983
- "align": "left",
2984
- "position": "center",
2985
- "widthRatio": 0.28,
2986
- "top": 1613,
2987
- "tag": "span",
2988
- "kind": "statement"
2989
- },
2990
- {
2991
- "text": "Form actions /",
2992
- "words": 3,
2993
- "chars": 14,
2994
- "lines": 1,
2995
- "size": 24,
2996
- "vw": 6.2,
2997
- "font": "Schibsted Grotesk",
2998
- "weight": 800,
2999
- "tracking": -0.03,
3000
- "leading": 1.08,
3001
- "upper": false,
3002
- "italic": false,
3003
- "mono": false,
3004
- "align": "left",
3005
- "position": "left",
3006
- "widthRatio": 0.43,
3007
- "top": 1639,
3008
- "tag": "span",
3009
- "kind": "statement"
3010
- },
3011
- {
3012
- "text": "Form layout /",
3013
- "words": 3,
3014
- "chars": 13,
3015
- "lines": 1,
3016
- "size": 24,
3017
- "vw": 6.2,
3018
- "font": "Schibsted Grotesk",
3019
- "weight": 800,
3020
- "tracking": -0.03,
3021
- "leading": 1.08,
3022
- "upper": false,
3023
- "italic": false,
3024
- "mono": false,
3025
- "align": "left",
3026
- "position": "right",
3027
- "widthRatio": 0.39,
3028
- "top": 1639,
3029
- "tag": "span",
3030
- "kind": "statement"
3031
- },
3032
- {
3033
- "text": "Group /",
3034
- "words": 2,
3035
- "chars": 7,
3036
- "lines": 1,
3037
- "size": 24,
3038
- "vw": 6.2,
3039
- "font": "Schibsted Grotesk",
3040
- "weight": 800,
3041
- "tracking": -0.03,
3042
- "leading": 1.08,
3043
- "upper": false,
3044
- "italic": false,
3045
- "mono": false,
3046
- "align": "left",
3047
- "position": "left",
3048
- "widthRatio": 0.23,
3049
- "top": 1665,
3050
- "tag": "span",
3051
- "kind": "statement"
3052
- },
3053
- {
3054
- "text": "Icon /",
3055
- "words": 2,
3056
- "chars": 6,
3057
- "lines": 1,
3058
- "size": 24,
3059
- "vw": 6.2,
3060
- "font": "Schibsted Grotesk",
3061
- "weight": 800,
3062
- "tracking": -0.03,
3063
- "leading": 1.08,
3064
- "upper": false,
3065
- "italic": false,
3066
- "mono": false,
3067
- "align": "left",
3068
- "position": "left",
3069
- "widthRatio": 0.18,
3070
- "top": 1665,
3071
- "tag": "span",
3072
- "kind": "statement"
3073
- },
3074
- {
3075
- "text": "Image /",
3076
- "words": 2,
3077
- "chars": 7,
3078
- "lines": 1,
3079
- "size": 24,
3080
- "vw": 6.2,
3081
- "font": "Schibsted Grotesk",
3082
- "weight": 800,
3083
- "tracking": -0.03,
3084
- "leading": 1.08,
3085
- "upper": false,
3086
- "italic": false,
3087
- "mono": false,
3088
- "align": "left",
3089
- "position": "right",
3090
- "widthRatio": 0.24,
3091
- "top": 1665,
3092
- "tag": "span",
3093
- "kind": "statement"
3094
- },
3095
- {
3096
- "text": "Input /",
3097
- "words": 2,
3098
- "chars": 7,
3099
- "lines": 1,
3100
- "size": 24,
3101
- "vw": 6.2,
3102
- "font": "Schibsted Grotesk",
3103
- "weight": 800,
3104
- "tracking": -0.03,
3105
- "leading": 1.08,
3106
- "upper": false,
3107
- "italic": false,
3108
- "mono": false,
3109
- "align": "left",
3110
- "position": "right",
3111
- "widthRatio": 0.21,
3112
- "top": 1665,
3113
- "tag": "span",
3114
- "kind": "statement"
3115
- },
3116
- {
3117
- "text": "Input autocomplete /",
3118
- "words": 3,
3119
- "chars": 20,
3120
- "lines": 1,
3121
- "size": 24,
3122
- "vw": 6.2,
3123
- "font": "Schibsted Grotesk",
3124
- "weight": 800,
3125
- "tracking": -0.03,
3126
- "leading": 1.08,
3127
- "upper": false,
3128
- "italic": false,
3129
- "mono": false,
3130
- "align": "left",
3131
- "position": "left",
3132
- "widthRatio": 0.62,
3133
- "top": 1691,
3134
- "tag": "span",
3135
- "kind": "statement"
3136
- },
3137
- {
3138
- "text": "Link /",
3139
- "words": 2,
3140
- "chars": 6,
3141
- "lines": 1,
3142
- "size": 24,
3143
- "vw": 6.2,
3144
- "font": "Schibsted Grotesk",
3145
- "weight": 800,
3146
- "tracking": -0.03,
3147
- "leading": 1.08,
3148
- "upper": false,
3149
- "italic": false,
3150
- "mono": false,
3151
- "align": "left",
3152
- "position": "right",
3153
- "widthRatio": 0.17,
3154
- "top": 1691,
3155
- "tag": "span",
3156
- "kind": "statement"
3157
- },
3158
- {
3159
- "text": "Loader /",
3160
- "words": 2,
3161
- "chars": 8,
3162
- "lines": 1,
3163
- "size": 24,
3164
- "vw": 6.2,
3165
- "font": "Schibsted Grotesk",
3166
- "weight": 800,
3167
- "tracking": -0.03,
3168
- "leading": 1.08,
3169
- "upper": false,
3170
- "italic": false,
3171
- "mono": false,
3172
- "align": "left",
3173
- "position": "left",
3174
- "widthRatio": 0.26,
3175
- "top": 1717,
3176
- "tag": "span",
3177
- "kind": "statement"
3178
- },
3179
- {
3180
- "text": "Menu /",
3181
- "words": 2,
3182
- "chars": 6,
3183
- "lines": 1,
3184
- "size": 24,
3185
- "vw": 6.2,
3186
- "font": "Schibsted Grotesk",
3187
- "weight": 800,
3188
- "tracking": -0.03,
3189
- "leading": 1.08,
3190
- "upper": false,
3191
- "italic": false,
3192
- "mono": false,
3193
- "align": "left",
3194
- "position": "left",
3195
- "widthRatio": 0.22,
3196
- "top": 1717,
3197
- "tag": "span",
3198
- "kind": "statement"
3199
- },
3200
- {
3201
- "text": "Modal /",
3202
- "words": 2,
3203
- "chars": 7,
3204
- "lines": 1,
3205
- "size": 24,
3206
- "vw": 6.2,
3207
- "font": "Schibsted Grotesk",
3208
- "weight": 800,
3209
- "tracking": -0.03,
3210
- "leading": 1.08,
3211
- "upper": false,
3212
- "italic": false,
3213
- "mono": false,
3214
- "align": "left",
3215
- "position": "right",
3216
- "widthRatio": 0.23,
3217
- "top": 1717,
3218
- "tag": "span",
3219
- "kind": "statement"
3220
- },
3221
- {
3222
- "text": "Pop /",
3223
- "words": 2,
3224
- "chars": 5,
3225
- "lines": 1,
3226
- "size": 24,
3227
- "vw": 6.2,
3228
- "font": "Schibsted Grotesk",
3229
- "weight": 800,
3230
- "tracking": -0.03,
3231
- "leading": 1.08,
3232
- "upper": false,
3233
- "italic": false,
3234
- "mono": false,
3235
- "align": "left",
3236
- "position": "right",
3237
- "widthRatio": 0.16,
3238
- "top": 1717,
3239
- "tag": "span",
3240
- "kind": "statement"
3241
- },
3242
- {
3243
- "text": "Progress /",
3244
- "words": 2,
3245
- "chars": 10,
3246
- "lines": 1,
3247
- "size": 24,
3248
- "vw": 6.2,
3249
- "font": "Schibsted Grotesk",
3250
- "weight": 800,
3251
- "tracking": -0.03,
3252
- "leading": 1.08,
3253
- "upper": false,
3254
- "italic": false,
3255
- "mono": false,
3256
- "align": "left",
3257
- "position": "left",
3258
- "widthRatio": 0.31,
3259
- "top": 1743,
3260
- "tag": "span",
3261
- "kind": "statement"
3262
- },
3263
- {
3264
- "text": "Radio /",
3265
- "words": 2,
3266
- "chars": 7,
3267
- "lines": 1,
3268
- "size": 24,
3269
- "vw": 6.2,
3270
- "font": "Schibsted Grotesk",
3271
- "weight": 800,
3272
- "tracking": -0.03,
3273
- "leading": 1.08,
3274
- "upper": false,
3275
- "italic": false,
3276
- "mono": false,
3277
- "align": "left",
3278
- "position": "center",
3279
- "widthRatio": 0.22,
3280
- "top": 1743,
3281
- "tag": "span",
3282
- "kind": "statement"
3283
- },
3284
- {
3285
- "text": "Select /",
3286
- "words": 2,
3287
- "chars": 8,
3288
- "lines": 1,
3289
- "size": 24,
3290
- "vw": 6.2,
3291
- "font": "Schibsted Grotesk",
3292
- "weight": 800,
3293
- "tracking": -0.03,
3294
- "leading": 1.08,
3295
- "upper": false,
3296
- "italic": false,
3297
- "mono": false,
3298
- "align": "left",
3299
- "position": "right",
3300
- "widthRatio": 0.23,
3301
- "top": 1743,
3302
- "tag": "span",
3303
- "kind": "statement"
3304
- },
3305
- {
3306
- "text": "Switch /",
3307
- "words": 2,
3308
- "chars": 8,
3309
- "lines": 1,
3310
- "size": 24,
3311
- "vw": 6.2,
3312
- "font": "Schibsted Grotesk",
3313
- "weight": 800,
3314
- "tracking": -0.03,
3315
- "leading": 1.08,
3316
- "upper": false,
3317
- "italic": false,
3318
- "mono": false,
3319
- "align": "left",
3320
- "position": "left",
3321
- "widthRatio": 0.25,
3322
- "top": 1768,
3323
- "tag": "span",
3324
- "kind": "statement"
3325
- },
3326
- {
3327
- "text": "Table /",
3328
- "words": 2,
3329
- "chars": 7,
3330
- "lines": 1,
3331
- "size": 24,
3332
- "vw": 6.2,
3333
- "font": "Schibsted Grotesk",
3334
- "weight": 800,
3335
- "tracking": -0.03,
3336
- "leading": 1.08,
3337
- "upper": false,
3338
- "italic": false,
3339
- "mono": false,
3340
- "align": "left",
3341
- "position": "left",
3342
- "widthRatio": 0.21,
3343
- "top": 1768,
3344
- "tag": "span",
3345
- "kind": "statement"
3346
- },
3347
- {
3348
- "text": "Textarea /",
3349
- "words": 2,
3350
- "chars": 10,
3351
- "lines": 1,
3352
- "size": 24,
3353
- "vw": 6.2,
3354
- "font": "Schibsted Grotesk",
3355
- "weight": 800,
3356
- "tracking": -0.03,
3357
- "leading": 1.08,
3358
- "upper": false,
3359
- "italic": false,
3360
- "mono": false,
3361
- "align": "left",
3362
- "position": "right",
3363
- "widthRatio": 0.31,
3364
- "top": 1768,
3365
- "tag": "span",
3366
- "kind": "statement"
3367
- },
3368
- {
3369
- "text": "Theme /",
3370
- "words": 2,
3371
- "chars": 7,
3372
- "lines": 1,
3373
- "size": 24,
3374
- "vw": 6.2,
3375
- "font": "Schibsted Grotesk",
3376
- "weight": 800,
3377
- "tracking": -0.03,
3378
- "leading": 1.08,
3379
- "upper": false,
3380
- "italic": false,
3381
- "mono": false,
3382
- "align": "left",
3383
- "position": "left",
3384
- "widthRatio": 0.25,
3385
- "top": 1794,
3386
- "tag": "span",
3387
- "kind": "statement"
3388
- },
3389
- {
3390
- "text": "Toast /",
3391
- "words": 2,
3392
- "chars": 7,
3393
- "lines": 1,
3394
- "size": 24,
3395
- "vw": 6.2,
3396
- "font": "Schibsted Grotesk",
3397
- "weight": 800,
3398
- "tracking": -0.03,
3399
- "leading": 1.08,
3400
- "upper": false,
3401
- "italic": false,
3402
- "mono": false,
3403
- "align": "left",
3404
- "position": "left",
3405
- "widthRatio": 0.21,
3406
- "top": 1794,
3407
- "tag": "span",
3408
- "kind": "statement"
3409
- },
3410
- {
3411
- "text": "Tooltip /",
3412
- "words": 2,
3413
- "chars": 9,
3414
- "lines": 1,
3415
- "size": 24,
3416
- "vw": 6.2,
3417
- "font": "Schibsted Grotesk",
3418
- "weight": 800,
3419
- "tracking": -0.03,
3420
- "leading": 1.08,
3421
- "upper": false,
3422
- "italic": false,
3423
- "mono": false,
3424
- "align": "left",
3425
- "position": "right",
3426
- "widthRatio": 0.25,
3427
- "top": 1794,
3428
- "tag": "span",
3429
- "kind": "statement"
3430
- },
3431
- {
3432
- "text": "Date /",
3433
- "words": 2,
3434
- "chars": 6,
3435
- "lines": 1,
3436
- "size": 24,
3437
- "vw": 6.2,
3438
- "font": "Schibsted Grotesk",
3439
- "weight": 800,
3440
- "tracking": -0.03,
3441
- "leading": 1.08,
3442
- "upper": false,
3443
- "italic": false,
3444
- "mono": false,
3445
- "align": "left",
3446
- "position": "left",
3447
- "widthRatio": 0.19,
3448
- "top": 1820,
3449
- "tag": "span",
3450
- "kind": "statement"
3451
- },
3452
- {
3453
- "text": "Fetch /",
3454
- "words": 2,
3455
- "chars": 7,
3456
- "lines": 1,
3457
- "size": 24,
3458
- "vw": 6.2,
3459
- "font": "Schibsted Grotesk",
3460
- "weight": 800,
3461
- "tracking": -0.03,
3462
- "leading": 1.08,
3463
- "upper": false,
3464
- "italic": false,
3465
- "mono": false,
3466
- "align": "left",
3467
- "position": "left",
3468
- "widthRatio": 0.21,
3469
- "top": 1820,
3470
- "tag": "span",
3471
- "kind": "statement"
3472
- },
3473
- {
3474
- "text": "If /",
3475
- "words": 2,
3476
- "chars": 4,
3477
- "lines": 1,
3478
- "size": 24,
3479
- "vw": 6.2,
3480
- "font": "Schibsted Grotesk",
3481
- "weight": 800,
3482
- "tracking": -0.03,
3483
- "leading": 1.08,
3484
- "upper": false,
3485
- "italic": false,
3486
- "mono": false,
3487
- "align": "left",
3488
- "position": "center",
3489
- "widthRatio": 0.1,
3490
- "top": 1820,
3491
- "tag": "span",
3492
- "kind": "statement"
3493
- },
3494
- {
3495
- "text": "List /",
3496
- "words": 2,
3497
- "chars": 6,
3498
- "lines": 1,
3499
- "size": 24,
3500
- "vw": 6.2,
3501
- "font": "Schibsted Grotesk",
3502
- "weight": 800,
3503
- "tracking": -0.03,
3504
- "leading": 1.08,
3505
- "upper": false,
3506
- "italic": false,
3507
- "mono": false,
3508
- "align": "left",
3509
- "position": "right",
3510
- "widthRatio": 0.15,
3511
- "top": 1820,
3512
- "tag": "span",
3513
- "kind": "statement"
3514
- },
3515
- {
3516
- "text": "Mix /",
3517
- "words": 2,
3518
- "chars": 5,
3519
- "lines": 1,
3520
- "size": 24,
3521
- "vw": 6.2,
3522
- "font": "Schibsted Grotesk",
3523
- "weight": 800,
3524
- "tracking": -0.03,
3525
- "leading": 1.08,
3526
- "upper": false,
3527
- "italic": false,
3528
- "mono": false,
3529
- "align": "left",
3530
- "position": "right",
3531
- "widthRatio": 0.16,
3532
- "top": 1820,
3533
- "tag": "span",
3534
- "kind": "statement"
3535
- },
3536
- {
3537
- "text": "Jsonata /",
3538
- "words": 2,
3539
- "chars": 9,
3540
- "lines": 1,
3541
- "size": 24,
3542
- "vw": 6.2,
3543
- "font": "Schibsted Grotesk",
3544
- "weight": 800,
3545
- "tracking": -0.03,
3546
- "leading": 1.08,
3547
- "upper": false,
3548
- "italic": false,
3549
- "mono": false,
3550
- "align": "left",
3551
- "position": "left",
3552
- "widthRatio": 0.28,
3553
- "top": 1846,
3554
- "tag": "span",
3555
- "kind": "statement"
3556
- }
3557
- ],
3558
- "headingSummary": {
3559
- "count": 49,
3560
- "maxLines": 5,
3561
- "over2Lines": 0,
3562
- "statements": 42,
3563
- "centered": 0,
3564
- "medianWords": 2,
3565
- "mixedFontHeadings": 0
3566
- },
3567
- "type": {
3568
- "families": [
3569
- {
3570
- "family": "Schibsted Grotesk",
3571
- "share": 0.99,
3572
- "mono": false
3573
- },
3574
- {
3575
- "family": "ui-monospace",
3576
- "share": 0.01,
3577
- "mono": false
3578
- }
3579
- ],
3580
- "familyCount": 2,
3581
- "sizes": [
3582
- 14,
3583
- 16,
3584
- 17,
3585
- 18,
3586
- 20,
3587
- 22,
3588
- 24,
3589
- 36,
3590
- 40
3591
- ],
3592
- "sizeCount": 9,
3593
- "notLoaded": [],
3594
- "body": {
3595
- "font": "Schibsted Grotesk",
3596
- "size": 17,
3597
- "leading": 1.45,
3598
- "weight": 400,
3599
- "tracking": 0,
3600
- "contrast": 13.2
3601
- },
3602
- "measureChars": 42,
3603
- "max": {
3604
- "size": 40.3,
3605
- "vw": 10.3,
3606
- "font": "Schibsted Grotesk",
3607
- "text": "Web componentsfor every stack."
3608
- },
3609
- "monoShare": 0.01,
3610
- "monoProseShare": 0,
3611
- "monoFamilies": [
3612
- "ui-monospace"
3613
- ],
3614
- "monoSamples": [],
3615
- "microLabels": 0,
3616
- "microLabelShare": 0,
3617
- "microSamples": [],
3618
- "upperShare": 0.02,
3619
- "centerShare": 0,
3620
- "smallText": 0
3621
- },
3622
- "eyebrows": [],
3623
- "numbered": [],
3624
- "color": {
3625
- "bodyBg": "#e6e0d4",
3626
- "bodyBgHsl": {
3627
- "h": 40,
3628
- "s": 0.26,
3629
- "l": 0.87
3630
- },
3631
- "dark": false,
3632
- "sectionBgs": [
3633
- {
3634
- "color": "#ff6b1f",
3635
- "top": 462,
3636
- "hsl": {
3637
- "h": 20,
3638
- "s": 1,
3639
- "l": 0.56
3640
- }
3641
- },
3642
- {
3643
- "color": "#1b1a17",
3644
- "top": 789,
3645
- "hsl": {
3646
- "h": 45,
3647
- "s": 0.08,
3648
- "l": 0.1
3649
- }
3650
- },
3651
- {
3652
- "color": "#24503c",
3653
- "top": 2283,
3654
- "hsl": {
3655
- "h": 153,
3656
- "s": 0.38,
3657
- "l": 0.23
3658
- }
3659
- },
3660
- {
3661
- "color": "#e6e0d4",
3662
- "top": 2315,
3663
- "hsl": {
3664
- "h": 40,
3665
- "s": 0.26,
3666
- "l": 0.87
3667
- }
3668
- }
3669
- ],
3670
- "textColors": [
3671
- {
3672
- "color": "#1b1a17",
3673
- "share": 0.95
3674
- },
3675
- {
3676
- "color": "#e6e0d4",
3677
- "share": 0.03
3678
- },
3679
- {
3680
- "color": "#ffffff",
3681
- "share": 0.01
3682
- },
3683
- {
3684
- "color": "#1f4a36",
3685
- "share": 0.01
3686
- },
3687
- {
3688
- "color": "#ff6b1f",
3689
- "share": 0
3690
- }
3691
- ],
3692
- "button": null,
3693
- "lowContrast": []
3694
- },
3695
- "buttons": {
3696
- "count": 0,
3697
- "inHero": 0,
3698
- "withShadow": 0,
3699
- "withGradient": 0,
3700
- "mono": 0,
3701
- "upper": 0,
3702
- "heroLabels": []
3703
- },
3704
- "surfaces": {
3705
- "shadowStatic": 0,
3706
- "shadowOverlay": 0,
3707
- "shadowSamples": [],
3708
- "gradients": 0,
3709
- "scrims": 0,
3710
- "gradientSamples": [],
3711
- "gradientText": 0,
3712
- "hairlines": 0,
3713
- "hairlineSamples": [],
3714
- "outlinedBoxes": 0,
3715
- "dashed": 0,
3716
- "blurred": 0,
3717
- "roundedBoxes": 0,
3718
- "boxRadius": 0,
3719
- "squareMedia": 2,
3720
- "roundedMedia": 0,
3721
- "mediaRadius": 0,
3722
- "textShadow": 0,
3723
- "cardRows": []
3724
- },
3725
- "heroMedia": [],
3726
- "nav": {
3727
- "links": 0,
3728
- "fixed": false,
3729
- "height": 20,
3730
- "floatingPill": false,
3731
- "blur": false
3732
- },
3733
- "fontsLoaded": [
3734
- "schibsted grotesk"
3735
- ]
3736
- },
3737
- "layout": {
3738
- "viewport": {
3739
- "w": 390,
3740
- "h": 844
3741
- },
3742
- "pageH": 6507,
3743
- "margins": {
3744
- "left": 16,
3745
- "right": 19
3746
- },
3747
- "sections": [
3748
- {
3749
- "sel": "section.hero",
3750
- "tag": "section",
3751
- "top": 66,
3752
- "height": 1053,
3753
- "words": 30,
3754
- "media": 0,
3755
- "middle": 0,
3756
- "heading": {
3757
- "text": "Web components",
3758
- "size": 40,
3759
- "tag": "h1"
3760
- },
3761
- "left": 16,
3762
- "right": 41,
3763
- "textLeft": 16,
3764
- "textRight": 41,
3765
- "fullBleed": false,
3766
- "footer": false,
3767
- "hero": true,
3768
- "continues": false,
3769
- "pinned": false
3770
- },
3771
- {
3772
- "sel": "section.manifesto",
3773
- "tag": "section",
3774
- "top": 1119,
3775
- "height": 187,
3776
- "words": 26,
3777
- "media": 0,
3778
- "middle": 0,
3779
- "heading": null,
3780
- "left": 16,
3781
- "right": 48,
3782
- "textLeft": 16,
3783
- "textRight": 48,
3784
- "fullBleed": false,
3785
- "footer": false,
3786
- "hero": false,
3787
- "continues": false,
3788
- "pinned": false
3789
- },
3790
- {
3791
- "sel": "section.index",
3792
- "tag": "section",
3793
- "top": 1306,
3794
- "height": 780,
3795
- "words": 66,
3796
- "media": 0,
3797
- "middle": 0,
3798
- "heading": {
3799
- "text": "41 components,",
3800
- "size": 36,
3801
- "tag": "h2"
3802
- },
3803
- "left": 16,
3804
- "right": 16,
3805
- "textLeft": 16,
3806
- "textRight": 16,
3807
- "fullBleed": false,
3808
- "footer": false,
3809
- "hero": false,
3810
- "continues": false,
3811
- "pinned": false
3812
- },
3813
- {
3814
- "sel": "div.instr-field",
3815
- "tag": "div",
3816
- "top": 2283,
3817
- "height": 465,
3818
- "words": 31,
3819
- "media": 0,
3820
- "middle": 20,
3821
- "heading": null,
3822
- "left": 36,
3823
- "right": 36,
3824
- "textLeft": 36,
3825
- "textRight": 36,
3826
- "fullBleed": false,
3827
- "footer": false,
3828
- "hero": false,
3829
- "continues": true,
3830
- "pinned": false
3831
- },
3832
- {
3833
- "sel": "div.instr-block.is-visible",
3834
- "tag": "div",
3835
- "top": 2764,
3836
- "height": 380,
3837
- "words": 22,
3838
- "media": 0,
3839
- "middle": 0,
3840
- "heading": null,
3841
- "left": 16,
3842
- "right": 23,
3843
- "textLeft": 16,
3844
- "textRight": 23,
3845
- "fullBleed": false,
3846
- "footer": false,
3847
- "hero": false,
3848
- "continues": true,
3849
- "pinned": false
3850
- },
3851
- {
3852
- "sel": "div.instr-block.is-visible",
3853
- "tag": "div",
3854
- "top": 3144,
3855
- "height": 232,
3856
- "words": 28,
3857
- "media": 0,
3858
- "middle": 0,
3859
- "heading": null,
3860
- "left": 16,
3861
- "right": 16,
3862
- "textLeft": 16,
3863
- "textRight": 16,
3864
- "fullBleed": false,
3865
- "footer": false,
3866
- "hero": false,
3867
- "continues": true,
3868
- "pinned": false
3869
- },
3870
- {
3871
- "sel": "div.instr-block.is-visible",
3872
- "tag": "div",
3873
- "top": 3376,
3874
- "height": 500,
3875
- "words": 32,
3876
- "media": 0,
3877
- "middle": 0,
3878
- "heading": null,
3879
- "left": 16,
3880
- "right": 20,
3881
- "textLeft": 16,
3882
- "textRight": 20,
3883
- "fullBleed": false,
3884
- "footer": false,
3885
- "hero": false,
3886
- "continues": true,
3887
- "pinned": false
3888
- },
3889
- {
3890
- "sel": "div.instr-block.is-visible",
3891
- "tag": "div",
3892
- "top": 3876,
3893
- "height": 377,
3894
- "words": 25,
3895
- "media": 0,
3896
- "middle": 0,
3897
- "heading": null,
3898
- "left": 16,
3899
- "right": 43,
3900
- "textLeft": 16,
3901
- "textRight": 43,
3902
- "fullBleed": false,
3903
- "footer": false,
3904
- "hero": false,
3905
- "continues": true,
3906
- "pinned": false
3907
- },
3908
- {
3909
- "sel": "section.story",
3910
- "tag": "section",
3911
- "top": 4253,
3912
- "height": 1090,
3913
- "words": 119,
3914
- "media": 1,
3915
- "middle": 0,
3916
- "heading": {
3917
- "text": "Why we built it.",
3918
- "size": 36,
3919
- "tag": "h2"
3920
- },
3921
- "left": 16,
3922
- "right": 18,
3923
- "textLeft": 16,
3924
- "textRight": 18,
3925
- "fullBleed": true,
3926
- "footer": false,
3927
- "hero": false,
3928
- "continues": false,
3929
- "pinned": false
3930
- },
3931
- {
3932
- "sel": "section.takeoff",
3933
- "tag": "section",
3934
- "top": 5343,
3935
- "height": 886,
3936
- "words": 20,
3937
- "media": 1,
3938
- "middle": 0,
3939
- "heading": {
3940
- "text": "Take your project",
3941
- "size": 40,
3942
- "tag": "h2"
3943
- },
3944
- "left": 16,
3945
- "right": 36,
3946
- "textLeft": 16,
3947
- "textRight": 36,
3948
- "fullBleed": true,
3949
- "footer": false,
3950
- "hero": false,
3951
- "continues": false,
3952
- "pinned": false
3953
- },
3954
- {
3955
- "sel": "footer.home-footer",
3956
- "tag": "footer",
3957
- "top": 6229,
3958
- "height": 277,
3959
- "words": 28,
3960
- "media": 0,
3961
- "middle": 0,
3962
- "heading": null,
3963
- "left": 16,
3964
- "right": 29,
3965
- "textLeft": 16,
3966
- "textRight": 29,
3967
- "fullBleed": false,
3968
- "footer": true,
3969
- "hero": false,
3970
- "continues": false,
3971
- "pinned": false
3972
- }
3973
- ],
3974
- "gaps": [
3975
- {
3976
- "top": 324,
3977
- "height": 416
3978
- },
3979
- {
3980
- "top": 2908,
3981
- "height": 264
3982
- },
3983
- {
3984
- "top": 3556,
3985
- "height": 348
3986
- },
3987
- {
3988
- "top": 4068,
3989
- "height": 276
3990
- }
3991
- ],
3992
- "h1s": [
3993
- {
3994
- "text": "Web components for every stack.",
3995
- "size": 40,
3996
- "top": 134,
3997
- "firstScreen": true
3998
- }
3999
- ],
4000
- "edgeText": [],
4001
- "edges": [
4002
- {
4003
- "x": 16,
4004
- "n": 18
4005
- }
4006
- ],
4007
- "leftBlocks": 18,
4008
- "bodySize": 17,
4009
- "stage": false,
4010
- "explains": false,
4011
- "slivers": [],
4012
- "voidShare": 0,
4013
- "voidBox": null
4014
- },
4015
- "app": null,
4016
- "consoleErrors": []
4017
- }
4018
- ],
4019
- "findings": [
4020
- {
4021
- "level": "WARN",
4022
- "id": "first-action",
4023
- "width": 1440,
4024
- "message": "No visible button in the first screen.",
4025
- "fix": "Give the one primary action a real button in the first screen (a filled or solid-bordered control, 44px or taller), not only a link in the navigation.",
4026
- "alsoAt": [
4027
- 768,
4028
- 390
4029
- ]
4030
- },
4031
- {
4032
- "level": "WARN",
4033
- "id": "dev-server",
4034
- "width": 1440,
4035
- "message": "This page is served by a development server (Vite, webpack or Next in dev mode).",
4036
- "fix": "Run the last gate on the production build too (vite build && vite preview, next build && next start, or the built index.html): minifiers and bundlers change the CSS a visitor receives.",
4037
- "alsoAt": [
4038
- 768,
4039
- 390
4040
- ]
4041
- },
4042
- {
4043
- "level": "WARN",
4044
- "id": "off-centre",
4045
- "width": 1440,
4046
- "message": "The margins differ: 40px on the left, 72px on the right, at 1440px.",
4047
- "fix": "Put the navigation and the content on one pair of margins; check for padding on one side only, a scrollbar gutter, or a header on another inset than the page."
4048
- },
4049
- {
4050
- "level": "WARN",
4051
- "id": "lopsided",
4052
- "width": 1440,
4053
- "message": "A section keeps its content on one side and leaves 632px of the width empty: \"Take your project\".",
4054
- "fix": "Fill the other side with what the section has (its picture, a second column, the figure), or defend the void in one sentence."
4055
- },
4056
- {
4057
- "level": "WARN",
4058
- "id": "statement-length",
4059
- "width": 390,
4060
- "message": "1 large-set statement(s) run past 4 lines at 390px: \"Concorde is a Lit library of 41 web comp…\" → 5 lines at 22px",
4061
- "fix": "A statement set large is about 30 words. Cut it, or set the rest as ordinary body text."
4062
- },
4063
- {
4064
- "level": "WARN",
4065
- "id": "blank-gap",
4066
- "width": 390,
4067
- "message": "A 416px stretch at 324px holds nothing.",
4068
- "fix": "Check that it is a deliberate rest (once per page at most); otherwise close it to the normal section gap."
4069
- }
4070
- ],
4071
- "images": [
4072
- {
4073
- "viewport": "desktop",
4074
- "width": 1440,
4075
- "fold": "/usr2/sites/concorde/.taste-skill/after/desktop-fold.jpg",
4076
- "pages": [
4077
- "/usr2/sites/concorde/.taste-skill/after/desktop-page-01.jpg",
4078
- "/usr2/sites/concorde/.taste-skill/after/desktop-page-02.jpg",
4079
- "/usr2/sites/concorde/.taste-skill/after/desktop-page-03.jpg"
4080
- ],
4081
- "film": []
4082
- },
4083
- {
4084
- "viewport": "tablet",
4085
- "width": 768,
4086
- "fold": "/usr2/sites/concorde/.taste-skill/after/tablet-fold.jpg",
4087
- "pages": [
4088
- "/usr2/sites/concorde/.taste-skill/after/tablet-page-01.jpg",
4089
- "/usr2/sites/concorde/.taste-skill/after/tablet-page-02.jpg"
4090
- ],
4091
- "film": []
4092
- },
4093
- {
4094
- "viewport": "mobile",
4095
- "width": 390,
4096
- "fold": "/usr2/sites/concorde/.taste-skill/after/mobile-fold.jpg",
4097
- "pages": [
4098
- "/usr2/sites/concorde/.taste-skill/after/mobile-page-01.jpg"
4099
- ],
4100
- "film": []
4101
- }
4102
- ]
4103
- }