Browse Source

dice

main
Mattias Bodlund 12 hours ago
commit
a928a6f962
17 changed files with 664 additions and 0 deletions
  1. +2
    -0
      .bundle/config
  2. +5
    -0
      .gitignore
  3. +25
    -0
      404.html
  4. +16
    -0
      Gemfile
  5. +233
    -0
      Gemfile.lock
  6. +59
    -0
      _config.yml
  7. +6
    -0
      _includes/ikea-foundation-203x22.svg
  8. +1
    -0
      _includes/inter-ikea-systems.svg
  9. +37
    -0
      _layouts/default.html
  10. +157
    -0
      css/application.css
  11. BIN
      favicon.ico
  12. BIN
      ikea-favicon-150x150.png
  13. BIN
      ikea-favicon-300x300.png
  14. +1
    -0
      images/IF_Icon_Press.json
  15. +2
    -0
      index.html
  16. +43
    -0
      js/dice.js
  17. +77
    -0
      js/lottie-player.js

+ 2
- 0
.bundle/config View File

@ -0,0 +1,2 @@
---
BUNDLE_PATH: "vendor"

+ 5
- 0
.gitignore View File

@ -0,0 +1,5 @@
_site
.sass-cache
.jekyll-cache
.jekyll-metadata
vendor

+ 25
- 0
404.html View File

