├── .all-contributorsrc
├── .browserslistrc
├── .editorconfig
├── .eslintrc.js
├── .github
├── dependabot.yml
├── release-drafter.yml
└── workflows
│ ├── cd-fonts.yml
│ ├── cd-vocabulary.yml
│ ├── cd-vue.yml
│ ├── ci-build.yml
│ ├── ci-lint.yml
│ ├── ci-test.yml
│ ├── project-automation.yml
│ ├── release-drafter.yml
│ └── stale.yml
├── .gitignore
├── .storybook
├── main.js
└── preview.js
├── CHANGELOG.md
├── LICENSE
├── README.md
├── babel.config.js
├── dist
└── css
│ ├── vocabulary.css
│ └── vocabulary.css.map
├── jest.config.js
├── package-lock.json
├── package.json
├── packages
├── fonts
│ └── package.json
├── vocabulary
│ └── package.json
└── vue-vocabulary
│ └── package.json
├── readme_assets
└── vocabulary_logo.svg
├── scripts
├── build
│ ├── fonts.sh
│ ├── vocabulary.sh
│ └── vue_vocabulary.sh
└── publish
│ ├── fonts.sh
│ ├── vocabulary.sh
│ └── vue-vocabulary.sh
├── src
├── _deprecated
│ ├── assets
│ │ ├── demo
│ │ │ ├── broadway_tower.jpg
│ │ │ ├── left_index.png
│ │ │ ├── lion_dafrique.jpg
│ │ │ ├── show_code.png
│ │ │ └── tab_content.png
│ │ ├── fonts
│ │ │ ├── AccidenzCommons.otf
│ │ │ ├── JetBrainsMono-Bold.otf
│ │ │ ├── JetBrainsMono-Bold.woff
│ │ │ ├── JetBrainsMono-Bold.woff2
│ │ │ ├── JetBrainsMono-Regular.otf
│ │ │ ├── JetBrainsMono-Regular.woff
│ │ │ ├── JetBrainsMono-Regular.woff2
│ │ │ ├── RobotoCondensed-Bold.otf
│ │ │ ├── RobotoCondensed-Bold.woff
│ │ │ ├── RobotoCondensed-Bold.woff2
│ │ │ ├── RobotoCondensed-Regular.otf
│ │ │ ├── RobotoCondensed-Regular.woff
│ │ │ ├── RobotoCondensed-Regular.woff2
│ │ │ ├── SourceSansPro-Bold.otf
│ │ │ ├── SourceSansPro-Bold.woff
│ │ │ ├── SourceSansPro-Bold.woff2
│ │ │ ├── SourceSansPro-Regular.otf
│ │ │ ├── SourceSansPro-Regular.woff
│ │ │ ├── SourceSansPro-Regular.woff2
│ │ │ ├── SourceSansPro-SemiBold.otf
│ │ │ ├── SourceSansPro-SemiBold.woff
│ │ │ └── SourceSansPro-SemiBold.woff2
│ │ ├── icons
│ │ │ ├── adjust.svg
│ │ │ ├── angle-down.svg
│ │ │ ├── angle-left.svg
│ │ │ ├── angle-right.svg
│ │ │ ├── angle-up.svg
│ │ │ ├── arrow-down.svg
│ │ │ ├── arrow-up.svg
│ │ │ ├── bars.svg
│ │ │ ├── bookmark-regular.svg
│ │ │ ├── bookmark-solid.svg
│ │ │ ├── calendar.svg
│ │ │ ├── caret-down.svg
│ │ │ ├── caret-left.svg
│ │ │ ├── caret-right.svg
│ │ │ ├── caret-up.svg
│ │ │ ├── cc-by.svg
│ │ │ ├── cc-heart-filled.svg
│ │ │ ├── cc-heart.svg
│ │ │ ├── cc-logo.svg
│ │ │ ├── cc-nc-eu.svg
│ │ │ ├── cc-nc-jp.svg
│ │ │ ├── cc-nc.svg
│ │ │ ├── cc-nd.svg
│ │ │ ├── cc-pd.svg
│ │ │ ├── cc-pdm.svg
│ │ │ ├── cc-remix.svg
│ │ │ ├── cc-sa.svg
│ │ │ ├── cc-sampling-plus.svg
│ │ │ ├── cc-sampling.svg
│ │ │ ├── cc-share.svg
│ │ │ ├── cc-zero.svg
│ │ │ ├── check.svg
│ │ │ ├── chevron-down.svg
│ │ │ ├── chevron-left.svg
│ │ │ ├── chevron-right.svg
│ │ │ ├── chevron-up.svg
│ │ │ ├── circle-filled.svg
│ │ │ ├── circle-outline.svg
│ │ │ ├── envelope.svg
│ │ │ ├── exclamation.svg
│ │ │ ├── external-link.svg
│ │ │ ├── facebook.svg
│ │ │ ├── filter.svg
│ │ │ ├── flag.svg
│ │ │ ├── github.svg
│ │ │ ├── github_corner.svg
│ │ │ ├── globe.svg
│ │ │ ├── heart.svg
│ │ │ ├── info.svg
│ │ │ ├── instagram.svg
│ │ │ ├── linkedin.svg
│ │ │ ├── medium.svg
│ │ │ ├── messenger.svg
│ │ │ ├── minus.svg
│ │ │ ├── pinterest.svg
│ │ │ ├── plus.svg
│ │ │ ├── question.svg
│ │ │ ├── reddit.svg
│ │ │ ├── rss.svg
│ │ │ ├── search.svg
│ │ │ ├── slack.svg
│ │ │ ├── sliders.svg
│ │ │ ├── sms.svg
│ │ │ ├── sort.svg
│ │ │ ├── times.svg
│ │ │ ├── tumbler.svg
│ │ │ ├── twitter.svg
│ │ │ └── whatsapp.svg
│ │ ├── license_badges
│ │ │ ├── big
│ │ │ │ ├── by.svg
│ │ │ │ ├── by_nc.eu.svg
│ │ │ │ ├── by_nc.svg
│ │ │ │ ├── by_nc_nd.eu.svg
│ │ │ │ ├── by_nc_nd.svg
│ │ │ │ ├── by_nc_sa.eu.svg
│ │ │ │ ├── by_nc_sa.svg
│ │ │ │ ├── by_nd.svg
│ │ │ │ ├── by_sa.svg
│ │ │ │ ├── cc_zero.svg
│ │ │ │ └── publicdomain.svg
│ │ │ └── small
│ │ │ │ ├── by.svg
│ │ │ │ ├── by_nc.svg
│ │ │ │ ├── by_nc_nd.svg
│ │ │ │ ├── by_nc_sa.svg
│ │ │ │ ├── by_nd.svg
│ │ │ │ ├── by_sa.svg
│ │ │ │ ├── cc_zero.svg
│ │ │ │ └── publicdomain.svg
│ │ └── logos
│ │ │ ├── cc
│ │ │ ├── letterheart.svg
│ │ │ ├── lettermark.svg
│ │ │ └── logomark.svg
│ │ │ └── products
│ │ │ ├── certificate.svg
│ │ │ ├── certificates.svg
│ │ │ ├── chooser.svg
│ │ │ ├── global_network.svg
│ │ │ ├── global_summit.svg
│ │ │ ├── legal_database.svg
│ │ │ ├── open_source.svg
│ │ │ ├── search.svg
│ │ │ ├── state_of_the_commons.svg
│ │ │ ├── vocabulary.svg
│ │ │ └── vocabulary_inverted.svg
│ ├── components
│ │ ├── breadcrumb
│ │ │ ├── breadcrumb.scss
│ │ │ └── breadcrumb.stories.mdx
│ │ ├── buttons
│ │ │ ├── Vue
│ │ │ │ ├── DonateButton.stories.js
│ │ │ │ ├── DonateButton.vue
│ │ │ │ ├── VButton.stories.js
│ │ │ │ └── VButton.vue
│ │ │ ├── button.scss
│ │ │ └── buttons.stories.mdx
│ │ ├── cards
│ │ │ ├── card.scss
│ │ │ └── cards.stories.mdx
│ │ ├── footer
│ │ │ ├── footer.scss
│ │ │ └── footer.stories.mdx
│ │ ├── form
│ │ │ ├── Vue
│ │ │ │ ├── VCheckbox.stories.js
│ │ │ │ ├── VCheckbox.vue
│ │ │ │ ├── VRadio.stories.js
│ │ │ │ └── VRadio.vue
│ │ │ ├── checkbox.stories.mdx
│ │ │ ├── form.scss
│ │ │ ├── input.stories.mdx
│ │ │ ├── radio.stories.mdx
│ │ │ ├── select.stories.mdx
│ │ │ └── textarea.stories.mdx
│ │ ├── github_corner
│ │ │ ├── github_corner.scss
│ │ │ └── github_corner.stories.mdx
│ │ ├── global_header
│ │ │ ├── global_header.scss
│ │ │ └── global_header.stories.mdx
│ │ ├── header
│ │ │ ├── Vue
│ │ │ │ ├── ChooserLogo.vue
│ │ │ │ ├── NavDropdown.vue
│ │ │ │ ├── NavItem.vue
│ │ │ │ ├── VHeader.stories.js
│ │ │ │ └── VHeader.vue
│ │ │ ├── header.scss
│ │ │ └── header.stories.mdx
│ │ ├── icons
│ │ │ ├── icons.js
│ │ │ └── icons.stories.mdx
│ │ ├── image
│ │ │ ├── image.scss
│ │ │ └── image.stories.mdx
│ │ ├── locale
│ │ │ ├── Vue
│ │ │ │ ├── VLocale.stories.js
│ │ │ │ └── VLocale.vue
│ │ │ ├── locale.scss
│ │ │ └── locale.stories.mdx
│ │ ├── modal
│ │ │ ├── Vue
│ │ │ │ ├── AppModal.stories.js
│ │ │ │ └── AppModal.vue
│ │ │ ├── modal.scss
│ │ │ └── modal.stories.mdx
│ │ ├── notification
│ │ │ ├── notification.scss
│ │ │ └── notification.stories.mdx
│ │ ├── pagination
│ │ │ ├── pagination.scss
│ │ │ └── pagination.stories.mdx
│ │ ├── profile_image
│ │ │ ├── profile_image.scss
│ │ │ └── profile_image.stories.mdx
│ │ ├── sidebar_menu
│ │ │ ├── sidebar_menu.scss
│ │ │ └── sidebar_menu.stories.mdx
│ │ ├── table
│ │ │ ├── table.scss
│ │ │ └── tables.stories.mdx
│ │ ├── table_of_contents
│ │ │ ├── table_of_contents.scss
│ │ │ └── table_of_contents.stories.mdx
│ │ ├── table_of_progress
│ │ │ ├── table_of_progress.scss
│ │ │ └── table_of_progress.stories.mdx
│ │ └── tabs
│ │ │ ├── Vue
│ │ │ ├── Tab.vue
│ │ │ ├── Tabs.stories.js
│ │ │ └── Tabs.vue
│ │ │ ├── tabs.scss
│ │ │ └── tabs.stories.mdx
│ ├── fonts.js
│ ├── mixins
│ │ ├── branded.js
│ │ ├── circleable.js
│ │ ├── colored.js
│ │ ├── indicating.js
│ │ ├── invertible.js
│ │ ├── simplified.js
│ │ └── sized.js
│ ├── scripts
│ │ ├── assets.js
│ │ ├── constants.js
│ │ ├── global_header.js
│ │ ├── render.js
│ │ └── vocabulary.js
│ ├── stories
│ │ ├── fonts
│ │ │ ├── accidenz_commons.stories.mdx
│ │ │ ├── jetbrains_mono.stories.mdx
│ │ │ ├── roboto_condensed.stories.mdx
│ │ │ └── source_sans_pro.stories.mdx
│ │ ├── helpers.js
│ │ ├── meta
│ │ │ ├── contribution.stories.mdx
│ │ │ ├── gettingstarted.stories.mdx
│ │ │ ├── overview.stories.mdx
│ │ │ ├── structure.stories.mdx
│ │ │ ├── usage.stories.mdx
│ │ │ ├── welcome.stories.mdx
│ │ │ └── wip.stories.mdx
│ │ └── vocabulary
│ │ │ ├── color.stories.mdx
│ │ │ ├── combined_header.stories.mdx
│ │ │ ├── grid.stories.mdx
│ │ │ ├── icon_font.stories.mdx
│ │ │ ├── icons.stories.mdx
│ │ │ ├── license_badge.stories.mdx
│ │ │ ├── main_logos.stories.mdx
│ │ │ ├── product_logos.stories.mdx
│ │ │ ├── spacing.stories.mdx
│ │ │ └── typography.stories.mdx
│ ├── styles
│ │ ├── fonts
│ │ │ ├── _index.scss
│ │ │ ├── cc_accidenz_commons.scss
│ │ │ ├── font_face.scss
│ │ │ ├── jetbrains_mono.scss
│ │ │ ├── roboto_condensed.scss
│ │ │ └── source_sans_pro.scss
│ │ └── vocabulary
│ │ │ ├── _index.scss
│ │ │ ├── color.scss
│ │ │ ├── color_overrides.scss
│ │ │ ├── layout.scss
│ │ │ ├── mediaQueries.scss
│ │ │ ├── spacing.scss
│ │ │ ├── spacing_overrides.scss
│ │ │ ├── typography.scss
│ │ │ └── typography_overrides.scss
│ ├── utils
│ │ ├── SlotRenderer
│ │ │ ├── SlotRenderer.md
│ │ │ └── SlotRenderer.vue
│ │ ├── addDescription.js
│ │ ├── addSource.js
│ │ ├── prettier
│ │ │ └── prettier.md
│ │ └── values.js
│ ├── vocabulary.js
│ └── vue_vocabulary.js
├── assets
│ ├── cclogo-shared-image.jpg
│ ├── demo
│ │ ├── broadway_tower.jpg
│ │ ├── left_index.png
│ │ ├── lion_dafrique.jpg
│ │ ├── show_code.png
│ │ └── tab_content.png
│ ├── github_corner.svg
│ ├── icons
│ │ └── favicon.png
│ ├── license_badges
│ │ ├── big
│ │ │ ├── by.svg
│ │ │ ├── by_nc.eu.svg
│ │ │ ├── by_nc.svg
│ │ │ ├── by_nc_nd.eu.svg
│ │ │ ├── by_nc_nd.svg
│ │ │ ├── by_nc_sa.eu.svg
│ │ │ ├── by_nc_sa.svg
│ │ │ ├── by_nd.svg
│ │ │ ├── by_sa.svg
│ │ │ ├── cc_zero.svg
│ │ │ └── publicdomain.svg
│ │ └── small
│ │ │ ├── by.svg
│ │ │ ├── by_nc.svg
│ │ │ ├── by_nc_nd.svg
│ │ │ ├── by_nc_sa.svg
│ │ │ ├── by_nd.svg
│ │ │ ├── by_sa.svg
│ │ │ ├── cc_zero.svg
│ │ │ └── publicdomain.svg
│ ├── logos
│ │ ├── cc
│ │ │ ├── letterheart.svg
│ │ │ ├── lettermark.svg
│ │ │ └── logomark.svg
│ │ └── products
│ │ │ ├── certificate.svg
│ │ │ ├── certificates.svg
│ │ │ ├── chooser.svg
│ │ │ ├── global_network.svg
│ │ │ ├── global_summit.svg
│ │ │ ├── legal_database.svg
│ │ │ ├── open_source.svg
│ │ │ ├── search.svg
│ │ │ ├── state_of_the_commons.svg
│ │ │ └── vocabulary.svg
│ ├── puff.svg
│ └── titlecard.png
├── fonts
│ ├── assets
│ │ ├── cclogo-shared-image.jpg
│ │ ├── github_corner.svg
│ │ ├── guide
│ │ │ ├── app_button.png
│ │ │ ├── directory.png
│ │ │ ├── flag.png
│ │ │ ├── generate_font.png
│ │ │ ├── generate_json.png
│ │ │ ├── import_icons.png
│ │ │ ├── import_project.png
│ │ │ ├── import_to_set.png
│ │ │ ├── projects_untitled.png
│ │ │ ├── projects_vocabulary.png
│ │ │ ├── selection.png
│ │ │ ├── toolbar.png
│ │ │ ├── untitled_project.png
│ │ │ └── vocabulary_icons.png
│ │ ├── icons
│ │ │ └── favicon.png
│ │ ├── logos
│ │ │ ├── fonts.svg
│ │ │ └── fonts_inverted.svg
│ │ ├── svg
│ │ │ ├── arrows
│ │ │ │ ├── angle-down.svg
│ │ │ │ ├── angle-left.svg
│ │ │ │ ├── angle-right.svg
│ │ │ │ ├── angle-up.svg
│ │ │ │ ├── arrow-down.svg
│ │ │ │ ├── arrow-up.svg
│ │ │ │ ├── caret-down.svg
│ │ │ │ ├── caret-left.svg
│ │ │ │ ├── caret-right.svg
│ │ │ │ ├── caret-up.svg
│ │ │ │ ├── chevron-down.svg
│ │ │ │ ├── chevron-left.svg
│ │ │ │ ├── chevron-right.svg
│ │ │ │ └── chevron-up.svg
│ │ │ ├── cc
│ │ │ │ ├── cc-by.svg
│ │ │ │ ├── cc-heart-filled.svg
│ │ │ │ ├── cc-heart.svg
│ │ │ │ ├── cc-logo.svg
│ │ │ │ ├── cc-nc-eu.svg
│ │ │ │ ├── cc-nc-jp.svg
│ │ │ │ ├── cc-nc.svg
│ │ │ │ ├── cc-nd.svg
│ │ │ │ ├── cc-pd.svg
│ │ │ │ ├── cc-pdm.svg
│ │ │ │ ├── cc-remix.svg
│ │ │ │ ├── cc-sa.svg
│ │ │ │ ├── cc-sampling-plus.svg
│ │ │ │ ├── cc-sampling.svg
│ │ │ │ ├── cc-share.svg
│ │ │ │ └── cc-zero.svg
│ │ │ ├── index.js
│ │ │ ├── social-media
│ │ │ │ ├── facebook.svg
│ │ │ │ ├── github.svg
│ │ │ │ ├── instagram.svg
│ │ │ │ ├── linkedin.svg
│ │ │ │ ├── medium.svg
│ │ │ │ ├── messenger.svg
│ │ │ │ ├── pinterest.svg
│ │ │ │ ├── reddit.svg
│ │ │ │ ├── rss.svg
│ │ │ │ ├── slack.svg
│ │ │ │ ├── sms.svg
│ │ │ │ ├── tumbler.svg
│ │ │ │ ├── twitter.svg
│ │ │ │ └── whatsapp.svg
│ │ │ └── symbols
│ │ │ │ ├── adjust.svg
│ │ │ │ ├── bars.svg
│ │ │ │ ├── bookmark-regular.svg
│ │ │ │ ├── bookmark-solid.svg
│ │ │ │ ├── calendar.svg
│ │ │ │ ├── check.svg
│ │ │ │ ├── circle-filled.svg
│ │ │ │ ├── circle-outline.svg
│ │ │ │ ├── envelope.svg
│ │ │ │ ├── exclamation.svg
│ │ │ │ ├── external-link.svg
│ │ │ │ ├── filter.svg
│ │ │ │ ├── flag.svg
│ │ │ │ ├── globe.svg
│ │ │ │ ├── heart.svg
│ │ │ │ ├── info.svg
│ │ │ │ ├── minus.svg
│ │ │ │ ├── plus.svg
│ │ │ │ ├── question.svg
│ │ │ │ ├── search.svg
│ │ │ │ ├── sliders.svg
│ │ │ │ ├── sort.svg
│ │ │ │ └── times.svg
│ │ └── titlecard.png
│ ├── fonts
│ │ ├── CCAccidenzCommons-medium.otf
│ │ ├── JetBrainsMono-Bold.otf
│ │ ├── JetBrainsMono-Bold.woff
│ │ ├── JetBrainsMono-Bold.woff2
│ │ ├── JetBrainsMono-Regular.otf
│ │ ├── JetBrainsMono-Regular.woff
│ │ ├── JetBrainsMono-Regular.woff2
│ │ ├── RobotoCondensed-Bold.otf
│ │ ├── RobotoCondensed-Bold.woff
│ │ ├── RobotoCondensed-Bold.woff2
│ │ ├── RobotoCondensed-Regular.otf
│ │ ├── RobotoCondensed-Regular.woff
│ │ ├── RobotoCondensed-Regular.woff2
│ │ ├── SourceSansPro-Bold.otf
│ │ ├── SourceSansPro-Bold.woff
│ │ ├── SourceSansPro-Bold.woff2
│ │ ├── SourceSansPro-Regular.otf
│ │ ├── SourceSansPro-Regular.woff
│ │ ├── SourceSansPro-Regular.woff2
│ │ ├── SourceSansPro-SemiBold.otf
│ │ ├── SourceSansPro-SemiBold.woff
│ │ ├── SourceSansPro-SemiBold.woff2
│ │ ├── VocabularyIcons.json
│ │ ├── VocabularyIcons.ttf
│ │ └── VocabularyIcons.woff
│ ├── index.js
│ ├── scripts
│ │ ├── accidenz_commons.js
│ │ ├── jetbrains_mono.js
│ │ ├── roboto_condensed.js
│ │ ├── source_sans_pro.js
│ │ └── vocabulary_icons.js
│ ├── stories
│ │ ├── accidenz_commons.stories.mdx
│ │ ├── helpers.js
│ │ ├── icon-gallery
│ │ │ ├── icon-controls.jsx
│ │ │ ├── icon-item.jsx
│ │ │ ├── icon-set.jsx
│ │ │ ├── icon-wrapper.jsx
│ │ │ ├── index.css
│ │ │ └── index.js
│ │ ├── jetbrains_mono.stories.mdx
│ │ ├── roboto_condensed.stories.mdx
│ │ ├── source_sans_pro.stories.mdx
│ │ ├── vocabulary_icon_font.stories.mdx
│ │ └── vocabulary_svg_icons.stories.mdx
│ └── styles
│ │ ├── accidenz_commons.scss
│ │ ├── font_face.scss
│ │ ├── jetbrains_mono.scss
│ │ ├── roboto_condensed.scss
│ │ ├── source_sans_pro.scss
│ │ └── vocabulary_icons.scss
├── index.js
├── scripts
│ ├── assets.js
│ ├── constants.js
│ ├── global_header.js
│ ├── render.js
│ └── vocabulary.js
├── scss
│ ├── breadcrumb.scss
│ ├── button.scss
│ ├── card.scss
│ ├── color.scss
│ ├── color_overrides.scss
│ ├── footer.scss
│ ├── form.scss
│ ├── github_corner.scss
│ ├── global_header.scss
│ ├── header.scss
│ ├── image.scss
│ ├── layout.scss
│ ├── locale.scss
│ ├── modal.scss
│ ├── notification.scss
│ ├── pagination.scss
│ ├── profile_image.scss
│ ├── sidebar_menu.scss
│ ├── spacing.scss
│ ├── spacing_overrides.scss
│ ├── table.scss
│ ├── table_of_contents.scss
│ ├── table_of_progress.scss
│ ├── tabs.scss
│ ├── typography.scss
│ ├── typography_overrides.scss
│ ├── vendor
│ │ └── bulma
│ │ │ ├── CHANGELOG.md
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ ├── bulma.sass
│ │ │ ├── css
│ │ │ ├── bulma-rtl.css
│ │ │ ├── bulma-rtl.css.map
│ │ │ ├── bulma-rtl.min.css
│ │ │ ├── bulma.css
│ │ │ ├── bulma.css.map
│ │ │ └── bulma.min.css
│ │ │ ├── package.json
│ │ │ └── sass
│ │ │ ├── base
│ │ │ ├── _all.sass
│ │ │ ├── animations.sass
│ │ │ ├── generic.sass
│ │ │ ├── helpers.sass
│ │ │ └── minireset.sass
│ │ │ ├── components
│ │ │ ├── _all.sass
│ │ │ ├── breadcrumb.sass
│ │ │ ├── card.sass
│ │ │ ├── dropdown.sass
│ │ │ ├── level.sass
│ │ │ ├── media.sass
│ │ │ ├── menu.sass
│ │ │ ├── message.sass
│ │ │ ├── modal.sass
│ │ │ ├── navbar.sass
│ │ │ ├── pagination.sass
│ │ │ ├── panel.sass
│ │ │ └── tabs.sass
│ │ │ ├── elements
│ │ │ ├── _all.sass
│ │ │ ├── box.sass
│ │ │ ├── button.sass
│ │ │ ├── container.sass
│ │ │ ├── content.sass
│ │ │ ├── form.sass
│ │ │ ├── icon.sass
│ │ │ ├── image.sass
│ │ │ ├── notification.sass
│ │ │ ├── other.sass
│ │ │ ├── progress.sass
│ │ │ ├── table.sass
│ │ │ ├── tag.sass
│ │ │ └── title.sass
│ │ │ ├── form
│ │ │ ├── _all.sass
│ │ │ ├── checkbox-radio.sass
│ │ │ ├── file.sass
│ │ │ ├── input-textarea.sass
│ │ │ ├── select.sass
│ │ │ ├── shared.sass
│ │ │ └── tools.sass
│ │ │ ├── grid
│ │ │ ├── _all.sass
│ │ │ ├── columns.sass
│ │ │ └── tiles.sass
│ │ │ ├── helpers
│ │ │ ├── _all.sass
│ │ │ ├── color.sass
│ │ │ ├── flexbox.sass
│ │ │ ├── float.sass
│ │ │ ├── other.sass
│ │ │ ├── overflow.sass
│ │ │ ├── position.sass
│ │ │ ├── spacing.sass
│ │ │ ├── typography.sass
│ │ │ └── visibility.sass
│ │ │ ├── layout
│ │ │ ├── _all.sass
│ │ │ ├── footer.sass
│ │ │ ├── hero.sass
│ │ │ └── section.sass
│ │ │ └── utilities
│ │ │ ├── _all.sass
│ │ │ ├── animations.sass
│ │ │ ├── controls.sass
│ │ │ ├── derived-variables.sass
│ │ │ ├── extends.sass
│ │ │ ├── functions.sass
│ │ │ ├── initial-variables.sass
│ │ │ └── mixins.sass
│ └── vocabulary.scss
└── stories
│ ├── breadcrumb.stories.mdx
│ ├── buttons.stories.mdx
│ ├── cards.stories.mdx
│ ├── checkbox.stories.mdx
│ ├── color.stories.mdx
│ ├── combined_header.stories.mdx
│ ├── footer.stories.mdx
│ ├── github_corner.stories.mdx
│ ├── global_header.stories.mdx
│ ├── grid.stories.mdx
│ ├── header.stories.mdx
│ ├── helpers.js
│ ├── icon_font.stories.mdx
│ ├── icons.stories.mdx
│ ├── image.stories.mdx
│ ├── input.stories.mdx
│ ├── license_badge.stories.mdx
│ ├── locale.stories.mdx
│ ├── main_logos.stories.mdx
│ ├── modal.stories.mdx
│ ├── notification.stories.mdx
│ ├── pagination.stories.mdx
│ ├── product_logos.stories.mdx
│ ├── profile_image.stories.mdx
│ ├── radio.stories.mdx
│ ├── select.stories.mdx
│ ├── sidebar_menu.stories.mdx
│ ├── spacing.stories.mdx
│ ├── table_of_contents.stories.mdx
│ ├── table_of_progress.stories.mdx
│ ├── tables.stories.mdx
│ ├── tabs.stories.mdx
│ ├── textarea.stories.mdx
│ └── typography.stories.mdx
└── tests
└── unit
├── VCheckbox.spec.js
└── __snapshots__
└── VCheckbox.spec.js.snap
/.browserslistrc:
--------------------------------------------------------------------------------
1 | > 1%
2 | last 2 versions
3 | not dead
4 |
--------------------------------------------------------------------------------
/.editorconfig:
--------------------------------------------------------------------------------
1 | [*.{js, jsx, ts, tsx, vue, styl, md}]
2 | indent_style = space
3 | indent_size = 2
4 | trim_trailing_whitespace = true
5 | insert_final_newline = true
6 |
7 | [*.md]
8 | trim_trailing_whitespace = false
9 |
--------------------------------------------------------------------------------
/.eslintrc.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | root: true,
3 | env: {
4 | node: true,
5 | jest: true,
6 | },
7 | plugins: ["jest"],
8 | extends: [
9 | "plugin:vue/essential",
10 | "@vue/airbnb",
11 | "eslint:recommended",
12 | "prettier",
13 | ],
14 | parserOptions: {
15 | parser: "babel-eslint",
16 | },
17 | rules: {
18 | "no-console": process.env.NODE_ENV === "production" ? "warn" : "off",
19 | "no-debugger": process.env.NODE_ENV === "production" ? "warn" : "off",
20 | "import/prefer-default-export": "off",
21 | "jest/no-disabled-tests": "warn",
22 | "jest/no-focused-tests": "error",
23 | "jest/no-identical-title": "error",
24 | "jest/prefer-to-have-length": "warn",
25 | "jest/valid-expect": "error",
26 | },
27 | };
28 |
--------------------------------------------------------------------------------
/.github/dependabot.yml:
--------------------------------------------------------------------------------
1 | #################################
2 | # Dependabot Configuration File #
3 | #################################
4 |
5 | # This is the current version of the GitHub-native Dependabot
6 | version: 2
7 |
8 | updates:
9 | # Enable version updates for npm
10 | - package-ecosystem: "npm"
11 | # Look for `package.json` and `lock` files in the `root` directory
12 | directory: "/"
13 | # Check for updates once a month
14 | schedule:
15 | interval: "monthly"
16 |
--------------------------------------------------------------------------------
/.github/release-drafter.yml:
--------------------------------------------------------------------------------
1 | # Configuration for the release-drafter action
2 | # See docs here: https://github.com/marketplace/actions/release-drafter
3 | name-template: "v$RESOLVED_VERSION"
4 | tag-template: "v$RESOLVED_VERSION"
5 | categories:
6 | - title: "New Features"
7 | label: "⭐ goal: addition"
8 | - title: "Improvements"
9 | label: "✨ goal: improvement"
10 | - title: "Bug Fixes"
11 | label: "🛠 goal: fix"
12 | # Exclude dependabot PRs from release notes
13 | exclude-labels:
14 | - "dependencies"
15 | change-template: "- $TITLE: #$NUMBER by @$AUTHOR"
16 | version-resolver:
17 | major:
18 | labels:
19 | - "major"
20 | minor:
21 | labels:
22 | - "minor"
23 | patch:
24 | labels:
25 | - "patch"
26 | default: patch
27 | template: |
28 | $CHANGES
29 |
30 | ## Credits
31 |
32 | Special thanks to $CONTRIBUTORS for their contributions!
33 |
34 | ## See an issue?
35 |
36 | Does anything look wrong in this release? Please [report a bug](https://github.com/creativecommons/vocabulary/issues/new?labels=bug%2C+awaiting+triage&template=bug_report.md).
37 |
--------------------------------------------------------------------------------
/.github/workflows/cd-fonts.yml:
--------------------------------------------------------------------------------
1 | name: CD for fonts package
2 |
3 | on:
4 | release:
5 | types:
6 | - published
7 |
8 | env:
9 | PUPPETEER_SKIP_CHROMIUM_DOWNLOAD: true
10 |
11 | jobs:
12 | deploy_npm:
13 | defaults:
14 | run:
15 | working-directory: "./"
16 | name: Deploy to npm
17 | runs-on: ubuntu-latest
18 | steps:
19 | - uses: actions/checkout@v2
20 |
21 | - name: Setup Node.js
22 | uses: actions/setup-node@v1
23 | with:
24 | node-version: 12
25 | registry-url: https://registry.npmjs.org
26 |
27 | - name: Install dependencies
28 | run: npm install --no-audit
29 |
30 | - name: Publish package
31 | run: bash scripts/build/fonts.sh
32 | env:
33 | NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
34 |
35 | - name: Deploy
36 | run: bash scripts/publish/fonts.sh
37 | env:
38 | NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
39 |
40 | - name: Repository Dispatch
41 | uses: peter-evans/repository-dispatch@v1
42 | with:
43 | token: ${{ secrets.ADMIN_GITHUB_TOKEN }}
44 | repository: creativecommons/vocabulary
45 | event-type: fonts-built
46 | client-payload: '{"ref": "${{ github.ref }}", "sha": "${{ github.sha }}"}'
47 |
--------------------------------------------------------------------------------
/.github/workflows/cd-vocabulary.yml:
--------------------------------------------------------------------------------
1 | name: CD for vocabulary package
2 |
3 | on:
4 | repository_dispatch:
5 | types: [fonts-built]
6 |
7 | env:
8 | PUPPETEER_SKIP_CHROMIUM_DOWNLOAD: true
9 |
10 | jobs:
11 | deploy_npm:
12 | defaults:
13 | run:
14 | working-directory: "./"
15 | name: Deploy to npm
16 | runs-on: ubuntu-latest
17 | steps:
18 | - uses: actions/checkout@v2
19 |
20 | - name: Setup Node.js
21 | uses: actions/setup-node@v1
22 | with:
23 | node-version: 12
24 | registry-url: https://registry.npmjs.org
25 |
26 | - name: Install dependencies
27 | run: npm install --no-audit
28 |
29 | - name: Publish package
30 | run: bash scripts/build/vocabulary.sh
31 | env:
32 | NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
33 |
34 | - name: Deploy
35 | run: bash scripts/publish/vocabulary.sh
36 | env:
37 | NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
38 |
39 | - name: Repository Dispatch
40 | uses: peter-evans/repository-dispatch@v1
41 | with:
42 | token: ${{ secrets.ADMIN_GITHUB_TOKEN }}
43 | repository: creativecommons/vocabulary
44 | event-type: vocabulary-built
45 | client-payload: '{"ref": "${{ github.ref }}", "sha": "${{ github.sha }}"}'
46 |
--------------------------------------------------------------------------------
/.github/workflows/cd-vue.yml:
--------------------------------------------------------------------------------
1 | name: CD for vue package
2 |
3 | on:
4 | repository_dispatch:
5 | types: [vocabulary-built]
6 |
7 | env:
8 | PUPPETEER_SKIP_CHROMIUM_DOWNLOAD: true
9 |
10 | jobs:
11 | deploy_npm:
12 | defaults:
13 | run:
14 | working-directory: "./"
15 | name: Deploy to npm
16 | runs-on: ubuntu-latest
17 | steps:
18 | - uses: actions/checkout@v2
19 |
20 | - name: Setup Node.js
21 | uses: actions/setup-node@v1
22 | with:
23 | node-version: 12
24 | registry-url: https://registry.npmjs.org
25 |
26 | - name: Install dependencies
27 | run: npm install --no-audit
28 |
29 | - name: Publish package
30 | run: bash scripts/build/vue_vocabulary.sh
31 | env:
32 | NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
33 |
34 | - name: Deploy
35 | run: bash scripts/publish/vue-vocabulary.sh
36 | env:
37 | NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
38 |
--------------------------------------------------------------------------------
/.github/workflows/ci-build.yml:
--------------------------------------------------------------------------------
1 | name: Build
2 |
3 | on:
4 | push:
5 | branches:
6 | - main
7 | pull_request:
8 | branches:
9 | - main
10 | env:
11 | CI: true
12 | PUPPETEER_SKIP_CHROMIUM_DOWNLOAD: true
13 |
14 | jobs:
15 | build:
16 | name: Build
17 | defaults:
18 | run:
19 | working-directory: "./"
20 | runs-on: ubuntu-latest
21 |
22 | steps:
23 | - uses: actions/checkout@v2
24 |
25 | - name: build
26 | uses: actions/setup-node@v1
27 | with:
28 | node-version: "12.16.1"
29 |
30 | - id: cache-node-modules
31 | name: Cache Node.js modules
32 | uses: actions/cache@v1
33 | with:
34 | path: ~/.npm # npm caches files in ~/.npm
35 | key: node-${{ hashFiles('**/package-lock.json') }}
36 |
37 | - name: Install dependencies
38 | run: npm install --prefer-offline --no-audit
39 |
40 | - name: Run build
41 | run: npm run build:storybook
42 |
--------------------------------------------------------------------------------
/.github/workflows/ci-lint.yml:
--------------------------------------------------------------------------------
1 | name: Lint
2 |
3 | on:
4 | push:
5 | branches:
6 | - main
7 | pull_request:
8 | branches:
9 | - main
10 | env:
11 | CI: true
12 | PUPPETEER_SKIP_CHROMIUM_DOWNLOAD: true
13 |
14 | jobs:
15 | lint:
16 | name: Lint
17 | defaults:
18 | run:
19 | working-directory: "./"
20 | runs-on: ubuntu-latest
21 |
22 | steps:
23 | - uses: actions/checkout@v2
24 |
25 | - name: Setup Node.js
26 | uses: actions/setup-node@v1
27 | with:
28 | node-version: "12.16.1"
29 |
30 | - id: cache-node-modules
31 | name: Cache Node.js modules
32 | uses: actions/cache@v1
33 | with:
34 | path: ~/.npm # npm caches files in ~/.npm
35 | key: node-${{ hashFiles('**/package-lock.json') }}
36 |
37 | - name: Install dependencies
38 | run: npm install --prefer-offline --no-audit
39 |
40 | - name: Run lint
41 | run: npm run lint
42 |
--------------------------------------------------------------------------------
/.github/workflows/ci-test.yml:
--------------------------------------------------------------------------------
1 | name: Test
2 |
3 | on:
4 | push:
5 | branches:
6 | - main
7 | pull_request:
8 | branches:
9 | - main
10 | env:
11 | CI: true
12 | PUPPETEER_SKIP_CHROMIUM_DOWNLOAD: true
13 |
14 | jobs:
15 | test:
16 | name: Test
17 | defaults:
18 | run:
19 | working-directory: "./"
20 | runs-on: ubuntu-latest
21 |
22 | steps:
23 | - uses: actions/checkout@v2
24 |
25 | - name: Setup Node.js
26 | uses: actions/setup-node@v1
27 | with:
28 | node-version: "12.16.1"
29 |
30 | - id: cache-node-modules
31 | name: Cache Node.js modules
32 | uses: actions/cache@v1
33 | with:
34 | path: ~/.npm # npm caches files in ~/.npm
35 | key: node-${{ hashFiles('**/package-lock.json') }}
36 |
37 | - name: Install dependencies
38 | run: npm install --prefer-offline --no-audit
39 |
40 | - name: Run tests
41 | run: npm run test:unit
42 |
43 | - name: Upload coverage to Codecov
44 | uses: codecov/codecov-action@v1
45 |
--------------------------------------------------------------------------------
/.github/workflows/project-automation.yml:
--------------------------------------------------------------------------------
1 | name: "Project Automation"
2 | on:
3 | issues:
4 | types: [opened]
5 | pull_request:
6 | types: [opened]
7 | jobs:
8 | join_issue_pr_to_project:
9 | runs-on: ubuntu-latest
10 | steps:
11 | - name: "Automate adding issues"
12 | uses: docker://takanabe/github-actions-automate-projects:v0.0.1
13 | if: github.event_name == 'issues'
14 | env:
15 | GITHUB_TOKEN: ${{ secrets.ADMIN_GITHUB_TOKEN }}
16 | GITHUB_PROJECT_URL: https://github.com/orgs/creativecommons/projects/13
17 | GITHUB_PROJECT_COLUMN_NAME: "To Triage"
18 | - name: "Automate adding PRs"
19 | uses: docker://takanabe/github-actions-automate-projects:v0.0.1
20 | if: github.event_name == 'pull_request'
21 | continue-on-error: true
22 | env:
23 | GITHUB_TOKEN: ${{ secrets.ADMIN_GITHUB_TOKEN }}
24 | GITHUB_PROJECT_URL: https://github.com/orgs/creativecommons/projects/13
25 | GITHUB_PROJECT_COLUMN_NAME: "In Progress"
26 |
--------------------------------------------------------------------------------
/.github/workflows/release-drafter.yml:
--------------------------------------------------------------------------------
1 | name: Release Drafter
2 |
3 | on:
4 | push:
5 | branches:
6 | - master
7 |
8 | jobs:
9 | update_release_draft:
10 | runs-on: ubuntu-latest
11 | steps:
12 | - uses: release-drafter/release-drafter@v5
13 | env:
14 | GITHUB_TOKEN: ${{ secrets.ADMIN_GITHUB_TOKEN }}
15 |
--------------------------------------------------------------------------------
/.github/workflows/stale.yml:
--------------------------------------------------------------------------------
1 | # This workflow warns and then closes issues and PRs that have had no activity for a specified amount of time.
2 | #
3 | # You can adjust the behavior by modifying this file.
4 | # For more information, see:
5 | # https://github.com/actions/stale
6 | name: Mark stale issues and pull requests
7 |
8 | on:
9 | schedule:
10 | - cron: "29 7 * * *"
11 |
12 | jobs:
13 | stale:
14 | runs-on: ubuntu-latest
15 | permissions:
16 | issues: write
17 | pull-requests: write
18 |
19 | steps:
20 | - uses: actions/stale@v3
21 | with:
22 | repo-token: ${{ secrets.GITHUB_TOKEN }}
23 | stale-issue-message: "Marking as stale, since there is no recent activity."
24 | stale-pr-message: "Marking as stale, since there is no recent activity."
25 | stale-issue-label: "no-recent-activity"
26 | stale-pr-label: "no-recent-activity"
27 | days-before-close: -1
28 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /docs
4 |
5 | /build
6 | /.cache
7 | __diff_output__
8 |
9 | # local env files
10 | .env.local
11 | .env.*.local
12 | env_vars
13 |
14 | # Yarn
15 | yarn.lock
16 |
17 | # Log files
18 | npm-debug.log*
19 | yarn-debug.log*
20 | yarn-error.log*
21 |
22 | # Editor directories and files
23 | .idea
24 | .vscode
25 | *.suo
26 | *.ntvs*
27 | *.njsproj
28 | *.sln
29 | *.sw?
30 |
31 | #coverage
32 | coverage
33 |
--------------------------------------------------------------------------------
/.storybook/main.js:
--------------------------------------------------------------------------------
1 | const path = require("path");
2 |
3 | module.exports = {
4 | stories: ["../src/**/*.stories.@(mdx|js|jsx|ts|tsx)"],
5 | addons: [
6 | "@storybook/preset-scss",
7 | "@storybook/addon-links",
8 | "@storybook/addon-essentials",
9 | ],
10 | webpackFinal: (config) => {
11 | // eslint-disable-next-line no-param-reassign
12 | config.resolve.alias["@"] = path.resolve(__dirname, "..", "src");
13 | return config;
14 | },
15 | };
16 |
--------------------------------------------------------------------------------
/.storybook/preview.js:
--------------------------------------------------------------------------------
1 | import "@/styles/vocabulary/_index.scss";
2 |
3 | export const parameters = {
4 | actions: { argTypesRegex: "^on[A-Z].*" },
5 | controls: {
6 | matchers: {
7 | color: /(background|color)$/i,
8 | date: /Date$/,
9 | },
10 | },
11 | options: {
12 | storySort: {
13 | order: [
14 | "Hello",
15 | [
16 | "WIP",
17 | "Introduction",
18 | "Getting Started",
19 | "Overview",
20 | "Structure",
21 | "Usage",
22 | "Contribution",
23 | ],
24 | "Fonts",
25 | [
26 | "CC Accidenz Commons",
27 | "Roboto Condensed",
28 | "Source Sans Pro",
29 | "JetBrains Mono",
30 | "Vocabulary Icons",
31 | ],
32 | ],
33 | },
34 | },
35 | };
36 |
--------------------------------------------------------------------------------
/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | This repo uses GitHub releases to manage versions. You can view a list of our releases [here](https://github.com/cc-archive/vocabulary-legacy/releases).
2 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2018 Creative Commons
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/babel.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | presets: ["@vue/cli-plugin-babel/preset"],
3 | };
4 |
--------------------------------------------------------------------------------
/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | preset: '@vue/cli-plugin-unit-jest',
3 | collectCoverage: true,
4 | collectCoverageFrom: [
5 | 'src/components/**/*.{js,vue}',
6 | ],
7 | };
8 |
--------------------------------------------------------------------------------
/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@creativecommons/vocabulary-core",
3 | "version": "2.0.0-alpha",
4 | "lockfileVersion": 1
5 | }
6 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@creativecommons/vocabulary-core",
3 | "version": "2.0.0-alpha",
4 | "description": "A cohesive design system to unite Creative Common's web facing products",
5 | "author": "Creative Commons (https://creativecommons.org)",
6 | "files": [
7 | "dist/css/"
8 | ],
9 | "main": "dist/css/vocabulary.css",
10 | "style": "dist/css/vocabulary.css",
11 | "unpkg": "dist/css/vocabulary.css",
12 | "bugs": "https://github.com/creativecommons/vocabulary/issues/",
13 | "funding": [
14 | {
15 | "type": "github",
16 | "url": "https://github.com/sponsors/creativecommons"
17 | },
18 | {
19 | "type": "donations",
20 | "url": "https://creativecommons.org/donate"
21 | }
22 | ],
23 | "homepage": "https://opensource.creativecommons.org/vocabulary",
24 | "keywords": [
25 | "ui",
26 | "ux",
27 | "design",
28 | "design system"
29 | ],
30 | "license": "MIT",
31 | "repository": {
32 | "type": "git",
33 | "url": "https://github.com/creativecommons/vocabulary.git"
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/packages/fonts/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@creativecommons/fonts",
3 | "version": "2020.11.3",
4 | "description": "Typefaces that lend personality to the web facing Creative Commons",
5 | "author": "Creative Commons (https://creativecommons.org)"
6 | }
7 |
--------------------------------------------------------------------------------
/packages/vocabulary/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@creativecommons/vocabulary",
3 | "version": "2020.11.3",
4 | "description": "A cohesive design system to unite the web facing Creative Commons",
5 | "author": "Creative Commons (https://creativecommons.org)"
6 | }
7 |
--------------------------------------------------------------------------------
/packages/vue-vocabulary/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@creativecommons/vue-vocabulary",
3 | "version": "2020.11.3",
4 | "description": "Vue components implementing a cohesive design system to unite the web facing Creative Commons",
5 | "author": "Creative Commons (https://creativecommons.org)"
6 | }
7 |
--------------------------------------------------------------------------------
/scripts/build/fonts.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | # Run build
4 | ./node_modules/.bin/vue-cli-service build --target lib --name fonts --dest ./dist/fonts --entry ./src/fonts.js
5 |
6 | echo -n "Copying meta files..."
7 | cp README.md dist/fonts
8 | cp LICENSE dist/fonts
9 | cp packages/fonts/package.json dist/fonts/package.json
10 | echo "done!"
11 |
12 | echo -n "Removing superfluous files..."
13 | rm -rf dist/fonts/*.js dist/fonts/*.map dist/fonts/*.html
14 | echo "done!"
15 |
--------------------------------------------------------------------------------
/scripts/build/vocabulary.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | # Run build
4 | ./node_modules/.bin/vue-cli-service build --target lib --name vocabulary --dest ./dist/vocabulary --entry ./src/vocabulary.js
5 |
6 | echo -n "Copying meta files..."
7 | cp README.md dist/vocabulary
8 | cp LICENSE dist/vocabulary
9 | cp packages/vocabulary/package.json dist/vocabulary/package.json
10 | echo "done!"
11 |
12 | echo -n "Removing superfluous files..."
13 | rm -rf dist/vocabulary/*.js dist/vocabulary/*.map dist/vocabulary/*.html
14 | echo "done!"
15 |
--------------------------------------------------------------------------------
/scripts/build/vue_vocabulary.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | # Run build
4 | ./node_modules/.bin/vue-cli-service build --target lib --name vue-vocabulary --dest ./dist/vue-vocabulary --entry ./src/vue_vocabulary.js
5 |
6 | echo -n "Copying meta files..."
7 | cp README.md dist/vue-vocabulary
8 | cp LICENSE dist/vue-vocabulary
9 | cp packages/vue-vocabulary/package.json dist/vue-vocabulary/package.json
10 | echo "done!"
11 |
12 | echo -n "Removing superfluous files..."
13 | rm -rf dist/vue-vocabulary/*.html
14 | echo "done!"
15 |
--------------------------------------------------------------------------------
/scripts/publish/fonts.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | set -o errexit
4 | set -o errtrace
5 | set -o nounset
6 |
7 | trap '_es=${?};
8 | _lo=${LINENO};
9 | _co=${BASH_COMMAND};
10 | echo "${0}: line ${_lo}: \"${_co}\" exited with a status of ${_es}";
11 | exit ${_es}' ERR
12 |
13 | npm run build:storybook
14 | cp package.json dist/
15 | cp README.md dist/
16 | sed -i -e 's/say, fonts/here, fonts/' dist/README.md
17 | cp LICENSE dist/
18 |
19 | cd dist
20 | npm publish --access public
21 |
--------------------------------------------------------------------------------
/scripts/publish/vocabulary.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | set -o errexit
4 | set -o errtrace
5 | set -o nounset
6 |
7 | trap '_es=${?};
8 | _lo=${LINENO};
9 | _co=${BASH_COMMAND};
10 | echo "${0}: line ${_lo}: \"${_co}\" exited with a status of ${_es}";
11 | exit ${_es}' ERR
12 |
13 | npm run build:storybook
14 | cp package.json dist/
15 | cp README.md dist/
16 | sed -i -e 's/say, fonts/here, vocabulary/' -e 's/cd packages\/fonts/cd packages\/vocabulary/' dist/README.md
17 | cp LICENSE dist/
18 |
19 | cd dist
20 | npm publish --access public
21 |
--------------------------------------------------------------------------------
/scripts/publish/vue-vocabulary.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | set -o errexit
4 | set -o errtrace
5 | set -o nounset
6 |
7 | trap '_es=${?};
8 | _lo=${LINENO};
9 | _co=${BASH_COMMAND};
10 | echo "${0}: line ${_lo}: \"${_co}\" exited with a status of ${_es}";
11 | exit ${_es}' ERR
12 |
13 | npm run build:storybook
14 | cp package.json dist/
15 | cp README.md dist/
16 | sed -i -e 's/say, fonts/here, vue-vocabulary/' -e 's/cd packages\/fonts/cd packages\/vue-vocabulary/' dist/README.md
17 | cp LICENSE dist/
18 |
19 | cd dist
20 | npm publish --access public
21 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/demo/broadway_tower.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/_deprecated/assets/demo/broadway_tower.jpg
--------------------------------------------------------------------------------
/src/_deprecated/assets/demo/left_index.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/_deprecated/assets/demo/left_index.png
--------------------------------------------------------------------------------
/src/_deprecated/assets/demo/lion_dafrique.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/_deprecated/assets/demo/lion_dafrique.jpg
--------------------------------------------------------------------------------
/src/_deprecated/assets/demo/show_code.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/_deprecated/assets/demo/show_code.png
--------------------------------------------------------------------------------
/src/_deprecated/assets/demo/tab_content.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/_deprecated/assets/demo/tab_content.png
--------------------------------------------------------------------------------
/src/_deprecated/assets/fonts/AccidenzCommons.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/_deprecated/assets/fonts/AccidenzCommons.otf
--------------------------------------------------------------------------------
/src/_deprecated/assets/fonts/JetBrainsMono-Bold.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/_deprecated/assets/fonts/JetBrainsMono-Bold.otf
--------------------------------------------------------------------------------
/src/_deprecated/assets/fonts/JetBrainsMono-Bold.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/_deprecated/assets/fonts/JetBrainsMono-Bold.woff
--------------------------------------------------------------------------------
/src/_deprecated/assets/fonts/JetBrainsMono-Bold.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/_deprecated/assets/fonts/JetBrainsMono-Bold.woff2
--------------------------------------------------------------------------------
/src/_deprecated/assets/fonts/JetBrainsMono-Regular.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/_deprecated/assets/fonts/JetBrainsMono-Regular.otf
--------------------------------------------------------------------------------
/src/_deprecated/assets/fonts/JetBrainsMono-Regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/_deprecated/assets/fonts/JetBrainsMono-Regular.woff
--------------------------------------------------------------------------------
/src/_deprecated/assets/fonts/JetBrainsMono-Regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/_deprecated/assets/fonts/JetBrainsMono-Regular.woff2
--------------------------------------------------------------------------------
/src/_deprecated/assets/fonts/RobotoCondensed-Bold.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/_deprecated/assets/fonts/RobotoCondensed-Bold.otf
--------------------------------------------------------------------------------
/src/_deprecated/assets/fonts/RobotoCondensed-Bold.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/_deprecated/assets/fonts/RobotoCondensed-Bold.woff
--------------------------------------------------------------------------------
/src/_deprecated/assets/fonts/RobotoCondensed-Bold.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/_deprecated/assets/fonts/RobotoCondensed-Bold.woff2
--------------------------------------------------------------------------------
/src/_deprecated/assets/fonts/RobotoCondensed-Regular.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/_deprecated/assets/fonts/RobotoCondensed-Regular.otf
--------------------------------------------------------------------------------
/src/_deprecated/assets/fonts/RobotoCondensed-Regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/_deprecated/assets/fonts/RobotoCondensed-Regular.woff
--------------------------------------------------------------------------------
/src/_deprecated/assets/fonts/RobotoCondensed-Regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/_deprecated/assets/fonts/RobotoCondensed-Regular.woff2
--------------------------------------------------------------------------------
/src/_deprecated/assets/fonts/SourceSansPro-Bold.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/_deprecated/assets/fonts/SourceSansPro-Bold.otf
--------------------------------------------------------------------------------
/src/_deprecated/assets/fonts/SourceSansPro-Bold.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/_deprecated/assets/fonts/SourceSansPro-Bold.woff
--------------------------------------------------------------------------------
/src/_deprecated/assets/fonts/SourceSansPro-Bold.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/_deprecated/assets/fonts/SourceSansPro-Bold.woff2
--------------------------------------------------------------------------------
/src/_deprecated/assets/fonts/SourceSansPro-Regular.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/_deprecated/assets/fonts/SourceSansPro-Regular.otf
--------------------------------------------------------------------------------
/src/_deprecated/assets/fonts/SourceSansPro-Regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/_deprecated/assets/fonts/SourceSansPro-Regular.woff
--------------------------------------------------------------------------------
/src/_deprecated/assets/fonts/SourceSansPro-Regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/_deprecated/assets/fonts/SourceSansPro-Regular.woff2
--------------------------------------------------------------------------------
/src/_deprecated/assets/fonts/SourceSansPro-SemiBold.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/_deprecated/assets/fonts/SourceSansPro-SemiBold.otf
--------------------------------------------------------------------------------
/src/_deprecated/assets/fonts/SourceSansPro-SemiBold.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/_deprecated/assets/fonts/SourceSansPro-SemiBold.woff
--------------------------------------------------------------------------------
/src/_deprecated/assets/fonts/SourceSansPro-SemiBold.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/_deprecated/assets/fonts/SourceSansPro-SemiBold.woff2
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/adjust.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/angle-down.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/angle-left.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/angle-right.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/angle-up.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/arrow-down.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/arrow-up.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/bars.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/bookmark-regular.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/bookmark-solid.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/caret-down.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/caret-left.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/caret-right.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/caret-up.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/cc-by.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/cc-heart-filled.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/cc-nc-eu.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/cc-nc-jp.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/cc-nc.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/cc-nd.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/cc-pd.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/cc-pdm.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/cc-remix.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/cc-sa.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/cc-share.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/check.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/chevron-down.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/chevron-left.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/chevron-right.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/chevron-up.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/circle-filled.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/circle-outline.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/envelope.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/exclamation.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/external-link.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/facebook.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/filter.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/flag.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/globe.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/heart.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/info.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/linkedin.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/medium.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/messenger.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/minus.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/pinterest.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/plus.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/question.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/reddit.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/rss.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/search.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/slack.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/sliders.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/sms.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/sort.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/times.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/tumbler.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/assets/icons/twitter.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/_deprecated/components/breadcrumb/breadcrumb.scss:
--------------------------------------------------------------------------------
1 | $breadcrumb-item-color: $color-tomato;
2 | $breadcrumb-item-active-color: $color-dark-slate-gray;
3 | $breadcrumb-item-hover-color: $color-tomato;
4 | $breadcrumb-item-padding-horizontal: $space-small;
5 | $breadcrumb-item-separator-color: $color-gray;
6 |
7 | @import "~bulma/sass/components/breadcrumb.sass";
8 |
9 | nav.breadcrumb > ul {
10 | font-size: $font-size-caption;
11 | font-weight: 600;
12 |
13 | li + li:before {
14 | font-family: "Vocabulary Icons";
15 | content: "\e901";
16 | }
17 |
18 | li:hover {
19 | text-underline-position: below;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/_deprecated/components/breadcrumb/breadcrumb.stories.mdx:
--------------------------------------------------------------------------------
1 | import { Meta, Canvas, Story } from "@storybook/addon-docs/blocks";
2 | import { figmaConfig, htmlWrapper } from "@/stories/helpers";
3 |
4 |
5 |
6 | # Breadcrumb
7 |
8 | export const breadCrumb = () => `
9 |
10 |
16 |
17 | `;
18 |
19 | The Breadcrumb has two text styles: links to parent pages and the page the user is seeing. The parent links should be corresponding to the site map defined. At the same time, the color used for links should be the main color for links across the site.
20 |
21 | For accessibility purposes, the component should be placed above the page's title.
22 |
23 |
24 |
30 | {htmlWrapper(breadCrumb()).bind({})}
31 |
32 |
33 |
--------------------------------------------------------------------------------
/src/_deprecated/components/buttons/Vue/VButton.vue:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
11 |
12 |
13 |
14 |
52 |
--------------------------------------------------------------------------------
/src/_deprecated/components/form/radio.stories.mdx:
--------------------------------------------------------------------------------
1 | import { Meta, Story, Canvas } from "@storybook/addon-docs/blocks";
2 | import { figmaConfig, htmlWrapper } from "@/stories/helpers";
3 |
4 |
5 |
6 | # Radio
7 |
8 | export const radioDiv = () => `
Radio buttons
9 |
10 |
11 |
12 | Default Option
13 |
14 |
15 | Checked Option
16 |
17 |
18 | Disabled Option
19 |
20 |
`;
21 |
22 |
23 |
30 | {htmlWrapper(radioDiv()).bind({})}
31 |
32 |
33 |
--------------------------------------------------------------------------------
/src/_deprecated/components/form/select.stories.mdx:
--------------------------------------------------------------------------------
1 | import { Meta, Story, Canvas } from "@storybook/addon-docs/blocks";
2 | import { figmaConfig, htmlWrapper } from "@/stories/helpers";
3 |
4 |
5 |
6 | # Select
7 |
8 | export const selectDiv = () => `
9 |
10 |
11 | Select
12 | Option A
13 | Option B
14 |
15 |
16 |
17 |
18 |
19 | Select
20 | Option A
21 | Option B
22 |
23 |
24 |
25 |
26 |
27 | Select
28 | Option A
29 | Option B
30 |
31 |
`;
32 |
33 |
34 |
41 | {htmlWrapper(selectDiv()).bind({})}
42 |
43 |
44 |
--------------------------------------------------------------------------------
/src/_deprecated/components/form/textarea.stories.mdx:
--------------------------------------------------------------------------------
1 | import { Meta, Story, Canvas } from "@storybook/addon-docs/blocks";
2 | import { figmaConfig, htmlWrapper } from "@/stories/helpers";
3 |
4 |
5 |
6 | # Textarea
7 |
8 | export const textArea = () => `
9 |
10 |
11 |
12 |
13 |
14 | `;
15 |
16 |
17 |
24 | {htmlWrapper(textArea()).bind({})}
25 |
26 |
27 |
--------------------------------------------------------------------------------
/src/_deprecated/components/github_corner/github_corner.scss:
--------------------------------------------------------------------------------
1 | .github-corner {
2 | position: absolute;
3 | top: 0;
4 |
5 | &.is-left-aligned {
6 | left: 0;
7 | transform: scaleX(-1);
8 | }
9 |
10 | &:not(.is-left-aligned) {
11 | right: 0;
12 | }
13 |
14 | &.is-inverted {
15 | color: $color-black;
16 |
17 | svg {
18 | fill: $color-white;
19 | }
20 |
21 | &:hover {
22 | color: $color-black;
23 | }
24 | }
25 |
26 | &:not(.is-inverted) {
27 | color: $color-white;
28 |
29 | svg {
30 | fill: $color-black;
31 | }
32 |
33 | &:hover {
34 | color: $color-white;
35 | }
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/src/_deprecated/components/global_header/global_header.stories.mdx:
--------------------------------------------------------------------------------
1 | import { useEffect } from "@storybook/client-api";
2 | import { Meta, Canvas, Story } from "@storybook/addon-docs/blocks";
3 | import { createGlobalHeader } from "@/scripts/global_header";
4 |
5 |
10 | `${storyFn()}`,
11 | ],
12 | }}
13 | />
14 |
15 | export const globalHeader =
16 | "const globalHeaderInstance = vocabulary.createGlobalHeader()";
17 |
18 |
19 |
20 | {() => {
21 | // Using Storybook hooks to clean up effects of DOM insertion
22 | useEffect(() => {
23 | // Function body executes for componentDidMount
24 | const globalHeaderInstance = createGlobalHeader();
25 | // Return function executes for componentWillUnmount
26 | return () => {
27 | if (globalHeaderInstance && globalHeaderInstance.element) {
28 | globalHeaderInstance.element.remove();
29 | }
30 | };
31 | });
32 | return '
';
33 | }}
34 |
35 |
36 |
--------------------------------------------------------------------------------
/src/_deprecated/components/header/Vue/ChooserLogo.vue:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
9 |
10 |
11 |
46 |
--------------------------------------------------------------------------------
/src/_deprecated/components/header/Vue/NavItem.vue:
--------------------------------------------------------------------------------
1 |
2 |
10 | {{ label }}
11 |
12 |
13 |
14 |
15 |
16 |
49 |
50 |
55 |
--------------------------------------------------------------------------------
/src/_deprecated/components/locale/Vue/VLocale.stories.js:
--------------------------------------------------------------------------------
1 | import VLocale from "./VLocale.vue";
2 |
3 | export default {
4 | title: "Patterns/VLocale",
5 | component: VLocale,
6 | };
7 |
8 | const Template = (args, { argTypes }) => ({
9 | props: Object.keys(argTypes),
10 | components: { VLocale },
11 | template: '
',
12 | });
13 |
14 | export const Default = Template.bind({});
15 |
--------------------------------------------------------------------------------
/src/_deprecated/components/locale/locale.stories.mdx:
--------------------------------------------------------------------------------
1 | import { Meta, Story, Canvas } from "@storybook/addon-docs/blocks";
2 | import { figmaConfig } from "@/stories/helpers";
3 |
4 |
5 |
6 | # Locale
7 |
8 | The locale component should be used to indicate and switch the language of the page where it is placed. The option
9 | displayed in the select component must show the current language and then the language’s name written in the language’s
10 | alphabet.
11 |
12 |
13 | {`
20 |
21 | Languages available
22 |
23 |
24 |
25 | Select
26 | English
27 | le Français
28 | 日本語
29 | Русский
30 | Español
31 |
32 |
33 |
34 | locale
35 |
36 |
37 |
38 | `}
39 |
40 |
--------------------------------------------------------------------------------
/src/_deprecated/components/modal/Vue/AppModal.stories.js:
--------------------------------------------------------------------------------
1 | import VButton from "@/components/buttons/Vue/VButton.vue";
2 | import AppModal from "./AppModal.vue";
3 |
4 | export default {
5 | title: "Patterns/VModal",
6 | component: AppModal,
7 | argTypes: {
8 | title: {
9 | control: { type: "text" },
10 | },
11 | },
12 | };
13 |
14 | const modalContainerTemplate = `
15 |
Open Modal
16 |
17 |
24 |
25 |
`;
26 |
27 | const Template = (args, { argTypes }) => ({
28 | props: Object.keys(argTypes),
29 | components: { AppModal, VButton },
30 | template: modalContainerTemplate,
31 | data() {
32 | return {
33 | modalVisible: true,
34 | };
35 | },
36 | });
37 |
38 | export const Default = Template.bind({});
39 |
--------------------------------------------------------------------------------
/src/_deprecated/components/profile_image/profile_image.scss:
--------------------------------------------------------------------------------
1 | @import "../../../node_modules/bulma/sass/elements/image";
2 |
3 | .image {
4 | .profile {
5 | border-radius: 50%;
6 |
7 | border: solid 0.1875em $color-dark-slate-gray;
8 | min-width: 60px;
9 |
10 | object-fit: cover;
11 | height: 100%;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/src/_deprecated/components/sidebar_menu/sidebar_menu.scss:
--------------------------------------------------------------------------------
1 | $menu-item-color: $color-tomato;
2 | $menu-item-hover-background-color: none;
3 | $menu-item-active-background-color: none;
4 | $menu-item-active-color: $color-dark-slate-gray;
5 | $menu-list-border-left: none;
6 | $menu-nested-list-margin: 0;
7 | $menu-nested-list-padding-left: 0;
8 | $menu-list-link-padding: 0.5rem 0;
9 |
10 | @import "~bulma/sass/components/menu.sass";
11 |
12 | .sidebar-menu {
13 | font-size: $font-size-body-normal;
14 | padding-top: $space-normal;
15 | padding-bottom: $space-big;
16 |
17 | font-weight: bold;
18 | line-height: 1.5;
19 | background-color: $color-lighter-gray;
20 |
21 | .menu-list .link {
22 | text-decoration: none;
23 | padding: 0;
24 | padding-top: $space-small;
25 | padding-left: $space-big;
26 | padding-right: $space-big;
27 | }
28 |
29 | .icon {
30 | color: $color-gray;
31 | padding-right: $space-small;
32 |
33 | font-size: 0.375rem;
34 | }
35 |
36 | .divider {
37 | margin-top: $space-normal;
38 | margin-bottom: $space-small;
39 |
40 | border-top: 0.1875rem solid $color-white;
41 | }
42 | }
43 | .sidebar-container {
44 | max-width: 276px;
45 | }
46 |
--------------------------------------------------------------------------------
/src/_deprecated/components/table_of_contents/table_of_contents.scss:
--------------------------------------------------------------------------------
1 | // Refer to sidebar_menu.scss for the Bulma overrides
2 |
3 | @import "~bulma/sass/components/menu.sass";
4 |
5 | .table-of-contents {
6 | font-size: $font-size-body-normal;
7 | padding: $space-big;
8 | margin-top: $space-normal;
9 |
10 | font-weight: bold;
11 | line-height: 1.5;
12 | border: 0.125rem solid $color-lighter-gray;
13 | box-sizing: border-box;
14 | background-color: $color-white;
15 |
16 | .menu-list .link {
17 | text-decoration: none;
18 | }
19 |
20 | .icon {
21 | color: $color-gray;
22 | padding-right: $space-small;
23 |
24 | font-size: 0.375rem;
25 | }
26 | }
27 | .toc-container {
28 | max-width: 276px;
29 | }
30 |
--------------------------------------------------------------------------------
/src/_deprecated/components/tabs/Vue/Tab.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
39 |
--------------------------------------------------------------------------------
/src/_deprecated/components/tabs/Vue/Tabs.stories.js:
--------------------------------------------------------------------------------
1 | import { figmaConfig } from "@/stories/helpers";
2 | import { addDescription } from "@/utils/addDescription";
3 | import Tabs from "./Tabs.vue";
4 | import Tab from "./Tab.vue";
5 |
6 | export default {
7 | title: "Layouts/TabsVue",
8 | parameters: {
9 | design: figmaConfig("933%3A1"),
10 | docs: {
11 | description: {
12 | component:
13 | "The Tabs component is a navigation element to switch between content sections, and should be used as the main content switch in a page. Tabs are added with the `` component.",
14 | },
15 | },
16 | },
17 | component: Tabs,
18 | };
19 |
20 | const Template = (args, { argTypes }) => ({
21 | props: Object.keys(argTypes),
22 | components: { Tabs, Tab },
23 | template: `
24 | Music content.
25 | Pictures content.
26 | Videos content.
27 | Document content.
28 | `,
29 | });
30 |
31 | export const Default = Template.bind({});
32 | Default.args = {};
33 |
34 | export const Boxed = Template.bind({});
35 | addDescription(
36 | Boxed,
37 | "Set the `boxed` prop to `true` use a different variation."
38 | );
39 | Boxed.args = { boxed: true };
40 |
--------------------------------------------------------------------------------
/src/_deprecated/fonts.js:
--------------------------------------------------------------------------------
1 | // This is the entrypoint for building Fonts.
2 |
3 | import "@/styles/fonts/_index.scss"; // Sass stylesheets, will be compiled
4 |
--------------------------------------------------------------------------------
/src/_deprecated/mixins/branded.js:
--------------------------------------------------------------------------------
1 | export default {
2 | props: {
3 | /**
4 | * _the brand color for the component_
5 | *
6 | * ∈ {`'blue'`, `'forest'`, `'gold'`, `'orange'`, `'tomato'`, `'turquoise'`, `'slate'`}
7 | */
8 | brand: {
9 | type: String,
10 | validator: (val) =>
11 | [
12 | "blue",
13 | "forest",
14 | "gold",
15 | "orange",
16 | "tomato",
17 | "turquoise",
18 | "slate",
19 | ].includes(val),
20 | },
21 | },
22 | computed: {
23 | brandedClasses() {
24 | const classes = [];
25 | if (this.brand) {
26 | classes.push(`${this.brand}-branded`);
27 | }
28 | return classes;
29 | },
30 | },
31 | };
32 |
--------------------------------------------------------------------------------
/src/_deprecated/mixins/circleable.js:
--------------------------------------------------------------------------------
1 | export default {
2 | props: {
3 | /**
4 | * _whether to change the shape of the component into a circle_
5 | */
6 | isCircular: {
7 | type: Boolean,
8 | default: false,
9 | },
10 | },
11 | computed: {
12 | circleableClasses() {
13 | return [
14 | {
15 | circular: this.isCircular,
16 | },
17 | ];
18 | },
19 | },
20 | };
21 |
--------------------------------------------------------------------------------
/src/_deprecated/mixins/indicating.js:
--------------------------------------------------------------------------------
1 | export default {
2 | props: {
3 | /**
4 | * _the state to indicate the component in_
5 | *
6 | * ∈ {`'negative'`, `'positive'`, `'probably'`}
7 | */
8 | indication: {
9 | type: String,
10 | validator: (val) => ["negative", "positive", "probably"].includes(val),
11 | },
12 | },
13 | computed: {
14 | indicatingClasses() {
15 | const classes = [];
16 | if (this.indication) {
17 | classes.push(`${this.indication}-indicating`);
18 | }
19 | return classes;
20 | },
21 | },
22 | };
23 |
--------------------------------------------------------------------------------
/src/_deprecated/mixins/invertible.js:
--------------------------------------------------------------------------------
1 | export default {
2 | props: {
3 | /**
4 | * _whether the component appears on a dark or non-white background_
5 | *
6 | * This essentially negates all greyscale colors.
7 | */
8 | isInverted: {
9 | type: Boolean,
10 | default: false,
11 | },
12 | },
13 | computed: {
14 | invertibleClasses() {
15 | return [
16 | {
17 | inverted: this.isInverted,
18 | },
19 | ];
20 | },
21 | },
22 | };
23 |
--------------------------------------------------------------------------------
/src/_deprecated/mixins/simplified.js:
--------------------------------------------------------------------------------
1 | export default {
2 | props: {
3 | /**
4 | * _the amount of simplicity in the appearance of the component_
5 | *
6 | * ∈ {`'slight'`, `'extreme'`}
7 | */
8 | simplicity: {
9 | type: String,
10 | validator: (val) => ["slight", "extreme"].includes(val),
11 | },
12 | },
13 | computed: {
14 | simplifiedClasses() {
15 | const classes = [];
16 | if (this.simplicity) {
17 | classes.push(`${this.simplicity}ly-simple`);
18 | }
19 | return classes;
20 | },
21 | },
22 | };
23 |
--------------------------------------------------------------------------------
/src/_deprecated/mixins/sized.js:
--------------------------------------------------------------------------------
1 | import { sizes } from "@/utils/values";
2 |
3 | export const sized = {
4 | props: {
5 | size: {
6 | type: String,
7 | default: "normal",
8 | validator(value) {
9 | return sizes.includes(value);
10 | },
11 | },
12 | },
13 | computed: {
14 | sizeClasses() {
15 | const classes = {};
16 | if (this.size) {
17 | classes[this.size] = true;
18 | }
19 | return classes;
20 | },
21 | },
22 | };
23 |
--------------------------------------------------------------------------------
/src/_deprecated/scripts/constants.js:
--------------------------------------------------------------------------------
1 | export const CC_ORG_URL = "https://creativecommons.org";
2 | export const DONATION_URL = "https://creativecommons.org/donate";
3 |
4 | export const CDN_BASE_URL = "https://unpkg.com/@creativecommons/vocabulary";
5 | export const GLOBAL_HEADER_API_URL =
6 | "https://creativecommons.org/wp-json/ccglobal/menu";
7 |
8 | // TODO: Internationalise
9 | export const DONATION_TITLE = "Our work relies on you!";
10 | export const DONATION_DESCRIPTION = "Help us keep the internet free and open.";
11 | export const DONATION_BUTTON_TEXT = "Donate now";
12 | export const NAVIGATION_TAB_TEXT = "Explore CC";
13 | export const VISIT_SITE_BUTTON_TEXT = "Visit site";
14 |
--------------------------------------------------------------------------------
/src/_deprecated/scripts/render.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Create an HTMLElement with the given tag, class and children.
3 | *
4 | * This function is a convenience function to provide a declarative interface
5 | * for generating DOM inside JavaScript.
6 | *
7 | * The extremely terse name `h` comes from Vue.js.
8 | *
9 | * @param {string} tagName - the name of the HTML tag for the element
10 | * @param {Array} classes - a list of classes to apply to the element
11 | * @param {Array} children - an Array of DOM nodes to place inside the element
12 | * @param {function} callbackFn - a function for performing actions on the node
13 | * @return {HTMLElement} the element generated by the function
14 | */
15 | export const h = (tagName, classes = [], children = [], callbackFn = null) => {
16 | const element = document.createElement(tagName);
17 | if (classes) {
18 | element.classList.add(...classes);
19 | }
20 | if (children) {
21 | children.forEach((child) => element.appendChild(child));
22 | }
23 | if (callbackFn) {
24 | callbackFn(element);
25 | }
26 | return element;
27 | };
28 |
--------------------------------------------------------------------------------
/src/_deprecated/scripts/vocabulary.js:
--------------------------------------------------------------------------------
1 | export { createGlobalHeader } from "./global_header";
2 |
--------------------------------------------------------------------------------
/src/_deprecated/stories/meta/contribution.stories.mdx:
--------------------------------------------------------------------------------
1 | import { Meta } from "@storybook/addon-docs/blocks";
2 |
3 |
4 |
5 | # Contribution
6 |
7 | It is always a pleasure to have contributors help us find and fix bugs, build new features and improve on our documentation.
8 | If you are interested in contributing, please read our Contributing guidlines [Contributing Guidelines.][readme]
9 |
10 | [readme]: https://github.com/creativecommons/vocabulary#contributing
11 |
--------------------------------------------------------------------------------
/src/_deprecated/stories/meta/welcome.stories.mdx:
--------------------------------------------------------------------------------
1 | import { Meta, Story, Canvas } from "@storybook/addon-docs/blocks";
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 | {" "}
11 |
12 |
13 | Vocabulary is a cohesive design system to unify the web-facing Creative
14 | Commons.
15 |
16 |
17 | {" "}
18 |
19 |
20 |
26 |
27 |
28 |
29 |
30 |
31 | This is the Storybook for Vocabulary.
32 | Choose a component from the left panel to know more about it and explore the various customisations it has to offer.
33 |
34 |
35 |
36 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/src/_deprecated/stories/meta/wip.stories.mdx:
--------------------------------------------------------------------------------
1 | import { Meta } from "@storybook/addon-docs";
2 |
3 |
4 |
5 | # 🚧 Vocabulary
6 |
7 | Coming soon...
8 |
--------------------------------------------------------------------------------
/src/_deprecated/stories/vocabulary/combined_header.stories.mdx:
--------------------------------------------------------------------------------
1 | import { useEffect } from "@storybook/client-api";
2 | import { Meta, Canvas, Story } from "@storybook/addon-docs/blocks";
3 | import { createGlobalHeader } from "@/scripts/global_header";
4 | import { header } from "@/stories/helpers";
5 |
6 |
11 | `${storyFn()}`,
12 | ],
13 | }}
14 | />
15 |
16 | export const globalHeader =
17 | "const globalHeaderInstance = vocabulary.createGlobalHeader()";
18 |
19 |
20 |
21 | {() => {
22 | // Using Storybook hooks to clean up effects of DOM insertion
23 | useEffect(() => {
24 | // Function body executes for componentDidMount
25 | const globalHeaderInstance = createGlobalHeader();
26 | // Return function executes for componentWillUnmount
27 | return () => {
28 | if (globalHeaderInstance && globalHeaderInstance.element) {
29 | globalHeaderInstance.element.remove();
30 | }
31 | };
32 | });
33 | return header("rgb(237, 89, 47)");
34 | }}
35 |
36 |
37 |
--------------------------------------------------------------------------------
/src/_deprecated/stories/vocabulary/icon_font.stories.mdx:
--------------------------------------------------------------------------------
1 | import {
2 | Meta,
3 | IconItem,
4 | IconGallery,
5 | Story,
6 | } from "@storybook/addon-docs/blocks";
7 | import { figmaConfig } from "@/stories/helpers";
8 |
9 |
10 |
11 |
14 | body.sb-show-main,
15 | .sbdocs.sbdocs-wrapper {
16 | padding: 0 !important;
17 | }
18 | .sbdocs.sbdocs-content {
19 | max-width: unset;
20 | }
21 | .iframe-holder {
22 | background: url("puff.svg") center center no-repeat;
23 | }
24 |
25 | `,
26 | }}
27 | >
28 |
29 |
30 |
31 |
32 |
37 |
38 |
39 | {`See the Design tab.
`}
46 |
--------------------------------------------------------------------------------
/src/_deprecated/stories/vocabulary/icons.stories.mdx:
--------------------------------------------------------------------------------
1 | import {
2 | Meta,
3 | IconItem,
4 | IconGallery,
5 | Story,
6 | } from "@storybook/addon-docs/blocks";
7 | import { figmaConfig } from "@/stories/helpers";
8 |
9 |
10 |
11 |
14 | body.sb-show-main,
15 | .sbdocs.sbdocs-wrapper {
16 | padding: 0 !important;
17 | }
18 | .sbdocs.sbdocs-content {
19 | max-width: unset;
20 | }
21 | .iframe-holder {
22 | background: url("puff.svg") center center no-repeat;
23 | }
24 |
25 | `,
26 | }}
27 | >
28 |
29 |
30 |
31 |
32 |
37 |
38 |
39 | {`
46 | See the Design tab.
47 | `}
48 |
--------------------------------------------------------------------------------
/src/_deprecated/styles/fonts/_index.scss:
--------------------------------------------------------------------------------
1 | @import "cc_accidenz_commons";
2 | @import "jetbrains_mono";
3 | @import "roboto_condensed";
4 | @import "source_sans_pro";
5 |
--------------------------------------------------------------------------------
/src/_deprecated/styles/fonts/cc_accidenz_commons.scss:
--------------------------------------------------------------------------------
1 | @font-face {
2 | font-family: "CC Accidenz Commons";
3 | font-style: normal;
4 | font-weight: 500;
5 | src: url("~@/assets/fonts/CCAccidenzCommons-medium.otf") format("opentype");
6 | }
7 |
--------------------------------------------------------------------------------
/src/_deprecated/styles/fonts/font_face.scss:
--------------------------------------------------------------------------------
1 | @mixin contents($font-name, $font-file, $font-weight) {
2 | font-family: $font-name;
3 | font-style: normal;
4 | font-weight: $font-weight;
5 | font-display: swap;
6 | src: url("~@/assets/fonts/" + $font-file + ".woff2") format("woff2"),
7 | url("~@/assets/fonts/" + $font-file + ".woff") format("woff"),
8 | url("~@/assets/fonts/" + $font-file + ".otf") format("opentype");
9 | unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
10 | U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215,
11 | U+FEFF, U+FFFD;
12 | }
13 |
14 | @mixin font_face($font-name, $font-file, $font-weight) {
15 | @font-face {
16 | @include contents($font-name, $font-file, $font-weight);
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/src/_deprecated/styles/fonts/jetbrains_mono.scss:
--------------------------------------------------------------------------------
1 | @use "font_face";
2 |
3 | @include font_face.font_face("JetBrains Mono", "JetBrainsMono-Regular", 400);
4 |
5 | @include font_face.font_face("JetBrains Mono", "JetBrainsMono-Bold", 700);
6 |
--------------------------------------------------------------------------------
/src/_deprecated/styles/fonts/roboto_condensed.scss:
--------------------------------------------------------------------------------
1 | @use "font_face";
2 |
3 | @include font_face.font_face(
4 | "Roboto Condensed",
5 | "RobotoCondensed-Regular",
6 | 400
7 | );
8 |
9 | @include font_face.font_face("Roboto Condensed", "RobotoCondensed-Bold", 700);
10 |
--------------------------------------------------------------------------------
/src/_deprecated/styles/fonts/source_sans_pro.scss:
--------------------------------------------------------------------------------
1 | @use "font_face";
2 |
3 | @include font_face.font_face("Source Sans Pro", "SourceSansPro-Regular", 400);
4 |
5 | @include font_face.font_face("Source Sans Pro", "SourceSansPro-SemiBold", 600);
6 |
7 | @include font_face.font_face("Source Sans Pro", "SourceSansPro-Bold", 700);
8 |
--------------------------------------------------------------------------------
/src/_deprecated/styles/vocabulary/color_overrides.scss:
--------------------------------------------------------------------------------
1 | $black: $color-black;
2 | $grey-dark: $color-dark-gray;
3 | $grey: $color-gray;
4 | $grey-light: $color-light-gray;
5 | $grey-lighter: $color-lighter-gray;
6 | $white: $color-white;
7 |
8 | $orange: $color-tomato;
9 | $yellow: $color-gold;
10 | $green: $color-forest-green;
11 | $turquoise: $color-dark-turquoise;
12 | $cyan: $color-dark-slate-blue;
13 | $blue: $color-dark-slate-blue;
14 | $red: $color-tomato;
15 |
16 | $primary: $color-tomato;
17 |
18 | $info: $color-dark-info;
19 | $info-dark: $color-dark-info;
20 | $info-light: $color-light-info;
21 |
22 | $success: $color-dark-success;
23 | $success-dark: $color-dark-success;
24 | $success-light: $color-light-success;
25 |
26 | $warning: $color-dark-warning;
27 | $warning-dark: $color-dark-warning;
28 | $warning-light: $color-light-warning;
29 |
30 | $danger: $color-dark-error;
31 | $danger-dark: $color-dark-error;
32 | $danger-light: $color-light-error;
33 |
34 | $link: $color-tomato;
35 | $link-hover: currentColor;
36 | $link-visited: currentColor;
37 |
--------------------------------------------------------------------------------
/src/_deprecated/styles/vocabulary/layout.scss:
--------------------------------------------------------------------------------
1 | $fullhd: 1248px + (2 * $gap);
2 |
3 | @import "~bulma/sass/elements/container.sass";
4 | @import "~bulma/sass/grid/_all.sass";
5 |
--------------------------------------------------------------------------------
/src/_deprecated/styles/vocabulary/mediaQueries.scss:
--------------------------------------------------------------------------------
1 | @mixin responsive($breakpoint) {
2 | @if $breakpoint == phone {
3 | @media only screen and (max-width: 600px) {
4 | @content;
5 | }
6 | }
7 | @if $breakpoint == tab-port {
8 | @media only screen and (max-width: 900px) {
9 | @content;
10 | }
11 | }
12 | @if $breakpoint == tab-land {
13 | @media only screen and (max-width: 1400px) {
14 | @content;
15 | }
16 | }
17 | @if $breakpoint == big-desktop {
18 | @media only screen and (min-width: 1800px) {
19 | @content;
20 | }
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/src/_deprecated/styles/vocabulary/spacing_overrides.scss:
--------------------------------------------------------------------------------
1 | $spacing-values: (
2 | "0": 0,
3 | "smaller": $space-smaller,
4 | "small": $space-small,
5 | "normal": $space-normal,
6 | "big": $space-big,
7 | "bigger": $space-bigger,
8 | "large": $space-large,
9 | "larger": $space-larger,
10 | "xl": $space-xl,
11 | "xxl": $space-xxl,
12 | );
13 | $spacing-shortcuts: (
14 | "margin": "margin-",
15 | "padding": "padding-",
16 | );
17 | $spacing-directions: (
18 | "top": "top",
19 | "right": "right",
20 | "bottom": "bottom",
21 | "left": "left",
22 | );
23 | $spacing-horizontal: "horizontal";
24 | $spacing-vertical: "vertical";
25 |
--------------------------------------------------------------------------------
/src/_deprecated/styles/vocabulary/typography_overrides.scss:
--------------------------------------------------------------------------------
1 | $family-sans-serif: $family-body;
2 | $family-monospace: $family-code;
3 |
4 | $size-1: $font-size-h1;
5 | $size-2: $font-size-h2;
6 | $size-3: $font-size-h3;
7 | $size-4: $font-size-body-bigger; // Same as $font-size-h4
8 | $size-5: $font-size-body-big;
9 | $size-6: $font-size-body-normal;
10 | $size-7: $font-size-caption;
11 |
12 | $family-primary: $family-body;
13 | $family-secondary: $family-heading;
14 |
--------------------------------------------------------------------------------
/src/_deprecated/utils/SlotRenderer/SlotRenderer.md:
--------------------------------------------------------------------------------
1 | For example usage, go through the source code of the components
2 | [Tabbed](#/Layouts/Tabbed) and [Navigation](#/Patterns/Navigation).
3 |
4 | Since the above table does not mention it, `SlotComponent` takes a `default`
5 | slot containing the content to show if the passed component (`component` prop)
6 | does not populate the passed slot (`name` prop).
7 |
--------------------------------------------------------------------------------
/src/_deprecated/utils/addDescription.js:
--------------------------------------------------------------------------------
1 | // Adding a description to a single story is rather convoluted. This helper simplifies the process.
2 | export const addDescription = (Story, desc) => {
3 | // eslint-disable-next-line no-param-reassign
4 | Story.parameters = { docs: { description: { story: desc } } };
5 | };
6 |
--------------------------------------------------------------------------------
/src/_deprecated/utils/addSource.js:
--------------------------------------------------------------------------------
1 | /**
2 | * This function helps set the correct Source code for a Vue component documentation
3 | * @param Story
4 | * @param source {string}
5 | */
6 | export const addSource = (Story, source) => {
7 | // eslint-disable-next-line no-param-reassign
8 | Story.parameters = { docs: { source: { code: source } } };
9 | };
10 |
--------------------------------------------------------------------------------
/src/_deprecated/utils/prettier/prettier.md:
--------------------------------------------------------------------------------
1 | ## Installation
2 |
3 | It is absolutely important to install prettier as a dev dependency for this project
4 |
5 | First, install Prettier locally:
6 |
7 | _with npm_
8 |
9 | ```bash
10 | npm install --save-dev --save-exact prettier
11 | ```
12 |
13 | _with yarn_
14 |
15 | ```bash
16 | yarn: yarn add --dev --exact prettier
17 | ```
18 |
19 | Instailling with `npm` is lightweight, tweakable and much more performant as the code runs very close to the operating system.
20 |
21 | #### Formatting with Prettier
22 |
23 | Now, you can go ahead and format all files with Prettier:
24 |
25 | ```bash
26 | npx prettier --write .
27 | ```
28 |
29 | If you want to format just a particular directory, You may run
30 |
31 | ```bash
32 | prettier --write src/footer
33 | ```
34 |
35 | or if you want to format a particular file
36 |
37 | ```bash
38 | prettier --write src/components/buttons/button.scss
39 | ```
40 |
41 | ## Ignoring Files
42 |
43 | Create a .prettierignore file to let the Prettier CLI and editors know which files to not format.
44 | You can base your .prettierignore on the existing .gitignore file
45 |
--------------------------------------------------------------------------------
/src/_deprecated/utils/values.js:
--------------------------------------------------------------------------------
1 | /**
2 | * This file is just a temporary measure until we figure out a better way
3 | * to structure tokens for vocabulary, and things are more consistent across components.
4 | */
5 | export const sizes = ["tiny", "small", "medium", "normal", "big"];
6 | export const theme = ["primary", "success", "info", "text"];
7 |
--------------------------------------------------------------------------------
/src/_deprecated/vocabulary.js:
--------------------------------------------------------------------------------
1 | // This is the entrypoint for building Vocabulary.
2 |
3 | import "./styles/vocabulary/_index.scss"; // Sass stylesheets, will be compiled
4 |
5 | export { iconGroups } from "@/components/icons/icons";
6 |
--------------------------------------------------------------------------------
/src/_deprecated/vue_vocabulary.js:
--------------------------------------------------------------------------------
1 | // This is the entrypoint for building Vue Vocabulary.
2 |
--------------------------------------------------------------------------------
/src/assets/cclogo-shared-image.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/assets/cclogo-shared-image.jpg
--------------------------------------------------------------------------------
/src/assets/demo/broadway_tower.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/assets/demo/broadway_tower.jpg
--------------------------------------------------------------------------------
/src/assets/demo/left_index.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/assets/demo/left_index.png
--------------------------------------------------------------------------------
/src/assets/demo/lion_dafrique.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/assets/demo/lion_dafrique.jpg
--------------------------------------------------------------------------------
/src/assets/demo/show_code.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/assets/demo/show_code.png
--------------------------------------------------------------------------------
/src/assets/demo/tab_content.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/assets/demo/tab_content.png
--------------------------------------------------------------------------------
/src/assets/icons/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/assets/icons/favicon.png
--------------------------------------------------------------------------------
/src/assets/titlecard.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/assets/titlecard.png
--------------------------------------------------------------------------------
/src/fonts/assets/cclogo-shared-image.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/assets/cclogo-shared-image.jpg
--------------------------------------------------------------------------------
/src/fonts/assets/guide/app_button.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/assets/guide/app_button.png
--------------------------------------------------------------------------------
/src/fonts/assets/guide/directory.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/assets/guide/directory.png
--------------------------------------------------------------------------------
/src/fonts/assets/guide/flag.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/assets/guide/flag.png
--------------------------------------------------------------------------------
/src/fonts/assets/guide/generate_font.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/assets/guide/generate_font.png
--------------------------------------------------------------------------------
/src/fonts/assets/guide/generate_json.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/assets/guide/generate_json.png
--------------------------------------------------------------------------------
/src/fonts/assets/guide/import_icons.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/assets/guide/import_icons.png
--------------------------------------------------------------------------------
/src/fonts/assets/guide/import_project.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/assets/guide/import_project.png
--------------------------------------------------------------------------------
/src/fonts/assets/guide/import_to_set.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/assets/guide/import_to_set.png
--------------------------------------------------------------------------------
/src/fonts/assets/guide/projects_untitled.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/assets/guide/projects_untitled.png
--------------------------------------------------------------------------------
/src/fonts/assets/guide/projects_vocabulary.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/assets/guide/projects_vocabulary.png
--------------------------------------------------------------------------------
/src/fonts/assets/guide/selection.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/assets/guide/selection.png
--------------------------------------------------------------------------------
/src/fonts/assets/guide/toolbar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/assets/guide/toolbar.png
--------------------------------------------------------------------------------
/src/fonts/assets/guide/untitled_project.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/assets/guide/untitled_project.png
--------------------------------------------------------------------------------
/src/fonts/assets/guide/vocabulary_icons.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/assets/guide/vocabulary_icons.png
--------------------------------------------------------------------------------
/src/fonts/assets/icons/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/assets/icons/favicon.png
--------------------------------------------------------------------------------
/src/fonts/assets/svg/arrows/angle-down.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/arrows/angle-left.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/arrows/angle-right.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/arrows/angle-up.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/arrows/arrow-down.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/arrows/arrow-up.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/arrows/caret-down.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/arrows/caret-left.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/arrows/caret-right.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/arrows/caret-up.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/arrows/chevron-down.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/arrows/chevron-left.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/arrows/chevron-right.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/arrows/chevron-up.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/cc/cc-by.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/cc/cc-heart-filled.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/cc/cc-nc-eu.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/cc/cc-nc-jp.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/cc/cc-nc.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/cc/cc-nd.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/cc/cc-pd.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/cc/cc-pdm.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/cc/cc-remix.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/cc/cc-sa.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/cc/cc-share.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/social-media/facebook.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/social-media/linkedin.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/social-media/medium.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/social-media/messenger.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/social-media/pinterest.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/social-media/reddit.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/social-media/rss.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/social-media/slack.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/social-media/tumbler.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/social-media/twitter.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/symbols/adjust.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/symbols/bars.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/symbols/bookmark-regular.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/symbols/bookmark-solid.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/symbols/check.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/symbols/circle-filled.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/symbols/circle-outline.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/symbols/envelope.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/symbols/exclamation.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/symbols/external-link.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/symbols/filter.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/symbols/flag.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/symbols/globe.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/symbols/heart.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/symbols/info.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/symbols/minus.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/symbols/plus.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/symbols/question.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/symbols/search.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/symbols/sliders.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/symbols/sort.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/svg/symbols/times.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/src/fonts/assets/titlecard.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/assets/titlecard.png
--------------------------------------------------------------------------------
/src/fonts/fonts/CCAccidenzCommons-medium.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/fonts/CCAccidenzCommons-medium.otf
--------------------------------------------------------------------------------
/src/fonts/fonts/JetBrainsMono-Bold.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/fonts/JetBrainsMono-Bold.otf
--------------------------------------------------------------------------------
/src/fonts/fonts/JetBrainsMono-Bold.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/fonts/JetBrainsMono-Bold.woff
--------------------------------------------------------------------------------
/src/fonts/fonts/JetBrainsMono-Bold.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/fonts/JetBrainsMono-Bold.woff2
--------------------------------------------------------------------------------
/src/fonts/fonts/JetBrainsMono-Regular.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/fonts/JetBrainsMono-Regular.otf
--------------------------------------------------------------------------------
/src/fonts/fonts/JetBrainsMono-Regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/fonts/JetBrainsMono-Regular.woff
--------------------------------------------------------------------------------
/src/fonts/fonts/JetBrainsMono-Regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/fonts/JetBrainsMono-Regular.woff2
--------------------------------------------------------------------------------
/src/fonts/fonts/RobotoCondensed-Bold.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/fonts/RobotoCondensed-Bold.otf
--------------------------------------------------------------------------------
/src/fonts/fonts/RobotoCondensed-Bold.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/fonts/RobotoCondensed-Bold.woff
--------------------------------------------------------------------------------
/src/fonts/fonts/RobotoCondensed-Bold.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/fonts/RobotoCondensed-Bold.woff2
--------------------------------------------------------------------------------
/src/fonts/fonts/RobotoCondensed-Regular.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/fonts/RobotoCondensed-Regular.otf
--------------------------------------------------------------------------------
/src/fonts/fonts/RobotoCondensed-Regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/fonts/RobotoCondensed-Regular.woff
--------------------------------------------------------------------------------
/src/fonts/fonts/RobotoCondensed-Regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/fonts/RobotoCondensed-Regular.woff2
--------------------------------------------------------------------------------
/src/fonts/fonts/SourceSansPro-Bold.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/fonts/SourceSansPro-Bold.otf
--------------------------------------------------------------------------------
/src/fonts/fonts/SourceSansPro-Bold.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/fonts/SourceSansPro-Bold.woff
--------------------------------------------------------------------------------
/src/fonts/fonts/SourceSansPro-Bold.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/fonts/SourceSansPro-Bold.woff2
--------------------------------------------------------------------------------
/src/fonts/fonts/SourceSansPro-Regular.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/fonts/SourceSansPro-Regular.otf
--------------------------------------------------------------------------------
/src/fonts/fonts/SourceSansPro-Regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/fonts/SourceSansPro-Regular.woff
--------------------------------------------------------------------------------
/src/fonts/fonts/SourceSansPro-Regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/fonts/SourceSansPro-Regular.woff2
--------------------------------------------------------------------------------
/src/fonts/fonts/SourceSansPro-SemiBold.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/fonts/SourceSansPro-SemiBold.otf
--------------------------------------------------------------------------------
/src/fonts/fonts/SourceSansPro-SemiBold.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/fonts/SourceSansPro-SemiBold.woff
--------------------------------------------------------------------------------
/src/fonts/fonts/SourceSansPro-SemiBold.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/fonts/SourceSansPro-SemiBold.woff2
--------------------------------------------------------------------------------
/src/fonts/fonts/VocabularyIcons.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/fonts/VocabularyIcons.ttf
--------------------------------------------------------------------------------
/src/fonts/fonts/VocabularyIcons.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/cc-archive/vocabulary-legacy/6c4328527746bd0c36db0c51a3525e50bc3a3197/src/fonts/fonts/VocabularyIcons.woff
--------------------------------------------------------------------------------
/src/fonts/index.js:
--------------------------------------------------------------------------------
1 | require('./scripts/roboto_condensed')
2 | require('./scripts/source_sans_pro')
3 | require('./scripts/vocabulary_icons')
4 | require('./scripts/jetbrains_mono')
5 |
--------------------------------------------------------------------------------
/src/fonts/scripts/accidenz_commons.js:
--------------------------------------------------------------------------------
1 | require('../styles/cc_accidenz_commons.scss')
2 |
--------------------------------------------------------------------------------
/src/fonts/scripts/jetbrains_mono.js:
--------------------------------------------------------------------------------
1 | require('../styles/jetbrains_mono.scss')
2 |
--------------------------------------------------------------------------------
/src/fonts/scripts/roboto_condensed.js:
--------------------------------------------------------------------------------
1 | require('../styles/roboto_condensed.scss')
2 |
--------------------------------------------------------------------------------
/src/fonts/scripts/source_sans_pro.js:
--------------------------------------------------------------------------------
1 | require('../styles/source_sans_pro.scss')
2 |
--------------------------------------------------------------------------------
/src/fonts/scripts/vocabulary_icons.js:
--------------------------------------------------------------------------------
1 | require('../styles/vocabulary_icons.scss')
2 |
--------------------------------------------------------------------------------
/src/fonts/stories/helpers.js:
--------------------------------------------------------------------------------
1 | export const alphabetTable = (classes = []) => `
2 |
3 | ${['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I'].map((char) => `${char} `).join('')}
4 |
5 |
6 | ${['J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R'].map((char) => `${char} `).join('')}
7 |
8 |
9 | ${['S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'].map((char) => `${char} `).join('')}
10 |
11 |
`
12 |
13 | export const numberTable = () => `
14 |
15 | ${[0, 1, 2, 3, 4].map((num) => `${num} `).join('')}
16 |
17 |
18 | ${[5, 6, 7, 8, 9].map((num) => `${num} `).join('')}
19 |
20 |
`
21 |
22 | export const sampleTexts = [
23 | 'The quick brown fox jumps over the lazy dog.',
24 | 'Playing jazz vibe chords quickly excites my wife.',
25 | 'Crazy Fredrick bought many very exquisite opal jewels.',
26 | 'We promptly judged antique ivory buckles for the next prize.',
27 | 'Sixty zippers were quickly picked from the woven jute bag.'
28 | ]
29 |
--------------------------------------------------------------------------------
/src/fonts/stories/icon-gallery/icon-item.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react'
2 |
3 | export const IconItem = ({ iconSvg, iconClass }) => {
4 | return (
5 |
6 | )
7 | }
8 |
--------------------------------------------------------------------------------
/src/fonts/stories/icon-gallery/icon-set.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react'
2 | import { IconWrapper } from './icon-wrapper'
3 |
4 | const defaultDisplayNameGetter = (iconName) => iconName
5 | const defaultCopyValueGetter = (iconName) => `${iconName}.svg`
6 |
7 | export function IconSet ({
8 | icons,
9 | getDisplayName = defaultDisplayNameGetter,
10 | getCopyValue = defaultCopyValueGetter,
11 | iconClass = ''
12 | }) {
13 | const context = {
14 | getDisplayName,
15 | getCopyValue,
16 | iconClass
17 | }
18 | return (
19 |
20 | { icons && icons.map((icon) => (
21 |
22 | ))
23 | }
24 |
25 | )
26 | }
27 |
--------------------------------------------------------------------------------
/src/fonts/stories/icon-gallery/icon-wrapper.jsx:
--------------------------------------------------------------------------------
1 | import React from 'react'
2 | import { IconControls } from './icon-controls'
3 | import { IconItem } from './icon-item'
4 | import { iconFiles } from '../../assets/svg'
5 |
6 | const getIconSvgString = (name) => {
7 | console.log('name: ', name, 'iconFiles:', iconFiles)
8 | return iconFiles[name]
9 | }
10 |
11 | export const IconWrapper = ({ iconName, context }) => {
12 | const { getDisplayName, getCopyValue, iconClass } = context
13 | const displayName = getDisplayName(iconName)
14 | const copyValue = getCopyValue(iconName)
15 | const iconSvg = getIconSvgString(iconName)
16 |
17 | return (
18 |
19 |
20 |
21 |
22 |
23 |
{displayName}
24 |
25 | )
26 | }
27 |
--------------------------------------------------------------------------------
/src/fonts/stories/icon-gallery/index.js:
--------------------------------------------------------------------------------
1 | // src/index.js
2 |
3 | import * as styles from './index.css'
4 | import { IconSet } from './icon-set'
5 |
6 | export { styles }
7 | export { IconSet }
8 |
--------------------------------------------------------------------------------
/src/fonts/styles/accidenz_commons.scss:
--------------------------------------------------------------------------------
1 | @font-face {
2 | font-family: "CC Accidenz Commons";
3 | font-style: normal;
4 | font-weight: 500;
5 | src: url("../fonts/CCAccidenzCommons-medium.otf") format("opentype");
6 | }
7 |
--------------------------------------------------------------------------------
/src/fonts/styles/font_face.scss:
--------------------------------------------------------------------------------
1 | @mixin contents($font-name, $font-file, $font-weight) {
2 | font-family: $font-name;
3 | font-style: normal;
4 | font-weight: $font-weight;
5 | font-display: swap;
6 | src: url('../fonts/' + $font-file + '.woff2') format('woff2'),
7 | url('../fonts/' + $font-file + '.woff') format('woff'),
8 | url('../fonts/' + $font-file + '.otf') format('opentype');
9 | unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
10 | }
11 |
12 | @mixin fontface($font-name, $font-file, $font-weight) {
13 | @font-face {
14 | @include contents($font-name, $font-file, $font-weight);
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/src/fonts/styles/jetbrains_mono.scss:
--------------------------------------------------------------------------------
1 | @import "./font_face.scss";
2 |
3 | @include fontface('JetBrains Mono', 'JetBrainsMono-Regular', 400);
4 |
5 | @include fontface('JetBrains Mono', 'JetBrainsMono-Bold', 700);
6 |
--------------------------------------------------------------------------------
/src/fonts/styles/roboto_condensed.scss:
--------------------------------------------------------------------------------
1 | @import "./font_face.scss";
2 |
3 | @include fontface('Roboto Condensed', 'RobotoCondensed-Regular', 400);
4 |
5 | @include fontface('Roboto Condensed', 'RobotoCondensed-Bold', 700);
6 |
--------------------------------------------------------------------------------
/src/fonts/styles/source_sans_pro.scss:
--------------------------------------------------------------------------------
1 | @import "./font_face.scss";
2 |
3 | @include fontface('Source Sans Pro', 'SourceSansPro-Regular', 400);
4 |
5 | @include fontface('Source Sans Pro', 'SourceSansPro-SemiBold', 600);
6 |
7 | @include fontface('Source Sans Pro', 'SourceSansPro-Bold', 700);
8 |
--------------------------------------------------------------------------------
/src/index.js:
--------------------------------------------------------------------------------
1 | import './styles/vocabulary.scss' // Sass stylesheets, will be compiled
2 | export * from './scripts/vocabulary' // JavaScript scripts, will be bundled
3 |
--------------------------------------------------------------------------------
/src/scripts/constants.js:
--------------------------------------------------------------------------------
1 | export const CC_ORG_URL = 'https://creativecommons.org'
2 | export const DONATION_URL = 'https://creativecommons.org/donate'
3 |
4 | export const CDN_BASE_URL = 'https://unpkg.com/@creativecommons/vocabulary'
5 | export const GLOBAL_HEADER_API_URL =
6 | 'https://creativecommons.org/wp-json/ccglobal/menu'
7 |
8 | // TODO: Internationalise
9 | export const DONATION_TITLE = 'Our work relies on you!'
10 | export const DONATION_DESCRIPTION = 'Help us keep the internet free and open.'
11 | export const DONATION_BUTTON_TEXT = 'Donate now'
12 | export const NAVIGATION_TAB_TEXT = 'Explore CC'
13 | export const VISIT_SITE_BUTTON_TEXT = 'Visit site'
14 |
--------------------------------------------------------------------------------
/src/scripts/render.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Create an HTMLElement with the given tag, class and children.
3 | *
4 | * This function is a convenience function to provide a declarative interface
5 | * for generating DOM inside JavaScript.
6 | *
7 | * The extremely terse name `h` comes from Vue.js.
8 | *
9 | * @param {string} tagName - the name of the HTML tag for the element
10 | * @param {Array} classes - a list of classes to apply to the element
11 | * @param {Array} children - an Array of DOM nodes to place inside the element
12 | * @param {function} callbackFn - a function for performing actions on the node
13 | * @return {HTMLElement} the element generated by the function
14 | */
15 | export const h = (tagName, classes = [], children = [], callbackFn = null) => {
16 | const element = document.createElement(tagName);
17 | if (classes) {
18 | element.classList.add(...classes);
19 | }
20 | if (children) {
21 | children.forEach((child) => element.appendChild(child));
22 | }
23 | if (callbackFn) {
24 | callbackFn(element);
25 | }
26 | return element;
27 | };
28 |
--------------------------------------------------------------------------------
/src/scripts/vocabulary.js:
--------------------------------------------------------------------------------
1 | export { createGlobalHeader } from './global_header'
2 |
--------------------------------------------------------------------------------
/src/scss/breadcrumb.scss:
--------------------------------------------------------------------------------
1 | $breadcrumb-item-color: $color-tomato;
2 | $breadcrumb-item-active-color: $color-dark-slate-gray;
3 | $breadcrumb-item-hover-color: $color-tomato;
4 | $breadcrumb-item-padding-horizontal: $space-small;
5 | $breadcrumb-item-separator-color: $color-gray;
6 |
7 | @import "./vendor/bulma/sass/components/breadcrumb.sass";
8 |
9 | nav.breadcrumb > ul {
10 | font-size: $font-size-caption;
11 | font-weight: 600;
12 |
13 | li + li:before {
14 | font-family: "Vocabulary Icons";
15 | content: "\e901";
16 | }
17 |
18 | li:hover {
19 | text-underline-position: below;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/scss/color_overrides.scss:
--------------------------------------------------------------------------------
1 | $black: $color-black;
2 | $grey-dark: $color-dark-gray;
3 | $grey: $color-gray;
4 | $grey-light: $color-light-gray;
5 | $grey-lighter: $color-lighter-gray;
6 | $white: $color-white;
7 |
8 | $orange: $color-tomato;
9 | $yellow: $color-gold;
10 | $green: $color-forest-green;
11 | $turquoise: $color-dark-turquoise;
12 | $cyan: $color-dark-slate-blue;
13 | $blue: $color-dark-slate-blue;
14 | $red: $color-tomato;
15 |
16 | $primary: $color-tomato;
17 |
18 | $info: $color-dark-info;
19 | $info-dark: $color-dark-info;
20 | $info-light: $color-light-info;
21 |
22 | $success: $color-dark-success;
23 | $success-dark: $color-dark-success;
24 | $success-light: $color-light-success;
25 |
26 | $warning: $color-dark-warning;
27 | $warning-dark: $color-dark-warning;
28 | $warning-light: $color-light-warning;
29 |
30 | $danger: $color-dark-error;
31 | $danger-dark: $color-dark-error;
32 | $danger-light: $color-light-error;
33 |
34 | $link: $color-tomato;
35 | $link-hover: currentColor;
36 | $link-visited: currentColor;
37 |
--------------------------------------------------------------------------------
/src/scss/github_corner.scss:
--------------------------------------------------------------------------------
1 | .github-corner {
2 | position: absolute;
3 | top: 0;
4 |
5 | &.is-left-aligned {
6 | left: 0;
7 | transform: scaleX(-1);
8 | }
9 |
10 | &:not(.is-left-aligned) {
11 | right: 0;
12 | }
13 |
14 | &.is-inverted {
15 | color: $color-black;
16 |
17 | svg {
18 | fill: $color-white;
19 | }
20 |
21 | &:hover {
22 | color: $color-black;
23 | }
24 | }
25 |
26 | &:not(.is-inverted) {
27 | color: $color-white;
28 |
29 | svg {
30 | fill: $color-black;
31 | }
32 |
33 | &:hover {
34 | color: $color-white;
35 | }
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/src/scss/layout.scss:
--------------------------------------------------------------------------------
1 | $fullhd : 1248px + (2 * $gap);
2 |
3 | @import "./vendor/bulma/sass/elements/container.sass";
4 | @import "./vendor/bulma/sass/grid/_all.sass";
5 |
--------------------------------------------------------------------------------
/src/scss/profile_image.scss:
--------------------------------------------------------------------------------
1 | @import "./vendor/bulma/sass/elements/image";
2 |
3 | .image {
4 | .profile {
5 | border-radius: 50%;
6 |
7 | border: solid 0.1875em $color-dark-slate-gray;
8 | min-width: 60px;
9 |
10 | object-fit: cover;
11 | height: 100%;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/src/scss/sidebar_menu.scss:
--------------------------------------------------------------------------------
1 | $menu-item-color: $color-tomato;
2 | $menu-item-hover-background-color: none;
3 | $menu-item-active-background-color: none;
4 | $menu-item-active-color: $color-dark-slate-gray;
5 | $menu-list-border-left: none;
6 | $menu-nested-list-margin: 0;
7 | $menu-nested-list-padding-left: 0;
8 | $menu-list-link-padding: 0.5rem 0;
9 |
10 | @import "./vendor/bulma/sass/components/menu.sass";
11 |
12 | .sidebar-menu {
13 | font-size: $font-size-body-normal;
14 | padding-top: $space-normal;
15 | padding-bottom: $space-big;
16 |
17 | font-weight: bold;
18 | line-height: 1.5;
19 | background-color: $color-lighter-gray;
20 |
21 | .menu-list .link {
22 | text-decoration: none;
23 | padding: 0;
24 | padding-top: $space-small;
25 | padding-left: $space-big;
26 | padding-right: $space-big;
27 | }
28 |
29 | .icon {
30 | color: $color-gray;
31 | padding-right: $space-small;
32 |
33 | font-size: 0.375rem;
34 | }
35 |
36 | .divider {
37 | margin-top: $space-normal;
38 | margin-bottom: $space-small;
39 |
40 | border-top: 0.1875rem solid $color-white;
41 | }
42 | }
43 | .sidebar-container {
44 | max-width: 276px;
45 | }
46 |
--------------------------------------------------------------------------------
/src/scss/spacing_overrides.scss:
--------------------------------------------------------------------------------
1 | $spacing-values: (
2 | "0": 0,
3 | "smaller": $space-smaller,
4 | "small": $space-small,
5 | "normal": $space-normal,
6 | "big": $space-big,
7 | "bigger": $space-bigger,
8 | "large": $space-large,
9 | "larger": $space-larger,
10 | "xl": $space-xl,
11 | "xxl": $space-xxl,
12 | );
13 | $spacing-shortcuts: (
14 | "margin": "margin-",
15 | "padding": "padding-",
16 | );
17 | $spacing-directions: (
18 | "top": "top",
19 | "right": "right",
20 | "bottom": "bottom",
21 | "left": "left",
22 | );
23 | $spacing-horizontal: "horizontal";
24 | $spacing-vertical: "vertical";
25 |
--------------------------------------------------------------------------------
/src/scss/table_of_contents.scss:
--------------------------------------------------------------------------------
1 | // Refer to sidebar_menu.scss for the Bulma overrides
2 |
3 | @import "./vendor/bulma/sass/components/menu.sass";
4 |
5 | .table-of-contents {
6 | font-size: $font-size-body-normal;
7 | padding: $space-big;
8 | margin-top: $space-normal;
9 |
10 | font-weight: bold;
11 | line-height: 1.5;
12 | border: 0.125rem solid $color-lighter-gray;
13 | box-sizing: border-box;
14 | background-color: $color-white;
15 |
16 | .menu-list .link {
17 | text-decoration: none;
18 | }
19 |
20 | .icon {
21 | color: $color-gray;
22 | padding-right: $space-small;
23 |
24 | font-size: 0.375rem;
25 | }
26 | }
27 | .toc-container {
28 | max-width: 276px;
29 | }
30 |
--------------------------------------------------------------------------------
/src/scss/typography_overrides.scss:
--------------------------------------------------------------------------------
1 | $family-sans-serif: $family-body;
2 | $family-monospace: $family-code;
3 |
4 | $size-1: $font-size-h1;
5 | $size-2: $font-size-h2;
6 | $size-3: $font-size-h3;
7 | $size-4: $font-size-body-bigger; // Same as $font-size-h4
8 | $size-5: $font-size-body-big;
9 | $size-6: $font-size-body-normal;
10 | $size-7: $font-size-caption;
11 |
12 | $family-primary: $family-body;
13 | $family-secondary: $family-heading;
14 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2020 Jeremy Thomas
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in
13 | all copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | THE SOFTWARE.
22 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/bulma.sass:
--------------------------------------------------------------------------------
1 | @charset "utf-8"
2 | /*! bulma.io v0.9.3 | MIT License | github.com/jgthms/bulma */
3 | @import "sass/utilities/_all"
4 | @import "sass/base/_all"
5 | @import "sass/elements/_all"
6 | @import "sass/form/_all"
7 | @import "sass/components/_all"
8 | @import "sass/grid/_all"
9 | @import "sass/helpers/_all"
10 | @import "sass/layout/_all"
11 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/sass/base/_all.sass:
--------------------------------------------------------------------------------
1 | /* Bulma Base */
2 | @charset "utf-8"
3 |
4 | @import "minireset"
5 | @import "generic"
6 | @import "animations"
7 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/sass/base/animations.sass:
--------------------------------------------------------------------------------
1 | @keyframes spinAround
2 | from
3 | transform: rotate(0deg)
4 | to
5 | transform: rotate(359deg)
6 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/sass/base/helpers.sass:
--------------------------------------------------------------------------------
1 | @warn "The helpers.sass file is DEPRECATED. It has moved into its own /helpers folder. Please import sass/helpers/_all instead."
2 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/sass/base/minireset.sass:
--------------------------------------------------------------------------------
1 | /*! minireset.css v0.0.6 | MIT License | github.com/jgthms/minireset.css */
2 | // Blocks
3 | html,
4 | body,
5 | p,
6 | ol,
7 | ul,
8 | li,
9 | dl,
10 | dt,
11 | dd,
12 | blockquote,
13 | figure,
14 | fieldset,
15 | legend,
16 | textarea,
17 | pre,
18 | iframe,
19 | hr,
20 | h1,
21 | h2,
22 | h3,
23 | h4,
24 | h5,
25 | h6
26 | margin: 0
27 | padding: 0
28 |
29 | // Headings
30 | h1,
31 | h2,
32 | h3,
33 | h4,
34 | h5,
35 | h6
36 | font-size: 100%
37 | font-weight: normal
38 |
39 | // List
40 | ul
41 | list-style: none
42 |
43 | // Form
44 | button,
45 | input,
46 | select,
47 | textarea
48 | margin: 0
49 |
50 | // Box sizing
51 | html
52 | box-sizing: border-box
53 |
54 | *
55 | &,
56 | &::before,
57 | &::after
58 | box-sizing: inherit
59 |
60 | // Media
61 | img,
62 | video
63 | height: auto
64 | max-width: 100%
65 |
66 | // Iframe
67 | iframe
68 | border: 0
69 |
70 | // Table
71 | table
72 | border-collapse: collapse
73 | border-spacing: 0
74 |
75 | td,
76 | th
77 | padding: 0
78 | &:not([align])
79 | text-align: inherit
80 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/sass/components/_all.sass:
--------------------------------------------------------------------------------
1 | /* Bulma Components */
2 | @charset "utf-8"
3 |
4 | @import "breadcrumb"
5 | @import "card"
6 | @import "dropdown"
7 | @import "level"
8 | @import "media"
9 | @import "menu"
10 | @import "message"
11 | @import "modal"
12 | @import "navbar"
13 | @import "pagination"
14 | @import "panel"
15 | @import "tabs"
16 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/sass/elements/_all.sass:
--------------------------------------------------------------------------------
1 | /* Bulma Elements */
2 | @charset "utf-8"
3 |
4 | @import "box"
5 | @import "button"
6 | @import "container"
7 | @import "content"
8 | @import "icon"
9 | @import "image"
10 | @import "notification"
11 | @import "progress"
12 | @import "table"
13 | @import "tag"
14 | @import "title"
15 |
16 | @import "other"
17 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/sass/elements/box.sass:
--------------------------------------------------------------------------------
1 | @import "../utilities/mixins"
2 |
3 | $box-color: $text !default
4 | $box-background-color: $scheme-main !default
5 | $box-radius: $radius-large !default
6 | $box-shadow: $shadow !default
7 | $box-padding: 1.25rem !default
8 |
9 | $box-link-hover-shadow: 0 0.5em 1em -0.125em rgba($scheme-invert, 0.1), 0 0 0 1px $link !default
10 | $box-link-active-shadow: inset 0 1px 2px rgba($scheme-invert, 0.2), 0 0 0 1px $link !default
11 |
12 | .box
13 | @extend %block
14 | background-color: $box-background-color
15 | border-radius: $box-radius
16 | box-shadow: $box-shadow
17 | color: $box-color
18 | display: block
19 | padding: $box-padding
20 |
21 | a.box
22 | &:hover,
23 | &:focus
24 | box-shadow: $box-link-hover-shadow
25 | &:active
26 | box-shadow: $box-link-active-shadow
27 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/sass/elements/container.sass:
--------------------------------------------------------------------------------
1 | @import "../utilities/mixins"
2 |
3 | $container-offset: (2 * $gap) !default
4 | $container-max-width: $fullhd !default
5 |
6 | .container
7 | flex-grow: 1
8 | margin: 0 auto
9 | position: relative
10 | width: auto
11 | &.is-fluid
12 | max-width: none !important
13 | padding-left: $gap
14 | padding-right: $gap
15 | width: 100%
16 | +desktop
17 | max-width: $desktop - $container-offset
18 | +until-widescreen
19 | &.is-widescreen:not(.is-max-desktop)
20 | max-width: min($widescreen, $container-max-width) - $container-offset
21 | +until-fullhd
22 | &.is-fullhd:not(.is-max-desktop):not(.is-max-widescreen)
23 | max-width: min($fullhd, $container-max-width) - $container-offset
24 | +widescreen
25 | &:not(.is-max-desktop)
26 | max-width: min($widescreen, $container-max-width) - $container-offset
27 | +fullhd
28 | &:not(.is-max-desktop):not(.is-max-widescreen)
29 | max-width: min($fullhd, $container-max-width) - $container-offset
30 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/sass/elements/form.sass:
--------------------------------------------------------------------------------
1 | @warn "The form.sass file is DEPRECATED. It has moved into its own /form folder. Please import sass/form/_all instead."
2 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/sass/elements/icon.sass:
--------------------------------------------------------------------------------
1 | $icon-dimensions: 1.5rem !default
2 | $icon-dimensions-small: 1rem !default
3 | $icon-dimensions-medium: 2rem !default
4 | $icon-dimensions-large: 3rem !default
5 | $icon-text-spacing: 0.25em !default
6 |
7 | .icon
8 | align-items: center
9 | display: inline-flex
10 | justify-content: center
11 | height: $icon-dimensions
12 | width: $icon-dimensions
13 | // Sizes
14 | &.is-small
15 | height: $icon-dimensions-small
16 | width: $icon-dimensions-small
17 | &.is-medium
18 | height: $icon-dimensions-medium
19 | width: $icon-dimensions-medium
20 | &.is-large
21 | height: $icon-dimensions-large
22 | width: $icon-dimensions-large
23 |
24 | .icon-text
25 | align-items: flex-start
26 | color: inherit
27 | display: inline-flex
28 | flex-wrap: wrap
29 | line-height: $icon-dimensions
30 | vertical-align: top
31 | .icon
32 | flex-grow: 0
33 | flex-shrink: 0
34 | &:not(:last-child)
35 | +ltr
36 | margin-right: $icon-text-spacing
37 | +rtl
38 | margin-left: $icon-text-spacing
39 | &:not(:first-child)
40 | +ltr
41 | margin-left: $icon-text-spacing
42 | +rtl
43 | margin-right: $icon-text-spacing
44 |
45 | div.icon-text
46 | display: flex
47 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/sass/elements/other.sass:
--------------------------------------------------------------------------------
1 | @import "../utilities/mixins"
2 |
3 | .block
4 | @extend %block
5 |
6 | .delete
7 | @extend %delete
8 |
9 | .heading
10 | display: block
11 | font-size: 11px
12 | letter-spacing: 1px
13 | margin-bottom: 5px
14 | text-transform: uppercase
15 |
16 | .loader
17 | @extend %loader
18 |
19 | .number
20 | align-items: center
21 | background-color: $background
22 | border-radius: $radius-rounded
23 | display: inline-flex
24 | font-size: $size-medium
25 | height: 2em
26 | justify-content: center
27 | margin-right: 1.5rem
28 | min-width: 2.5em
29 | padding: 0.25rem 0.5rem
30 | text-align: center
31 | vertical-align: top
32 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/sass/form/_all.sass:
--------------------------------------------------------------------------------
1 | /* Bulma Form */
2 | @charset "utf-8"
3 |
4 | @import "shared"
5 | @import "input-textarea"
6 | @import "checkbox-radio"
7 | @import "select"
8 | @import "file"
9 | @import "tools"
10 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/sass/form/checkbox-radio.sass:
--------------------------------------------------------------------------------
1 | %checkbox-radio
2 | cursor: pointer
3 | display: inline-block
4 | line-height: 1.25
5 | position: relative
6 | input
7 | cursor: pointer
8 | &:hover
9 | color: $input-hover-color
10 | &[disabled],
11 | fieldset[disabled] &,
12 | input[disabled]
13 | color: $input-disabled-color
14 | cursor: not-allowed
15 |
16 | .checkbox
17 | @extend %checkbox-radio
18 |
19 | .radio
20 | @extend %checkbox-radio
21 | & + .radio
22 | +ltr-property("margin", 0.5em, false)
23 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/sass/grid/_all.sass:
--------------------------------------------------------------------------------
1 | /* Bulma Grid */
2 | @charset "utf-8"
3 |
4 | @import "columns"
5 | @import "tiles"
6 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/sass/grid/tiles.sass:
--------------------------------------------------------------------------------
1 | @import "../utilities/mixins"
2 |
3 | $tile-spacing: 0.75rem !default
4 |
5 | .tile
6 | align-items: stretch
7 | display: block
8 | flex-basis: 0
9 | flex-grow: 1
10 | flex-shrink: 1
11 | min-height: min-content
12 | // Modifiers
13 | &.is-ancestor
14 | margin-left: $tile-spacing * -1
15 | margin-right: $tile-spacing * -1
16 | margin-top: $tile-spacing * -1
17 | &:last-child
18 | margin-bottom: $tile-spacing * -1
19 | &:not(:last-child)
20 | margin-bottom: $tile-spacing
21 | &.is-child
22 | margin: 0 !important
23 | &.is-parent
24 | padding: $tile-spacing
25 | &.is-vertical
26 | flex-direction: column
27 | & > .tile.is-child:not(:last-child)
28 | margin-bottom: 1.5rem !important
29 | // Responsiveness
30 | +tablet
31 | &:not(.is-child)
32 | display: flex
33 | @for $i from 1 through 12
34 | &.is-#{$i}
35 | flex: none
36 | width: (divide($i, 12)) * 100%
37 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/sass/helpers/_all.sass:
--------------------------------------------------------------------------------
1 | /* Bulma Helpers */
2 | @charset "utf-8"
3 |
4 | @import "color"
5 | @import "flexbox"
6 | @import "float"
7 | @import "other"
8 | @import "overflow"
9 | @import "position"
10 | @import "spacing"
11 | @import "typography"
12 | @import "visibility"
13 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/sass/helpers/color.sass:
--------------------------------------------------------------------------------
1 | @import "../utilities/derived-variables"
2 |
3 | @each $name, $pair in $colors
4 | $color: nth($pair, 1)
5 | .has-text-#{$name}
6 | color: $color !important
7 | a.has-text-#{$name}
8 | &:hover,
9 | &:focus
10 | color: bulmaDarken($color, 10%) !important
11 | .has-background-#{$name}
12 | background-color: $color !important
13 | @if length($pair) >= 4
14 | $color-light: nth($pair, 3)
15 | $color-dark: nth($pair, 4)
16 | // Light
17 | .has-text-#{$name}-light
18 | color: $color-light !important
19 | a.has-text-#{$name}-light
20 | &:hover,
21 | &:focus
22 | color: bulmaDarken($color-light, 10%) !important
23 | .has-background-#{$name}-light
24 | background-color: $color-light !important
25 | // Dark
26 | .has-text-#{$name}-dark
27 | color: $color-dark !important
28 | a.has-text-#{$name}-dark
29 | &:hover,
30 | &:focus
31 | color: bulmaLighten($color-dark, 10%) !important
32 | .has-background-#{$name}-dark
33 | background-color: $color-dark !important
34 |
35 | @each $name, $shade in $shades
36 | .has-text-#{$name}
37 | color: $shade !important
38 | .has-background-#{$name}
39 | background-color: $shade !important
40 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/sass/helpers/float.sass:
--------------------------------------------------------------------------------
1 | @import "../utilities/mixins"
2 |
3 | .is-clearfix
4 | +clearfix
5 |
6 | .is-pulled-left
7 | float: left !important
8 |
9 | .is-pulled-right
10 | float: right !important
11 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/sass/helpers/other.sass:
--------------------------------------------------------------------------------
1 | @import "../utilities/mixins"
2 |
3 | .is-radiusless
4 | border-radius: 0 !important
5 |
6 | .is-shadowless
7 | box-shadow: none !important
8 |
9 | .is-clickable
10 | cursor: pointer !important
11 | pointer-events: all !important
12 |
13 | .is-unselectable
14 | @extend %unselectable
15 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/sass/helpers/overflow.sass:
--------------------------------------------------------------------------------
1 | .is-clipped
2 | overflow: hidden !important
3 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/sass/helpers/position.sass:
--------------------------------------------------------------------------------
1 | @import "../utilities/mixins"
2 |
3 | .is-overlay
4 | @extend %overlay
5 |
6 | .is-relative
7 | position: relative !important
8 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/sass/helpers/spacing.sass:
--------------------------------------------------------------------------------
1 | .is-marginless
2 | margin: 0 !important
3 |
4 | .is-paddingless
5 | padding: 0 !important
6 |
7 | $spacing-shortcuts: ("margin": "m", "padding": "p") !default
8 | $spacing-directions: ("top": "t", "right": "r", "bottom": "b", "left": "l") !default
9 | $spacing-horizontal: "x" !default
10 | $spacing-vertical: "y" !default
11 | $spacing-values: ("0": 0, "1": 0.25rem, "2": 0.5rem, "3": 0.75rem, "4": 1rem, "5": 1.5rem, "6": 3rem, "auto": auto) !default
12 |
13 | @each $property, $shortcut in $spacing-shortcuts
14 | @each $name, $value in $spacing-values
15 | // All directions
16 | .#{$shortcut}-#{$name}
17 | #{$property}: $value !important
18 | // Cardinal directions
19 | @each $direction, $suffix in $spacing-directions
20 | .#{$shortcut}#{$suffix}-#{$name}
21 | #{$property}-#{$direction}: $value !important
22 | // Horizontal axis
23 | @if $spacing-horizontal != null
24 | .#{$shortcut}#{$spacing-horizontal}-#{$name}
25 | #{$property}-left: $value !important
26 | #{$property}-right: $value !important
27 | // Vertical axis
28 | @if $spacing-vertical != null
29 | .#{$shortcut}#{$spacing-vertical}-#{$name}
30 | #{$property}-top: $value !important
31 | #{$property}-bottom: $value !important
32 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/sass/layout/_all.sass:
--------------------------------------------------------------------------------
1 | /* Bulma Layout */
2 | @charset "utf-8"
3 |
4 | @import "hero"
5 | @import "section"
6 | @import "footer"
7 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/sass/layout/footer.sass:
--------------------------------------------------------------------------------
1 | @import "../utilities/derived-variables"
2 |
3 | $footer-background-color: $scheme-main-bis !default
4 | $footer-color: false !default
5 | $footer-padding: 3rem 1.5rem 6rem !default
6 |
7 | .footer
8 | background-color: $footer-background-color
9 | padding: $footer-padding
10 | @if $footer-color
11 | color: $footer-color
12 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/sass/layout/section.sass:
--------------------------------------------------------------------------------
1 | @import "../utilities/mixins"
2 |
3 | $section-padding: 3rem 1.5rem !default
4 | $section-padding-desktop: 3rem 3rem !default
5 | $section-padding-medium: 9rem 4.5rem !default
6 | $section-padding-large: 18rem 6rem !default
7 |
8 | .section
9 | padding: $section-padding
10 | // Responsiveness
11 | +desktop
12 | padding: $section-padding-desktop
13 | // Sizes
14 | &.is-medium
15 | padding: $section-padding-medium
16 | &.is-large
17 | padding: $section-padding-large
18 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/sass/utilities/_all.sass:
--------------------------------------------------------------------------------
1 | /* Bulma Utilities */
2 | @charset "utf-8"
3 |
4 | @import "initial-variables"
5 | @import "functions"
6 | @import "derived-variables"
7 | @import "mixins"
8 | @import "controls"
9 | @import "extends"
10 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/sass/utilities/animations.sass:
--------------------------------------------------------------------------------
1 | @warn "The animations.sass file has MOVED. It is now in the /base folder. Please import sass/base/animations instead."
2 |
--------------------------------------------------------------------------------
/src/scss/vendor/bulma/sass/utilities/extends.sass:
--------------------------------------------------------------------------------
1 | @import "mixins"
2 |
3 | %control
4 | +control
5 |
6 | %unselectable
7 | +unselectable
8 |
9 | %arrow
10 | +arrow
11 |
12 | %block
13 | +block
14 |
15 | %delete
16 | +delete
17 |
18 | %loader
19 | +loader
20 |
21 | %overlay
22 | +overlay
23 |
24 | %reset
25 | +reset
26 |
--------------------------------------------------------------------------------
/src/scss/vocabulary.scss:
--------------------------------------------------------------------------------
1 | @charset "utf-8";
2 |
3 | // Reset
4 | @import "./vendor/bulma/sass/base/minireset.sass";
5 |
6 | // Tokens
7 | @import "./color.scss";
8 | @import "./color_overrides.scss";
9 |
10 | @import "./spacing.scss";
11 | @import "./spacing_overrides.scss";
12 |
13 | @import "./typography.scss";
14 | @import "./typography_overrides.scss";
15 |
16 | // Bulma
17 | @import "./vendor/bulma/sass/utilities/_all.sass";
18 | @import "./vendor/bulma/sass/helpers/_all.sass";
19 | @import "./vendor/bulma/sass/base/generic.sass";
20 |
21 | // Elements
22 | @import "./button.scss";
23 |
24 | // Form
25 | @import "./form.scss";
26 |
27 | // Layouts
28 | @import "./layout.scss";
29 | @import "./card.scss";
30 | @import "./table.scss";
31 | @import "./tabs.scss";
32 | @import "./notification.scss";
33 |
34 | // Navigation
35 | @import "./sidebar_menu";
36 | @import "./table_of_contents.scss";
37 | @import "./table_of_progress";
38 | @import "./breadcrumb.scss";
39 | @import "./pagination.scss";
40 |
41 | // Patterns
42 | @import "./global_header.scss";
43 | @import "./header.scss";
44 | @import "./footer.scss";
45 | @import "./github_corner.scss";
46 | @import "./locale.scss";
47 | @import "./image.scss";
48 | @import "./profile_image.scss";
49 | @import "./modal.scss";
50 |
51 | // Content
52 | @import "./vendor/bulma/sass/elements/content.sass";
53 |
--------------------------------------------------------------------------------
/src/stories/breadcrumb.stories.mdx:
--------------------------------------------------------------------------------
1 | import { Meta, Canvas, Story } from "@storybook/addon-docs/blocks";
2 | import { figmaConfig, htmlWrapper } from "@/stories/helpers";
3 |
4 |
5 |
6 | # Breadcrumb
7 |
8 | export const breadCrumb = () => `
9 |
10 |
16 |
17 | `;
18 |
19 | The Breadcrumb has two text styles: links to parent pages and the page the user is seeing. The parent links should be corresponding to the site map defined. At the same time, the color used for links should be the main color for links across the site.
20 |
21 | For accessibility purposes, the component should be placed above the page's title.
22 |
23 |
24 |
30 | {htmlWrapper(breadCrumb()).bind({})}
31 |
32 |
33 |
--------------------------------------------------------------------------------
/src/stories/combined_header.stories.mdx:
--------------------------------------------------------------------------------
1 | import { useEffect } from '@storybook/client-api'
2 | import { Meta, Preview, Story } from '@storybook/addon-docs/blocks'
3 | import { createGlobalHeader } from '../scripts/global_header'
4 | import { header } from './helpers'
5 |
6 | `${storyFn()}`
11 | ]
12 | }}/>
13 |
14 | export const globalHeader = 'const globalHeaderInstance = vocabulary.createGlobalHeader()'
15 |
16 |
17 | {() => {
18 | // Using Storybook hooks to clean up effects of DOM insertion
19 | useEffect(() => {
20 | // Function body executes for componentDidMount
21 | const globalHeaderInstance = createGlobalHeader()
22 | // Return function executes for componentWillUnmount
23 | return () => {
24 | if (globalHeaderInstance && globalHeaderInstance.element) {
25 | globalHeaderInstance.element.remove()
26 | }
27 | }
28 | })
29 | return header('rgb(237, 89, 47)')
30 | }}
31 |
32 |
--------------------------------------------------------------------------------
/src/stories/global_header.stories.mdx:
--------------------------------------------------------------------------------
1 | import { useEffect } from '@storybook/client-api'
2 | import { Meta, Preview, Story } from '@storybook/addon-docs/blocks'
3 | import { createGlobalHeader } from '../scripts/global_header'
4 |
5 | `${storyFn()}`
10 | ]
11 | }}/>
12 |
13 | export const globalHeader = 'const globalHeaderInstance = vocabulary.createGlobalHeader()'
14 |
15 |
16 | {() => {
17 | // Using Storybook hooks to clean up effects of DOM insertion
18 | useEffect(() => {
19 | // Function body executes for componentDidMount
20 | const globalHeaderInstance = createGlobalHeader()
21 | // Return function executes for componentWillUnmount
22 | return () => {
23 | if (globalHeaderInstance && globalHeaderInstance.element) {
24 | globalHeaderInstance.element.remove()
25 | }
26 | }
27 | })
28 | return '
'
29 | }}
30 |
31 |
--------------------------------------------------------------------------------
/src/stories/icon_font.stories.mdx:
--------------------------------------------------------------------------------
1 | import { Meta, IconItem, IconGallery, Story } from '@storybook/addon-docs/blocks'
2 | import { figmaConfig } from './helpers'
3 |
4 |
5 |
6 |
7 | body.sb-show-main,
8 | .sbdocs.sbdocs-wrapper {
9 | padding: 0 !important;
10 | }
11 | .sbdocs.sbdocs-content {
12 | max-width: unset;
13 | }
14 | .iframe-holder {
15 | background: url("puff.svg") center center no-repeat;
16 | }
17 |
18 | `
19 | }}>
20 |
21 |
22 |
23 |
27 |
28 |
29 | {`
33 | See the Design tab.
34 | `}
35 |
--------------------------------------------------------------------------------
/src/stories/icons.stories.mdx:
--------------------------------------------------------------------------------
1 | import { Meta, IconItem, IconGallery, Story } from '@storybook/addon-docs/blocks'
2 | import { figmaConfig } from './helpers'
3 |
4 |
5 |
6 |
7 | body.sb-show-main,
8 | .sbdocs.sbdocs-wrapper {
9 | padding: 0 !important;
10 | }
11 | .sbdocs.sbdocs-content {
12 | max-width: unset;
13 | }
14 | .iframe-holder {
15 | background: url("puff.svg") center center no-repeat;
16 | }
17 |
18 | `
19 | }}>
20 |
21 |
22 |
23 |
27 |
28 |
29 | {`
33 | See the Design tab.
34 | `}
35 |
--------------------------------------------------------------------------------
/src/stories/locale.stories.mdx:
--------------------------------------------------------------------------------
1 | import { Meta, Story, Canvas } from "@storybook/addon-docs/blocks";
2 | import { figmaConfig } from "@/stories/helpers";
3 |
4 |
5 |
6 | # Locale
7 |
8 | The locale component should be used to indicate and switch the language of the page where it is placed. The option
9 | displayed in the select component must show the current language and then the language’s name written in the language’s
10 | alphabet.
11 |
12 |
13 | {`
20 |
21 | Languages available
22 |
23 |
24 |
25 | Select
26 | English
27 | le Français
28 | 日本語
29 | Русский
30 | Español
31 |
32 |
33 |
34 | locale
35 |
36 |
37 |
38 | `}
39 |
40 |
--------------------------------------------------------------------------------
/src/stories/radio.stories.mdx:
--------------------------------------------------------------------------------
1 | import { Meta, Story, Canvas } from "@storybook/addon-docs/blocks";
2 | import { figmaConfig, htmlWrapper } from "@/stories/helpers";
3 |
4 |
5 |
6 | # Radio
7 |
8 | export const radioDiv = () => `Radio buttons
9 |
10 |
11 |
12 | Default Option
13 |
14 |
15 | Checked Option
16 |
17 |
18 | Disabled Option
19 |
20 |
`;
21 |
22 |
23 |
30 | {htmlWrapper(radioDiv()).bind({})}
31 |
32 |
33 |
--------------------------------------------------------------------------------
/src/stories/select.stories.mdx:
--------------------------------------------------------------------------------
1 | import { Meta, Story, Canvas } from "@storybook/addon-docs/blocks";
2 | import { figmaConfig, htmlWrapper } from "@/stories/helpers";
3 |
4 |
5 |
6 | # Select
7 |
8 | export const selectDiv = () => `
9 |
10 |
11 | Select
12 | Option A
13 | Option B
14 |
15 |
16 |
17 |
18 |
19 | Select
20 | Option A
21 | Option B
22 |
23 |
24 |
25 |
26 |
27 | Select
28 | Option A
29 | Option B
30 |
31 |
`;
32 |
33 |
34 |
41 | {htmlWrapper(selectDiv()).bind({})}
42 |
43 |
44 |
--------------------------------------------------------------------------------
/src/stories/textarea.stories.mdx:
--------------------------------------------------------------------------------
1 | import { Meta, Story, Preview } from '@storybook/addon-docs/blocks'
2 | import { figmaConfig } from './helpers'
3 |
4 |
5 |
6 | # Textarea
7 |
8 | export const textArea = () => `
9 |
10 |
11 |
12 |
13 |
14 | `
15 |
16 |
17 | {
20 | textArea()
21 | }
22 |
23 |
--------------------------------------------------------------------------------
/tests/unit/__snapshots__/VCheckbox.spec.js.snap:
--------------------------------------------------------------------------------
1 | // Jest Snapshot v1, https://goo.gl/fbAQLP
2 |
3 | exports[`VCheckbox matches snapshot 1`] = ` Default Checkbox `;
4 |
--------------------------------------------------------------------------------