@ -0,0 +1,25 @@
---
permalink: /404.html
layout: page
---
<style type="text/css" media="screen">
.container {
margin: 10px auto;
max-width: 600px;
text-align: center;
}
h1 {
margin: 30px 0;
font-size: 4em;
line-height: 1;
letter-spacing: -1px;
}
</style>
<div class="container">
<h1>404</h1>
<p><strong>Page not found :(</strong></p>
<p>The requested page could not be found.</p>
</div>

+ 16
- 0
Gemfile View File

@ -0,0 +1,16 @@
source "https://rubygems.org"
# Hello! This is where you manage which Jekyll version is used to run.
# When you want to use a different version, change it below, save the
# file and run `bundle install`. Run Jekyll with `bundle exec`, like so:
#
# bundle exec jekyll serve
#
# This will help ensure the proper Jekyll version is running.
# Happy Jekylling!
gem "jekyll", "~> 4.4.1"
# This is the default theme for new Jekyll sites. You may change this to anything you like.
# If you want to use GitHub Pages, remove the "gem "jekyll"" above and
# uncomment the line below. To upgrade, run `bundle update github-pages`.
# gem "github-pages", group: :jekyll_plugins
# If you have any plugins, put them here!

+ 233
- 0
Gemfile.lock View File

@ -0,0 +1,233 @@
GEM
remote: https://rubygems.org/
specs:
addressable (2.9.0)
public_suffix (>= 2.0.2, < 8.0)
base64 (0.3.0)
bigdecimal (4.1.2)
colorator (1.1.0)
concurrent-ruby (1.3.7)
csv (3.3.5)
em-websocket (0.5.3)
eventmachine (>= 0.12.9)
http_parser.rb (~> 0)
eventmachine (1.2.7)
ffi (1.17.4)
ffi (1.17.4-aarch64-linux-gnu)
ffi (1.17.4-aarch64-linux-musl)
ffi (1.17.4-arm-linux-gnu)
ffi (1.17.4-arm-linux-musl)
ffi (1.17.4-arm64-darwin)
ffi (1.17.4-x86-linux-gnu)
ffi (1.17.4-x86-linux-musl)
ffi (1.17.4-x86_64-darwin)
ffi (1.17.4-x86_64-linux-gnu)
ffi (1.17.4-x86_64-linux-musl)
forwardable-extended (2.6.0)
google-protobuf (4.35.1)
bigdecimal
rake (~> 13.3)
google-protobuf (4.35.1-aarch64-linux-gnu)
bigdecimal
rake (~> 13.3)
google-protobuf (4.35.1-aarch64-linux-musl)
bigdecimal
rake (~> 13.3)
google-protobuf (4.35.1-arm64-darwin)
bigdecimal
rake (~> 13.3)
google-protobuf (4.35.1-x86-linux-gnu)
bigdecimal
rake (~> 13.3)
google-protobuf (4.35.1-x86-linux-musl)
bigdecimal
rake (~> 13.3)
google-protobuf (4.35.1-x86_64-darwin)
bigdecimal
rake (~> 13.3)
google-protobuf (4.35.1-x86_64-linux-gnu)
bigdecimal
rake (~> 13.3)
google-protobuf (4.35.1-x86_64-linux-musl)
bigdecimal
rake (~> 13.3)
http_parser.rb (0.8.1)
i18n (1.15.1)
concurrent-ruby (~> 1.0)
jekyll (4.4.1)
addressable (~> 2.4)
base64 (~> 0.2)
colorator (~> 1.0)
csv (~> 3.0)
em-websocket (~> 0.5)
i18n (~> 1.0)
jekyll-sass-converter (>= 2.0, < 4.0)
jekyll-watch (~> 2.0)
json (~> 2.6)
kramdown (~> 2.3, >= 2.3.1)
kramdown-parser-gfm (~> 1.0)
liquid (~> 4.0)
mercenary (~> 0.3, >= 0.3.6)
pathutil (~> 0.9)
rouge (>= 3.0, < 5.0)
safe_yaml (~> 1.0)
terminal-table (>= 1.8, < 4.0)
webrick (~> 1.7)
jekyll-sass-converter (3.1.0)
sass-embedded (~> 1.75)
jekyll-watch (2.2.1)
listen (~> 3.0)
json (2.19.9)
kramdown (2.5.2)
rexml (>= 3.4.4)
kramdown-parser-gfm (1.1.0)
kramdown (~> 2.0)
liquid (4.0.4)
listen (3.10.0)
logger
rb-fsevent (~> 0.10, >= 0.10.3)
rb-inotify (~> 0.9, >= 0.9.10)
logger (1.7.0)
mercenary (0.4.0)
pathutil (0.16.2)
forwardable-extended (~> 2.6)
public_suffix (7.0.5)
rake (13.4.2)
rb-fsevent (0.11.2)
rb-inotify (0.11.1)
ffi (~> 1.0)
rexml (3.4.4)
rouge (4.7.0)
safe_yaml (1.0.5)
sass-embedded (1.101.0)
google-protobuf (~> 4.31)
rake (>= 13)
sass-embedded (1.101.0-aarch64-linux-android)
google-protobuf (~> 4.31)
sass-embedded (1.101.0-aarch64-linux-gnu)
google-protobuf (~> 4.31)
sass-embedded (1.101.0-aarch64-linux-musl)
google-protobuf (~> 4.31)
sass-embedded (1.101.0-arm-linux-androideabi)
google-protobuf (~> 4.31)
sass-embedded (1.101.0-arm-linux-gnueabihf)
google-protobuf (~> 4.31)
sass-embedded (1.101.0-arm-linux-musleabihf)
google-protobuf (~> 4.31)
sass-embedded (1.101.0-arm64-darwin)
google-protobuf (~> 4.31)
sass-embedded (1.101.0-riscv64-linux-android)
google-protobuf (~> 4.31)
sass-embedded (1.101.0-riscv64-linux-gnu)
google-protobuf (~> 4.31)
sass-embedded (1.101.0-riscv64-linux-musl)
google-protobuf (~> 4.31)
sass-embedded (1.101.0-x86_64-darwin)
google-protobuf (~> 4.31)
sass-embedded (1.101.0-x86_64-linux-android)
google-protobuf (~> 4.31)
sass-embedded (1.101.0-x86_64-linux-gnu)
google-protobuf (~> 4.31)
sass-embedded (1.101.0-x86_64-linux-musl)
google-protobuf (~> 4.31)
terminal-table (3.0.2)
unicode-display_width (>= 1.1.1, < 3)
unicode-display_width (2.6.0)
webrick (1.9.2)
PLATFORMS
aarch64-linux-android
aarch64-linux-gnu
aarch64-linux-musl
arm-linux-androideabi
arm-linux-gnu
arm-linux-gnueabihf
arm-linux-musl
arm-linux-musleabihf
arm64-darwin
riscv64-linux-android
riscv64-linux-gnu
riscv64-linux-musl
ruby
x86-linux-gnu
x86-linux-musl
x86_64-darwin
x86_64-linux-android
x86_64-linux-gnu
x86_64-linux-musl
DEPENDENCIES
jekyll (~> 4.4.1)
CHECKSUMS
addressable (2.9.0) sha256=7fdf6ac3660f7f4e867a0838be3f6cf722ace541dd97767fa42bc6cfa980c7af
base64 (0.3.0) sha256=27337aeabad6ffae05c265c450490628ef3ebd4b67be58257393227588f5a97b
bigdecimal (4.1.2) sha256=53d217666027eab4280346fba98e7d5b66baaae1b9c3c1c0ffe89d48188a3fbd
bundler (4.0.14) sha256=d09a0a965cf772266a7e49e83610be7c2f4e49e61134c42a56804bb383cc24b8
colorator (1.1.0) sha256=e2f85daf57af47d740db2a32191d1bdfb0f6503a0dfbc8327d0c9154d5ddfc38
concurrent-ruby (1.3.7) sha256=4412caec3a5ea2e5fdc52076724c071a81f2c0593d83b2ac8cbb8ca63b3151b0
csv (3.3.5) sha256=6e5134ac3383ef728b7f02725d9872934f523cb40b961479f69cf3afa6c8e73f
em-websocket (0.5.3) sha256=f56a92bde4e6cb879256d58ee31f124181f68f8887bd14d53d5d9a292758c6a8
eventmachine (1.2.7) sha256=994016e42aa041477ba9cff45cbe50de2047f25dd418eba003e84f0d16560972
ffi (1.17.4) sha256=bcd1642e06f0d16fc9e09ac6d49c3a7298b9789bcb58127302f934e437d60acf
ffi (1.17.4-aarch64-linux-gnu) sha256=b208f06f91ffd8f5e1193da3cae3d2ccfc27fc36fba577baf698d26d91c080df
ffi (1.17.4-aarch64-linux-musl) sha256=9286b7a615f2676245283aef0a0a3b475ae3aae2bb5448baace630bb77b91f39
ffi (1.17.4-arm-linux-gnu) sha256=d6dbddf7cb77bf955411af5f187a65b8cd378cb003c15c05697f5feee1cb1564
ffi (1.17.4-arm-linux-musl) sha256=9d4838ded0465bef6e2426935f6bcc93134b6616785a84ffd2a3d82bc3cf6f95
ffi (1.17.4-arm64-darwin) sha256=19071aaf1419251b0a46852abf960e77330a3b334d13a4ab51d58b31a937001b
ffi (1.17.4-x86-linux-gnu) sha256=38e150df5f4ca555e25beca4090823ae09657bceded154e3c52f8631c1ed72cf
ffi (1.17.4-x86-linux-musl) sha256=fbeec0fc7c795bcf86f623bb18d31ea1820f7bd580e1703a3d3740d527437809
ffi (1.17.4-x86_64-darwin) sha256=aa70390523cf3235096cf64962b709b4cfbd5c082a2cb2ae714eb0fe2ccda496
ffi (1.17.4-x86_64-linux-gnu) sha256=9d3db14c2eae074b382fa9c083fe95aec6e0a1451da249eab096c34002bc752d
ffi (1.17.4-x86_64-linux-musl) sha256=3fdf9888483de005f8ef8d1cf2d3b20d86626af206cbf780f6a6a12439a9c49e
forwardable-extended (2.6.0) sha256=1bec948c469bbddfadeb3bd90eb8c85f6e627a412a3e852acfd7eaedbac3ec97
google-protobuf (4.35.1) sha256=a3a6471331d918f58dfa4d014a8f6286f0af2cf4840216bde52fcf2ea3fe3726
google-protobuf (4.35.1-aarch64-linux-gnu) sha256=50ca44d0eeff3f8475e630a1accdd974256f3510694d574e2c9d6119ea8bc9e1
google-protobuf (4.35.1-aarch64-linux-musl) sha256=d5c65cef6bd6498a9e5ed5f88cf6cf7e341c10b0a005e32137d5d1a2b6e8c18a
google-protobuf (4.35.1-arm64-darwin) sha256=d9c957df04fa89c749fa9a72a7b383eb4296efc9b2303dc6fd6fbe39c698ad6b
google-protobuf (4.35.1-x86-linux-gnu) sha256=cc7492566b27ad8b5dfa3a7b6f9b11e905050cc53c2fa8ff22de375a9e7a70fb
google-protobuf (4.35.1-x86-linux-musl) sha256=ab403790b59e4dc588ffbed1eaacf05d4ca2f0d12ac9c13d6c64e69380d8c99e
google-protobuf (4.35.1-x86_64-darwin) sha256=66b62b4df00931018a692806df66393efa960d6d2b7da69735187249f950d3ee
google-protobuf (4.35.1-x86_64-linux-gnu) sha256=c786439087512a3fbd199e9897d265b855f951d4027e218ea55e858d45969edd
google-protobuf (4.35.1-x86_64-linux-musl) sha256=91890eb0002934a339fdb7d77a147c46b7474b6799db27872b747b905837f744
http_parser.rb (0.8.1) sha256=9ae8df145b39aa5398b2f90090d651c67bd8e2ebfe4507c966579f641e11097a
i18n (1.15.1) sha256=505ec5de1f4e6c8a2cb028ef9700ca495f117911643455721dee5abdca797255
jekyll (4.4.1) sha256=4c1144d857a5b2b80d45b8cf5138289579a9f8136aadfa6dd684b31fe2bc18c1
jekyll-sass-converter (3.1.0) sha256=83925d84f1d134410c11d0c6643b0093e82e3a3cf127e90757a85294a3862443
jekyll-watch (2.2.1) sha256=bc44ed43f5e0a552836245a54dbff3ea7421ecc2856707e8a1ee203a8387a7e1
json (2.19.9) sha256=9b9025b7cdddafa38d316eca0b2358488e42d417045c1b90d216a9fefe46b79a
kramdown (2.5.2) sha256=1ba542204c66b6f9111ff00dcc26075b95b220b07f2905d8261740c82f7f02fa
kramdown-parser-gfm (1.1.0) sha256=fb39745516427d2988543bf01fc4cf0ab1149476382393e0e9c48592f6581729
liquid (4.0.4) sha256=4fcfebb1a045e47918388dbb7a0925e7c3893e58d2bd6c3b3c73ec17a2d8fdb3
listen (3.10.0) sha256=c6e182db62143aeccc2e1960033bebe7445309c7272061979bb098d03760c9d2
logger (1.7.0) sha256=196edec7cc44b66cfb40f9755ce11b392f21f7967696af15d274dde7edff0203
mercenary (0.4.0) sha256=b25a1e4a59adca88665e08e24acf0af30da5b5d859f7d8f38fba52c28f405138
pathutil (0.16.2) sha256=e43b74365631cab4f6d5e4228f812927efc9cb2c71e62976edcb252ee948d589
public_suffix (7.0.5) sha256=1a8bb08f1bbea19228d3bed6e5ed908d1cb4f7c2726d18bd9cadf60bc676f623
rake (13.4.2) sha256=cb825b2bd5f1f8e91ca37bddb4b9aaf345551b4731da62949be002fa89283701
rb-fsevent (0.11.2) sha256=43900b972e7301d6570f64b850a5aa67833ee7d87b458ee92805d56b7318aefe
rb-inotify (0.11.1) sha256=a0a700441239b0ff18eb65e3866236cd78613d6b9f78fea1f9ac47a85e47be6e
rexml (3.4.4) sha256=19e0a2c3425dfbf2d4fc1189747bdb2f849b6c5e74180401b15734bc97b5d142
rouge (4.7.0) sha256=dba5896715c0325c362e895460a6d350803dbf6427454f49a47500f3193ea739
safe_yaml (1.0.5) sha256=a6ac2d64b7eb027bdeeca1851fe7e7af0d668e133e8a88066a0c6f7087d9f848
sass-embedded (1.101.0) sha256=57dbc3409e2c0a2c581a4c9945c2bd72ec88e71ec98017bd02dd1da8a76b22f4
sass-embedded (1.101.0-aarch64-linux-android) sha256=ad0a35c6ff5cdc4e31c5d8261a768ef460c6c7d1458081183e42170e1474c4b5
sass-embedded (1.101.0-aarch64-linux-gnu) sha256=8f6926349e880dbb4fda75fb182086fb60aa821b756bcbfc8e5b2b23b1f269d6
sass-embedded (1.101.0-aarch64-linux-musl) sha256=0a02b4b75db305160db1b0512f040762242128a9b5c01b0fa7a504f2b24557f2
sass-embedded (1.101.0-arm-linux-androideabi) sha256=88e762531f90d4a2eef55ffafeba337585e1bb24b22307ebd7fe5505de9a4476
sass-embedded (1.101.0-arm-linux-gnueabihf) sha256=358df7f98d13ff53739ebc45f5c5acd4dd96833bf87f39c74d11f798081d4158
sass-embedded (1.101.0-arm-linux-musleabihf) sha256=d993a3ad017250d46d1312bc10cfded5ab4585906d37a60a56494bd662182d3a
sass-embedded (1.101.0-arm64-darwin) sha256=9fed684380b49499dfc856aba0d026a0748f924bd78044ffff2bae1537aea73e
sass-embedded (1.101.0-riscv64-linux-android) sha256=1bd35527e1ca24af6aa2ba9db797bc9b72331ebbec9ff6e99ea02b24f83b3da1
sass-embedded (1.101.0-riscv64-linux-gnu) sha256=7805a249ed4c31b58b2f7d054d14f0ed24c61a836f579cd76ed2367088142bcf
sass-embedded (1.101.0-riscv64-linux-musl) sha256=8bd60eb9ebe6f9f2740a4e9ddb792a3db1fbba282e3375103844b4979eb7c731
sass-embedded (1.101.0-x86_64-darwin) sha256=20ff4afd7c052b3f8d7b4abe511e8114985a07dff7616750a43ee1fc2759fb28
sass-embedded (1.101.0-x86_64-linux-android) sha256=472b72114ededa00a22e13553dd31f98d1a92d52bdbe2e738a4dbac2dd50c779
sass-embedded (1.101.0-x86_64-linux-gnu) sha256=ff48452b2351eaaf4e6e02f59de0e9e35f6f163e8456d520db49b4d87cf73c27
sass-embedded (1.101.0-x86_64-linux-musl) sha256=2286feef3c7a8d9bbb075aa1651e1a81942aca1213f7c2d30cc1d6f4eb5b4104
terminal-table (3.0.2) sha256=f951b6af5f3e00203fb290a669e0a85c5dd5b051b3b023392ccfd67ba5abae91
unicode-display_width (2.6.0) sha256=12279874bba6d5e4d2728cef814b19197dbb10d7a7837a869bab65da943b7f5a
webrick (1.9.2) sha256=beb4a15fc474defed24a3bda4ffd88a490d517c9e4e6118c3edce59e45864131
BUNDLED WITH
4.0.14

+ 59
- 0
_config.yml View File

@ -0,0 +1,59 @@
# Welcome to Jekyll!
#
# This config file is meant for settings that affect your whole blog, values
# which you are expected to set up once and rarely edit after that. If you find
# yourself editing this file very often, consider using Jekyll's data files
# feature for the data you need to update frequently.
#
# For technical reasons, this file is *NOT* reloaded automatically when you use
# 'bundle exec jekyll serve'. If you change this file, please restart the server process.
#
# If you need help with YAML syntax, here are some quick references for you:
# https://learn-the-web.algonquindesign.ca/topics/markdown-yaml-cheat-sheet/#yaml
# https://learnxinyminutes.com/docs/yaml/
#
# Site settings
# These are used to personalize your new site. If you look in the HTML files,
# you will see them accessed via {{ site.title }}, {{ site.email }}, and so on.
# You can create any custom variable you would like, and they will be accessible
# in the templates via {{ site.myvariable }}.
title: IKEA Foundation - Dice
description: >- # this means to ignore newlines until "baseurl:"
baseurl: "" # the subpath of your site, e.g. /blog
url: "" # the base hostname & protocol for your site, e.g. http://example.com
# Build settings
# theme: minima
# plugins:
# - jekyll-feed
# Exclude from processing.
# The following items will not be processed, by default.
# Any item listed under the `exclude:` key here will be automatically added to
# the internal "default list".
#
# Excluded items can be processed by explicitly listing the directories or
# their entries' file path in the `include:` list.
#
# exclude:
# - .sass-cache/
# - .jekyll-cache/
# - gemfiles/
# - Gemfile
# - Gemfile.lock
# - node_modules/
# - vendor/bundle/
# - vendor/cache/
# - vendor/gems/
# - vendor/ruby/
exclude:
- Readme.txt
defaults:
-
scope:
path: "" # an empty string here means all files in the project
values:
layout: "default"

+ 6
- 0
_includes/ikea-foundation-203x22.svg View File

@ -0,0 +1,6 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 203 22" width="203" height="22">
<path d="M54.15,22H0V0h54.15v22Z" style="fill:#0058a3;"/>
<path d="M1.06,11c0,5.32,10.91,9.73,26.02,9.73s26.02-4.41,26.02-9.73S42.19,1.27,27.08,1.27,1.06,5.68,1.06,11Z" style="fill:#ffdb00;"/>
<path d="M25.54,14.12c.16.24.34.46.57.69h-5.86c0-.23-.22-.7-.47-1.08-.25-.37-1.59-2.41-1.59-2.41v2.8c0,.23,0,.46.11.69h-4.88c.11-.23.11-.46.11-.69v-6.66c0-.23,0-.46-.11-.69h4.88c-.11.23-.11.46-.11.69v2.91s1.56-2.03,1.92-2.5c.27-.36.61-.86.61-1.09h5.09c-.35.23-.74.66-1.05,1.04-.28.34-1.87,2.27-1.87,2.27,0,0,2.35,3.58,2.65,4.04ZM27.08,7.46v6.66c0,.23,0,.46-.11.69h9.42v-2.23c-.23.11-.46.11-.69.11h-3.96v-1.06h3.81v-1.69h-3.81v-1.06h3.96c.23,0,.46,0,.69.11v-2.23h-9.42c.11.23.11.46.11.69ZM49.44,14.12c.09.23.18.46.38.69h-5.11c.03-.23-.06-.46-.15-.69,0,0-.08-.19-.18-.46,0-.02-.05-.12-.05-.12h-2.94l-.04.12s-.08.23-.17.46c-.08.23-.17.46-.13.69h-4.03c.2-.23.28-.46.36-.69.13-.37,2.23-6.14,2.42-6.66.08-.23.17-.46.13-.69h6.81c-.06.23.06.46.15.69.2.51,2.38,6.21,2.55,6.66ZM43.69,11.85c-.37-.97-.68-1.78-.71-1.86-.09-.23-.16-.53-.16-.53,0,0-.06.3-.14.53-.03.07-.32.89-.67,1.86h1.68ZM11.11,6.77h-5.31c.11.23.11.46.11.69v6.66c0,.23,0,.46-.11.69h5.31c-.11-.23-.11-.46-.11-.69v-6.66c0-.23,0-.46.11-.69ZM47.81,7.4c0-.61.44-1.06,1.06-1.06s1.06.44,1.06,1.06-.44,1.06-1.06,1.06-1.06-.44-1.06-1.06ZM48.02,7.4c0,.47.35.85.85.85.47,0,.85-.35.85-.85,0-.47-.35-.85-.85-.85s-.85.35-.85.85ZM48.65,8.04h-.19v-1.27h.48c.22,0,.4.19.4.41,0,.16-.09.31-.22.37l.27.49h-.21l-.25-.45h-.27v.45h0ZM48.65,7.4h.26c.13,0,.24-.09.24-.22s-.11-.22-.24-.22h-.26v.45Z" style="fill:#0058a3;"/>
<path class="logo-text" d="M108.37,17.6V4.4h7.38v1.46h-5.71v4.68h5.36v1.46h-5.36v5.6h-1.66,0ZM121.58,17.78c-2.62,0-4.55-1.87-4.55-5.16s1.76-5.12,4.6-5.12c2.68,0,4.57,1.85,4.57,5.12s-1.79,5.16-4.62,5.16ZM121.62,16.44c2,0,2.9-1.46,2.9-3.81s-.91-3.75-2.92-3.75-2.88,1.4-2.88,3.75.89,3.81,2.9,3.81ZM136.59,17.6h-1.33l-.24-1.31h-.07c-.65,1.04-1.87,1.5-3.14,1.5-2.38,0-3.6-1.09-3.6-3.61v-6.49h1.65v6.38c0,1.59.7,2.37,2.2,2.37,2.2,0,2.92-1.28,2.92-3.59v-5.16h1.63v9.91h0ZM147.7,11.15v6.45h-1.61v-6.34c0-1.59-.7-2.39-2.22-2.39-2.2,0-2.9,1.28-2.9,3.59v5.14h-1.63V7.69h1.31l.24,1.35h.09c.65-1.04,1.87-1.53,3.12-1.53,2.37,0,3.59,1.09,3.59,3.64ZM150.06,12.66c0-3.4,1.63-5.16,4.08-5.16,1.54,0,2.46.65,3.07,1.46h.11c-.04-.31-.11-1.09-.11-1.46v-3.96h1.63v14.05h-1.31l-.24-1.33h-.07c-.59.85-1.53,1.52-3.09,1.52-2.46,0-4.07-1.72-4.07-5.12ZM157.23,12.98v-.3c0-2.46-.67-3.83-2.87-3.83-1.76,0-2.62,1.5-2.62,3.85s.87,3.73,2.64,3.73c2.09,0,2.85-1.15,2.85-3.46ZM169.13,10.85v6.75h-1.18l-.31-1.4h-.07c-.87,1.09-1.66,1.59-3.33,1.59-1.79,0-3.12-.92-3.12-2.94s1.52-3.07,4.75-3.16l1.68-.06v-.59c0-1.65-.76-2.2-2.05-2.2-1.04,0-1.98.37-2.79.76l-.5-1.22c.87-.46,2.09-.85,3.38-.85,2.4,0,3.55,1.02,3.55,3.33h0ZM166.06,12.81c-2.48.09-3.27.79-3.27,2.05,0,1.11.74,1.61,1.81,1.61,1.66,0,2.92-.91,2.92-2.83v-.89l-1.46.06ZM176.82,16.25v1.24c-.35.17-1.07.3-1.66.3-1.55,0-2.9-.67-2.9-3.07v-5.77h-1.4v-.78l1.42-.65.65-2.11h.96v2.27h2.86v1.26h-2.86v5.73c0,1.2.65,1.77,1.55,1.77.48,0,1.07-.09,1.39-.2ZM180.57,5.01c0,.7-.44,1.04-.94,1.04-.54,0-.96-.33-.96-1.04s.43-1.04.96-1.04c.5,0,.94.31.94,1.04ZM180.42,17.6h-1.63V7.69h1.63v9.91ZM187.25,17.78c-2.62,0-4.55-1.87-4.55-5.16s1.76-5.12,4.6-5.12c2.68,0,4.57,1.85,4.57,5.12s-1.79,5.16-4.62,5.16ZM187.29,16.44c2,0,2.9-1.46,2.9-3.81s-.9-3.75-2.92-3.75-2.88,1.4-2.88,3.75.89,3.81,2.9,3.81ZM202.56,11.15v6.45h-1.61v-6.34c0-1.59-.7-2.39-2.22-2.39-2.2,0-2.9,1.28-2.9,3.59v5.14h-1.63V7.69h1.31l.24,1.35h.09c.65-1.04,1.87-1.53,3.12-1.53,2.37,0,3.59,1.09,3.59,3.64ZM65.16,4.4h1.66v13.2h-1.66V4.4ZM78.12,17.6l-4.68-6.3-1.35,1.18v5.12h-1.66V4.4h1.66v6.51c.74-.83,1.52-1.66,2.27-2.51l3.57-3.99h1.94l-5.23,5.75,5.44,7.45h-1.96ZM81.87,17.6V4.4h7.38v1.46h-5.71v4.12h5.38v1.44h-5.38v4.71h5.71v1.46h-7.38ZM98.84,13.51h-5.23l-1.57,4.09h-1.68l5.16-13.26h1.5l5.14,13.26h-1.72l-1.59-4.09ZM96.86,8.04c-.11-.3-.5-1.52-.63-1.98-.18.76-.43,1.55-.57,1.98l-1.5,3.99h4.18l-1.48-3.99Z"/>
</svg>

+ 1
- 0
_includes/inter-ikea-systems.svg
File diff suppressed because it is too large
View File


+ 37
- 0
_layouts/default.html View File

@ -0,0 +1,37 @@
<!doctype html>
<html lang="en">
<head>
<title>{{ site.title }}</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<meta name="description" content="{{ site.description }}">
<link rel="apple-touch-icon" href="/ikea-favicon-300x300.png">
<link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" sizes="16x16 32x32">
<link rel="icon" sizes="192x192" href="/ikea-favicon-300x300.png">
<link rel="stylesheet" href="/css/application.css">
<script src="/js/lottie-player.js"></script>
<script src="/js/dice.js" defer></script>
</head>
<body>
<header>
{% include ikea-foundation-203x22.svg %}
</header>
{% include inter-ikea-systems.svg %}
<main>
<button id="dice"></button>
<lottie-player src="/images/IF_Icon_Press.json" background="transparent" speed="1" style="width:120px;height:120px" loop autoplay></lottie-player>
</main>
</body>
</html>

+ 157
- 0
css/application.css View File

@ -0,0 +1,157 @@
:root {
--clr-white: #fff;
--clr-black: #000;
--clr-green: #3FB83E;
--ff-base: system-ui, sans-serif;
font: 16px/1.4 var(--ff-base);
}
body {
margin: 0;
display: flex;
flex-direction: column;
gap: 0;
min-height: 100vh;
min-height: 100svh;
-webkit-font-smoothing: antialiased;
touch-action: manipulation;
background-color: var(--clr-green);
}
button {
cursor: pointer;
}
ul[class] {
margin: 0;
padding: 0;
list-style: none;
}
form {
margin: 0;
}
header {
background-color: var(--clr-white);
position: fixed;
inset: 1rem 1rem auto 1rem;
padding: 0.875rem 1rem;
display: flex;
justify-content: space-between;
align-items: center;
box-shadow: 0px 2px 2px 0px #0000000A;
z-index: 100;
anchor-name: --header;
> a {
flex-grow: 1;
max-width: 12.6875rem;
}
}
#inter-ikea-systems {
position: absolute;
position-anchor: --header;
right: anchor(right);
top: calc(anchor(bottom) + 1.25rem);
}
main {
display: flex;
flex-direction: column;
min-height: 100vh;
min-height: 100svh;
align-items: center;
justify-content: center;
gap: 3rem;
}
button#dice {
display: block;
background-color: var(--clr-white);
border-radius: 1.25rem;
border: none;
appearance: none;
width: 11rem;
height: 11rem;
padding: 1.5rem;
box-sizing: border-box;
}
button#dice.is-rolling {
animation: dice-roll 0.4s ease;
}
@keyframes dice-roll {
0% { transform: rotate(0) scale(1); }
50% { transform: rotate(180deg) scale(0.85); }
100% { transform: rotate(360deg) scale(1); }
}
.dice__face {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-template-rows: repeat(3, 1fr);
gap: 1rem;
width: 100%;
height: 100%;
padding: 0;
box-sizing: border-box;
}
.pip {
align-self: center;
justify-self: center;
width: 2rem;
height: 2rem;
border-radius: 50%;
background-color: var(--clr-black);
visibility: hidden;
}
.pip--tl { grid-area: 1 / 1; }
.pip--tr { grid-area: 1 / 3; }
.pip--ml { grid-area: 2 / 1; }
.pip--c { grid-area: 2 / 2; }
.pip--mr { grid-area: 2 / 3; }
.pip--bl { grid-area: 3 / 1; }
.pip--br { grid-area: 3 / 3; }
/* Show the pips that belong to each value. */
.dice__face[data-value="1"] .pip--c,
.dice__face[data-value="2"] .pip--tl,
.dice__face[data-value="2"] .pip--br,
.dice__face[data-value="3"] .pip--tl,
.dice__face[data-value="3"] .pip--c,
.dice__face[data-value="3"] .pip--br,
.dice__face[data-value="4"] .pip--tl,
.dice__face[data-value="4"] .pip--tr,
.dice__face[data-value="4"] .pip--bl,
.dice__face[data-value="4"] .pip--br,
.dice__face[data-value="5"] .pip--tl,
.dice__face[data-value="5"] .pip--tr,
.dice__face[data-value="5"] .pip--c,
.dice__face[data-value="5"] .pip--bl,
.dice__face[data-value="5"] .pip--br,
.dice__face[data-value="6"] .pip--tl,
.dice__face[data-value="6"] .pip--tr,
.dice__face[data-value="6"] .pip--ml,
.dice__face[data-value="6"] .pip--mr,
.dice__face[data-value="6"] .pip--bl,
.dice__face[data-value="6"] .pip--br {
visibility: visible;
}

BIN
favicon.ico View File

Before After

BIN
ikea-favicon-150x150.png View File

Before After
Width: 150  |  Height: 150  |  Size: 4.7 KiB

BIN
ikea-favicon-300x300.png View File

Before After
Width: 300  |  Height: 300  |  Size: 11 KiB

+ 1
- 0
images/IF_Icon_Press.json
File diff suppressed because it is too large
View File


+ 2
- 0
index.html View File

@ -0,0 +1,2 @@
---
---

+ 43
- 0
js/dice.js View File

@ -0,0 +1,43 @@
// Renders a 6-sided die inside #dice and rolls a random value on click.
(() => {
const dice = document.getElementById('dice');
if (!dice) return;
// The 7 standard pip positions of a die face.
const positions = ['tl', 'tr', 'ml', 'c', 'mr', 'bl', 'br'];
const face = document.createElement('span');
face.className = 'dice__face';
face.innerHTML = positions
.map((p) => `<span class="pip pip--${p}"></span>`)
.join('');
dice.appendChild(face);
const SPIN_MS = 400; // keep in sync with the dice-roll animation duration
const showValue = () => {
const value = Math.floor(Math.random() * 6) + 1;
face.dataset.value = value;
dice.setAttribute('aria-label', `Dice showing ${value}. Click to roll.`);
};
const roll = (animate = true) => {
if (!animate) {
showValue();
return;
}
// Restart the roll animation on every click.
dice.classList.remove('is-rolling');
void dice.offsetWidth; // force reflow so the animation can replay
dice.classList.add('is-rolling');
// Reveal the new value once the spin is halfway through.
setTimeout(showValue, SPIN_MS / 2);
};
dice.addEventListener('click', () => roll());
dice.addEventListener('animationend', () => dice.classList.remove('is-rolling'));
roll(false); // show a starting value without animating
})();

+ 77
- 0
js/lottie-player.js
File diff suppressed because it is too large
View File


Loading…
Cancel
Save