├── .browserslistrc
├── .editorconfig
├── .env.example
├── .eslintrc.js
├── .github
└── workflows
│ ├── crowdin-uploads.yml
│ └── vercel-deploy.yml
├── .gitignore
├── .markdownlintrc
├── README.md
├── babel.config.js
├── build
├── api-plugin.js
├── api.js
├── generate-routes.js
├── markdown-it.js
├── modified.js
├── pages-plugin.js
├── prerender.js
├── rules.js
├── sass-api.js
├── sitemap.js
└── toc-loader.js
├── crowdin.yml
├── package.json
├── plugins
└── @vuetify
│ ├── config
│ ├── base.js
│ ├── client.js
│ └── server.js
│ └── ssg.js
├── public
├── favicon.ico
├── img
│ └── icons
│ │ ├── android-chrome-192x192.png
│ │ ├── android-chrome-512x512.png
│ │ ├── android-chrome-maskable-192x192.png
│ │ ├── android-chrome-maskable-512x512.png
│ │ ├── apple-touch-icon-114x114.png
│ │ ├── apple-touch-icon-120x120.png
│ │ ├── apple-touch-icon-144x144.png
│ │ ├── apple-touch-icon-152x152.png
│ │ ├── apple-touch-icon-180x180.png
│ │ ├── apple-touch-icon-57x57.png
│ │ ├── apple-touch-icon-60x60.png
│ │ ├── apple-touch-icon-72x72.png
│ │ ├── apple-touch-icon-76x76.png
│ │ ├── apple-touch-icon.png
│ │ ├── favicon-16x16.png
│ │ ├── favicon-32x32.png
│ │ ├── mstile-144x144.png
│ │ ├── mstile-150x150.png
│ │ ├── mstile-310x150.png
│ │ ├── mstile-310x310.png
│ │ ├── mstile-70x70.png
│ │ └── safari-pinned-tab.svg
├── index.html
├── robots.txt
└── search.xml
├── src
├── App.vue
├── assets
│ └── logo.png
├── components
│ ├── Alert.vue
│ ├── Backmatter.vue
│ ├── Contribute.vue
│ ├── Markup.vue
│ ├── UpNext.vue
│ ├── ad
│ │ ├── Ad.vue
│ │ ├── Bsa.vue
│ │ ├── Carbon.vue
│ │ ├── Discovery.vue
│ │ ├── Entry.vue
│ │ ├── Exit.vue
│ │ ├── Highlighted.vue
│ │ ├── Inline.vue
│ │ ├── Promoted.vue
│ │ ├── Random.vue
│ │ ├── Script.vue
│ │ ├── Sponsored.vue
│ │ └── Vuetify.vue
│ ├── api
│ │ ├── ApiSearch.vue
│ │ ├── ApiTable.vue
│ │ ├── ComponentApi.vue
│ │ └── SassApi.vue
│ ├── app
│ │ ├── Btn.vue
│ │ ├── Caption.vue
│ │ ├── ChevronDown.vue
│ │ ├── Code.vue
│ │ ├── CopyBtn.vue
│ │ ├── Divider.vue
│ │ ├── Figure.vue
│ │ ├── Heading.vue
│ │ ├── Headline.vue
│ │ ├── Image.vue
│ │ ├── Link.vue
│ │ ├── Md.vue
│ │ ├── Menu.vue
│ │ ├── Sheet.vue
│ │ ├── TextField.vue
│ │ ├── Title.vue
│ │ ├── TooltipBtn.vue
│ │ └── TransitionIcon.vue
│ ├── doc
│ │ ├── BecomeSponsor.vue
│ │ ├── BreakpointsTable.vue
│ │ ├── ColorPalette.vue
│ │ ├── ConsultingCalendar.vue
│ │ ├── IconList.vue
│ │ ├── Migration.vue
│ │ ├── PremiumThemes.vue
│ │ ├── Releases.vue
│ │ ├── SkeletonLoader.vue
│ │ ├── VerticalDivider.vue
│ │ ├── VueJobs.vue
│ │ ├── VuetifyProjects.vue
│ │ ├── WhiteframeExamples.vue
│ │ ├── links
│ │ │ ├── DiscordLink.vue
│ │ │ ├── GithubLink.vue
│ │ │ ├── GuideLink.vue
│ │ │ ├── JobsLink.vue
│ │ │ ├── SponsorLink.vue
│ │ │ ├── StoreLink.vue
│ │ │ └── TeamLink.vue
│ │ ├── support
│ │ │ └── tidelift
│ │ │ │ ├── TideliftBtns.vue
│ │ │ │ └── TideliftImg.vue
│ │ └── toggles
│ │ │ ├── SearchToggle.vue
│ │ │ └── SettingsToggle.vue
│ ├── examples
│ │ ├── Codepen.vue
│ │ ├── Example.vue
│ │ ├── ExampleMissing.vue
│ │ ├── Usage.vue
│ │ └── VueFile.vue
│ ├── home
│ │ ├── ActionBtns.vue
│ │ └── VuetifyLogo.vue
│ ├── menus
│ │ ├── LanguageMenu.vue
│ │ ├── LearnMenu.vue
│ │ ├── NotificationsMenu.vue
│ │ ├── ReleasesMenu.vue
│ │ └── SupportMenu.vue
│ ├── related-pages
│ │ ├── RelatedPage.vue
│ │ ├── RelatedPages.vue
│ │ └── RelatedTopics.vue
│ ├── sponsors
│ │ ├── Sponsor.vue
│ │ └── Sponsors.vue
│ ├── team
│ │ ├── TeamMember.vue
│ │ └── TeamMembers.vue
│ └── vuetify
│ │ ├── Comparison.vue
│ │ ├── Logo.vue
│ │ └── LogoAlt.vue
├── data
│ ├── modified.json
│ ├── nav.json
│ └── team.json
├── entry-client.js
├── entry-server.js
├── examples
│ ├── accessibility
│ │ ├── list-item-group.vue
│ │ ├── menu.vue
│ │ └── select-list-item.vue
│ ├── border-radius
│ │ ├── misc-pill-and-circle.vue
│ │ ├── misc-removing-border-radius.vue
│ │ ├── misc-rounding-all-corners.vue
│ │ ├── misc-rounding-by-corner.vue
│ │ └── misc-rounding-by-side.vue
│ ├── color
│ │ ├── classes.vue
│ │ └── text-classes.vue
│ ├── display
│ │ ├── display-block.vue
│ │ ├── display-inline.vue
│ │ ├── hidden-elements.vue
│ │ ├── print.vue
│ │ └── visibility.vue
│ ├── elevation
│ │ ├── prop-dynamic.vue
│ │ └── usage.vue
│ ├── flex
│ │ ├── flex-align-content-around.vue
│ │ ├── flex-align-content-between.vue
│ │ ├── flex-align-content-center.vue
│ │ ├── flex-align-content-end.vue
│ │ ├── flex-align-content-start.vue
│ │ ├── flex-align-self.vue
│ │ ├── flex-align.vue
│ │ ├── flex-column.vue
│ │ ├── flex-direction.vue
│ │ ├── flex-justify.vue
│ │ ├── flex-nowrap.vue
│ │ ├── flex-order.vue
│ │ ├── flex-wrap-reverse.vue
│ │ ├── flex-wrap.vue
│ │ ├── flexbox-inline.vue
│ │ ├── flexbox.vue
│ │ ├── grow-shrink.vue
│ │ ├── margins-align-items.vue
│ │ └── margins.vue
│ ├── float
│ │ ├── classes.vue
│ │ └── responsive.vue
│ ├── grid
│ │ ├── misc-column-wrapping.vue
│ │ ├── misc-equal-width-columns.vue
│ │ ├── misc-grow-and-shrink.vue
│ │ ├── misc-margin-helpers.vue
│ │ ├── misc-nested-grid.vue
│ │ ├── misc-one-column-width.vue
│ │ ├── misc-row-and-column-breakpoints.vue
│ │ ├── misc-spacer.vue
│ │ ├── misc-unique-layouts.vue
│ │ ├── misc-variable-content.vue
│ │ ├── prop-align.vue
│ │ ├── prop-breakpoint-sizing.vue
│ │ ├── prop-justify.vue
│ │ ├── prop-no-gutters.vue
│ │ ├── prop-offset-breakpoint.vue
│ │ ├── prop-offset.vue
│ │ ├── prop-order-first-and-last.vue
│ │ ├── prop-order.vue
│ │ └── usage.vue
│ ├── scroll
│ │ └── usage.vue
│ ├── spacing
│ │ ├── breakpoints.vue
│ │ ├── horizontal.vue
│ │ ├── negative-margin.vue
│ │ └── usage.vue
│ ├── text-and-typography
│ │ ├── font-emphasis.vue
│ │ ├── text-align.vue
│ │ ├── text-break.vue
│ │ ├── text-decoration.vue
│ │ ├── text-justify.vue
│ │ ├── text-no-wrap.vue
│ │ ├── text-opacity.vue
│ │ ├── text-rtl.vue
│ │ ├── text-transform.vue
│ │ ├── text-truncate.vue
│ │ ├── typography-breakpoints.vue
│ │ └── typography.vue
│ ├── theme
│ │ └── misc-provider.vue
│ ├── transitions
│ │ ├── misc-expand-x.vue
│ │ ├── misc-fab.vue
│ │ ├── misc-fade.vue
│ │ ├── misc-scale.vue
│ │ ├── misc-scroll-x.vue
│ │ ├── misc-scroll-y.vue
│ │ ├── misc-slide-x.vue
│ │ ├── misc-slide-y.vue
│ │ ├── misc-todo.vue
│ │ ├── prop-custom-origin.vue
│ │ └── usage.vue
│ ├── v-alert
│ │ ├── misc-twitter.vue
│ │ ├── prop-border.vue
│ │ ├── prop-colored-border.vue
│ │ ├── prop-dense.vue
│ │ ├── prop-dismissible.vue
│ │ ├── prop-icon.vue
│ │ ├── prop-outlined.vue
│ │ ├── prop-prominent.vue
│ │ ├── prop-text.vue
│ │ ├── prop-transition.vue
│ │ ├── prop-type.vue
│ │ └── usage.vue
│ ├── v-app-bar
│ │ ├── misc-app-bar-nav.vue
│ │ ├── misc-menu.vue
│ │ ├── prop-collapse.vue
│ │ ├── prop-dense.vue
│ │ ├── prop-elevate-on-scroll.vue
│ │ ├── prop-hide.vue
│ │ ├── prop-img-fade.vue
│ │ ├── prop-img.vue
│ │ ├── prop-inverted-scroll.vue
│ │ ├── prop-prominent.vue
│ │ ├── prop-scroll-threshold.vue
│ │ └── usage.vue
│ ├── v-autocomplete
│ │ ├── misc-api-search.vue
│ │ ├── misc-asynchronous-items.vue
│ │ ├── misc-cryptocurrency-selector.vue
│ │ ├── misc-state-selector.vue
│ │ ├── prop-dense.vue
│ │ ├── prop-filter.vue
│ │ ├── slot-item-and-selection.vue
│ │ └── usage.vue
│ ├── v-avatar
│ │ ├── misc-advanced.vue
│ │ ├── misc-avatar-menu.vue
│ │ ├── misc-profile-card.vue
│ │ ├── prop-size.vue
│ │ ├── prop-tile.vue
│ │ ├── slot-default.vue
│ │ └── usage.vue
│ ├── v-badge
│ │ ├── misc-customization.vue
│ │ ├── misc-dynamic.vue
│ │ ├── misc-hover.vue
│ │ ├── misc-tabs.vue
│ │ └── usage.vue
│ ├── v-banner
│ │ ├── event-icon-click.vue
│ │ ├── misc-two-line.vue
│ │ ├── prop-single-line.vue
│ │ ├── slot-actions.vue
│ │ ├── slot-icon.vue
│ │ └── usage.vue
│ ├── v-bottom-navigation
│ │ ├── prop-color.vue
│ │ ├── prop-grow.vue
│ │ ├── prop-hide-on-scroll.vue
│ │ ├── prop-horizontal.vue
│ │ ├── prop-scroll-threshold.vue
│ │ ├── prop-shift.vue
│ │ ├── prop-toggle.vue
│ │ └── usage.vue
│ ├── v-bottom-sheet
│ │ ├── misc-open-in-list.vue
│ │ ├── misc-player.vue
│ │ ├── prop-inset.vue
│ │ ├── prop-model.vue
│ │ ├── prop-persistent.vue
│ │ └── usage.vue
│ ├── v-breadcrumbs
│ │ ├── prop-divider.vue
│ │ ├── prop-large.vue
│ │ ├── slot-icon-dividers.vue
│ │ ├── slot-item.vue
│ │ └── usage.vue
│ ├── v-btn-fab
│ │ ├── misc-display-animation.vue
│ │ ├── misc-lateral-screens.vue
│ │ ├── misc-small.vue
│ │ ├── misc-speed-dial.vue
│ │ └── usage.vue
│ ├── v-btn-toggle
│ │ ├── misc-toolbar.vue
│ │ ├── misc-wysiwyg.vue
│ │ ├── prop-mandatory.vue
│ │ ├── prop-multiple.vue
│ │ ├── prop-rounded.vue
│ │ └── usage.vue
│ ├── v-btn
│ │ ├── misc-raised.vue
│ │ ├── prop-block.vue
│ │ ├── prop-depressed.vue
│ │ ├── prop-floating.vue
│ │ ├── prop-icon.vue
│ │ ├── prop-loaders.vue
│ │ ├── prop-outlined.vue
│ │ ├── prop-rounded.vue
│ │ ├── prop-sizing.vue
│ │ ├── prop-text.vue
│ │ ├── prop-tile.vue
│ │ └── usage.vue
│ ├── v-calendar
│ │ ├── event-click.vue
│ │ ├── misc-drag-and-drop.vue
│ │ ├── prop-type-category.vue
│ │ ├── prop-type-day.vue
│ │ ├── prop-type-week.vue
│ │ ├── slot-day-body.vue
│ │ ├── slot-day.vue
│ │ └── usage.vue
│ ├── v-card
│ │ ├── misc-content-wrapping.vue
│ │ ├── misc-custom-actions.vue
│ │ ├── misc-grids.vue
│ │ ├── misc-horizontal-cards.vue
│ │ ├── misc-information-card.vue
│ │ ├── misc-intermediate.vue
│ │ ├── misc-media-with-text.vue
│ │ ├── misc-twitter-card.vue
│ │ ├── misc-weather-card.vue
│ │ ├── prop-loading.vue
│ │ ├── prop-outlined.vue
│ │ └── usage.vue
│ ├── v-carousel
│ │ ├── prop-custom-icons.vue
│ │ ├── prop-custom-transition.vue
│ │ ├── prop-cycle.vue
│ │ ├── prop-hide-controls.vue
│ │ ├── prop-hide-delimiters.vue
│ │ ├── prop-model.vue
│ │ └── usage.vue
│ ├── v-checkbox
│ │ ├── misc-inline-textfield.vue
│ │ ├── prop-colors.vue
│ │ ├── prop-model-as-array.vue
│ │ ├── prop-model-as-boolean.vue
│ │ ├── prop-states.vue
│ │ ├── slot-label.vue
│ │ └── usage.vue
│ ├── v-chip-group
│ │ ├── misc-product-card.vue
│ │ ├── misc-toothbrush-card.vue
│ │ ├── prop-column.vue
│ │ ├── prop-filter.vue
│ │ ├── prop-mandatory.vue
│ │ ├── prop-multiple.vue
│ │ └── usage.vue
│ ├── v-chip
│ │ ├── event-action-chips.vue
│ │ ├── misc-custom-list.vue
│ │ ├── misc-expandable.vue
│ │ ├── misc-filtering.vue
│ │ ├── misc-in-selects.vue
│ │ ├── prop-closable.vue
│ │ ├── prop-colored.vue
│ │ ├── prop-draggable.vue
│ │ ├── prop-filter.vue
│ │ ├── prop-label.vue
│ │ ├── prop-no-ripple.vue
│ │ ├── prop-outlined.vue
│ │ ├── prop-sizes.vue
│ │ ├── slot-icon.vue
│ │ └── usage.vue
│ ├── v-click-outside
│ │ ├── option-close-on-outside-click.vue
│ │ └── usage.vue
│ ├── v-color-picker
│ │ ├── prop-canvas.vue
│ │ ├── prop-elevation.vue
│ │ ├── prop-inputs.vue
│ │ ├── prop-model.vue
│ │ ├── prop-swatches.vue
│ │ └── usage.vue
│ ├── v-combobox
│ │ ├── misc-advanced.vue
│ │ ├── prop-dense.vue
│ │ ├── prop-multiple.vue
│ │ ├── slot-no-data.vue
│ │ └── usage.vue
│ ├── v-data-iterator
│ │ ├── misc-filter.vue
│ │ ├── slot-default.vue
│ │ ├── slot-header-and-footer.vue
│ │ └── usage.vue
│ ├── v-data-table
│ │ ├── misc-crud.vue
│ │ ├── misc-edit-dialog.vue
│ │ ├── misc-expand.vue
│ │ ├── misc-external-paginate.vue
│ │ ├── misc-external-sort.vue
│ │ ├── misc-server-side-paginate-and-sort.vue
│ │ ├── prop-custom-filter.vue
│ │ ├── prop-dense.vue
│ │ ├── prop-filterable.vue
│ │ ├── prop-footer-props.vue
│ │ ├── prop-grouping.vue
│ │ ├── prop-hide-header-footer.vue
│ │ ├── prop-loading.vue
│ │ ├── prop-multi-sort.vue
│ │ ├── prop-row-selection.vue
│ │ ├── prop-search.vue
│ │ ├── slot-header.vue
│ │ ├── slot-item.vue
│ │ ├── slot-main.vue
│ │ ├── slot-simple-checkbox.vue
│ │ ├── usage.vue
│ │ └── virtualized.vue
│ ├── v-date-picker-month
│ │ ├── misc-dialog-and-menu.vue
│ │ ├── misc-internationalization.vue
│ │ ├── misc-orientation.vue
│ │ ├── prop-allowed-months.vue
│ │ ├── prop-colors.vue
│ │ ├── prop-icons.vue
│ │ ├── prop-multiple.vue
│ │ ├── prop-readonly.vue
│ │ ├── prop-show-current.vue
│ │ ├── prop-width.vue
│ │ └── usage.vue
│ ├── v-date-picker
│ │ ├── event-button-events.vue
│ │ ├── event-events.vue
│ │ ├── misc-birthday.vue
│ │ ├── misc-dialog-and-menu.vue
│ │ ├── misc-formatting-external-libraries.vue
│ │ ├── misc-formatting.vue
│ │ ├── misc-internationalization.vue
│ │ ├── misc-orientation.vue
│ │ ├── prop-allowed-dates.vue
│ │ ├── prop-colors.vue
│ │ ├── prop-elevation.vue
│ │ ├── prop-icons.vue
│ │ ├── prop-multiple.vue
│ │ ├── prop-picker-date.vue
│ │ ├── prop-range.vue
│ │ ├── prop-readonly.vue
│ │ ├── prop-show-current.vue
│ │ ├── prop-width.vue
│ │ └── usage.vue
│ ├── v-dialog
│ │ ├── misc-form.vue
│ │ ├── misc-loader.vue
│ │ ├── misc-nesting.vue
│ │ ├── misc-overflowed.vue
│ │ ├── misc-without-activator.vue
│ │ ├── prop-fullscreen.vue
│ │ ├── prop-modal.vue
│ │ ├── prop-scrollable.vue
│ │ └── usage.vue
│ ├── v-divider
│ │ ├── misc-portrait-view.vue
│ │ ├── misc-subheaders.vue
│ │ ├── prop-inset.vue
│ │ ├── prop-vertical-inset.vue
│ │ ├── prop-vertical.vue
│ │ └── usage.vue
│ ├── v-expansion-panels
│ │ ├── misc-advanced.vue
│ │ ├── misc-custom-icons.vue
│ │ ├── prop-accordion.vue
│ │ ├── prop-disabled.vue
│ │ ├── prop-focusable.vue
│ │ ├── prop-inset.vue
│ │ ├── prop-model.vue
│ │ ├── prop-popout.vue
│ │ ├── prop-readonly.vue
│ │ └── usage.vue
│ ├── v-file-input
│ │ ├── misc-complex-selection.vue
│ │ ├── prop-accept.vue
│ │ ├── prop-chips.vue
│ │ ├── prop-counter.vue
│ │ ├── prop-dense.vue
│ │ ├── prop-multiple.vue
│ │ ├── prop-prepend-icon.vue
│ │ ├── prop-show-size.vue
│ │ ├── prop-validation.vue
│ │ ├── slot-selection.vue
│ │ └── usage.vue
│ ├── v-footer
│ │ ├── misc-company-footer.vue
│ │ ├── misc-indigo-footer.vue
│ │ ├── misc-teal-footer.vue
│ │ ├── prop-absolute.vue
│ │ ├── prop-padless.vue
│ │ └── usage.vue
│ ├── v-form
│ │ ├── misc-validation-with-submit-and-clear.vue
│ │ ├── misc-vee-validate.vue
│ │ ├── misc-vuelidate.vue
│ │ ├── prop-rules.vue
│ │ └── usage.vue
│ ├── v-hover
│ │ ├── misc-hover-list.vue
│ │ ├── misc-transition.vue
│ │ ├── prop-disabled.vue
│ │ ├── prop-open-and-close-delay.vue
│ │ └── usage.vue
│ ├── v-icon
│ │ ├── event-click.vue
│ │ ├── misc-buttons.vue
│ │ ├── misc-font-awesome.vue
│ │ ├── misc-md.vue
│ │ ├── misc-mdi-svg.vue
│ │ ├── prop-color.vue
│ │ └── usage.vue
│ ├── v-img
│ │ ├── misc-grid.vue
│ │ ├── prop-aspect-ratio.vue
│ │ ├── prop-contain.vue
│ │ ├── prop-gradient.vue
│ │ ├── prop-max-height.vue
│ │ ├── slot-placeholder.vue
│ │ └── usage.vue
│ ├── v-input
│ │ ├── event-slot-clicks.vue
│ │ ├── prop-error-count.vue
│ │ ├── prop-error.vue
│ │ ├── prop-hide-details.vue
│ │ ├── prop-hint.vue
│ │ ├── prop-loading.vue
│ │ ├── prop-rules.vue
│ │ ├── prop-success.vue
│ │ ├── slot-append-and-prepend.vue
│ │ └── usage.vue
│ ├── v-intersect
│ │ ├── prop-options.vue
│ │ └── usage.vue
│ ├── v-item-group
│ │ ├── misc-chips.vue
│ │ ├── misc-selection.vue
│ │ ├── prop-active-class.vue
│ │ ├── prop-mandatory.vue
│ │ ├── prop-multiple.vue
│ │ └── usage.vue
│ ├── v-lazy
│ │ └── usage.vue
│ ├── v-list-item-group
│ │ ├── misc-flat-list.vue
│ │ ├── misc-selection-controls.vue
│ │ ├── prop-active-class.vue
│ │ ├── prop-mandatory.vue
│ │ ├── prop-multiple.vue
│ │ └── usage.vue
│ ├── v-list
│ │ ├── misc-action-and-item-groups.vue
│ │ ├── misc-action-stack.vue
│ │ ├── misc-card-list.vue
│ │ ├── misc-simple-avatar-list.vue
│ │ ├── misc-single-line-list.vue
│ │ ├── misc-subheadings-and-dividers.vue
│ │ ├── prop-dense.vue
│ │ ├── prop-disabled.vue
│ │ ├── prop-flat.vue
│ │ ├── prop-nav.vue
│ │ ├── prop-rounded.vue
│ │ ├── prop-shaped.vue
│ │ ├── prop-sub-group.vue
│ │ ├── prop-three-line.vue
│ │ ├── prop-two-line-and-subheader.vue
│ │ ├── slot-expansion-lists.vue
│ │ └── usage.vue
│ ├── v-menu
│ │ ├── misc-custom-transition.vue
│ │ ├── misc-popover.vue
│ │ ├── misc-use-in-components.vue
│ │ ├── prop-absolute-without-activator.vue
│ │ ├── prop-absolute.vue
│ │ ├── prop-close-on-click.vue
│ │ ├── prop-close-on-content-click.vue
│ │ ├── prop-disabled.vue
│ │ ├── prop-offset-x.vue
│ │ ├── prop-offset-y.vue
│ │ ├── prop-open-on-hover.vue
│ │ ├── prop-rounded.vue
│ │ ├── slot-activator-and-tooltip.vue
│ │ └── usage.vue
│ ├── v-mutate
│ │ ├── option-modifiers.vue
│ │ └── usage.vue
│ ├── v-navigation-drawer
│ │ ├── misc-colored.vue
│ │ ├── misc-combined.vue
│ │ ├── prop-bottom-drawer.vue
│ │ ├── prop-expand-on-hover.vue
│ │ ├── prop-images.vue
│ │ ├── prop-mini-variant.vue
│ │ ├── prop-permanent-and-floating.vue
│ │ ├── prop-right.vue
│ │ ├── prop-temporary.vue
│ │ └── usage.vue
│ ├── v-overflow-btn
│ │ ├── prop-counter.vue
│ │ ├── prop-dense.vue
│ │ ├── prop-disabled.vue
│ │ ├── prop-editable.vue
│ │ ├── prop-filled.vue
│ │ ├── prop-hint.vue
│ │ ├── prop-loading.vue
│ │ ├── prop-menu-props.vue
│ │ ├── prop-readonly.vue
│ │ ├── prop-segmented.vue
│ │ └── usage.vue
│ ├── v-overlay
│ │ ├── misc-advanced.vue
│ │ ├── misc-loader.vue
│ │ ├── prop-absolute.vue
│ │ ├── prop-opacity.vue
│ │ ├── prop-z-index.vue
│ │ └── usage.vue
│ ├── v-pagination
│ │ ├── prop-circle.vue
│ │ ├── prop-disabled.vue
│ │ ├── prop-icons.vue
│ │ ├── prop-length.vue
│ │ ├── prop-total-visible.vue
│ │ └── usage.vue
│ ├── v-parallax
│ │ ├── misc-content.vue
│ │ ├── misc-custom-height.vue
│ │ └── usage.vue
│ ├── v-progress-circular
│ │ ├── prop-color.vue
│ │ ├── prop-indeterminate.vue
│ │ ├── prop-rotate.vue
│ │ ├── prop-size-and-width.vue
│ │ └── usage.vue
│ ├── v-progress-linear
│ │ ├── misc-determinate.vue
│ │ ├── misc-file-loader.vue
│ │ ├── misc-toolbar-loader.vue
│ │ ├── prop-buffer-value.vue
│ │ ├── prop-colors.vue
│ │ ├── prop-indeterminate.vue
│ │ ├── prop-query.vue
│ │ ├── prop-reverse.vue
│ │ ├── prop-rounded.vue
│ │ ├── prop-stream.vue
│ │ ├── prop-striped.vue
│ │ ├── slot-default.vue
│ │ └── usage.vue
│ ├── v-radio-group
│ │ ├── prop-colors.vue
│ │ ├── prop-direction.vue
│ │ ├── prop-mandatory.vue
│ │ ├── slot-label.vue
│ │ └── usage.vue
│ ├── v-range-slider
│ │ ├── prop-disabled.vue
│ │ ├── prop-min-and-max.vue
│ │ ├── prop-step.vue
│ │ ├── prop-vertical.vue
│ │ ├── slot-thumb-label.vue
│ │ └── usage.vue
│ ├── v-rating
│ │ ├── misc-advanced.vue
│ │ ├── misc-card.vue
│ │ ├── prop-color.vue
│ │ ├── prop-half-increments.vue
│ │ ├── prop-length.vue
│ │ ├── prop-size.vue
│ │ ├── slot-item.vue
│ │ └── usage.vue
│ ├── v-resize
│ │ └── usage.vue
│ ├── v-responsive
│ │ └── usage.vue
│ ├── v-ripple
│ │ ├── misc-custom-color.vue
│ │ ├── misc-ripple-in-components.vue
│ │ ├── option-center.vue
│ │ └── usage.vue
│ ├── v-scroll
│ │ ├── option-self.vue
│ │ ├── option-target.vue
│ │ └── usage.vue
│ ├── v-select
│ │ ├── prop-custom-text-and-value.vue
│ │ ├── prop-dense.vue
│ │ ├── prop-disabled.vue
│ │ ├── prop-icons.vue
│ │ ├── prop-light.vue
│ │ ├── prop-menu-props.vue
│ │ ├── prop-multiple.vue
│ │ ├── prop-readonly.vue
│ │ ├── slot-append-and-prepend-item.vue
│ │ ├── slot-selection.vue
│ │ └── usage.vue
│ ├── v-sheet
│ │ ├── prop-color.vue
│ │ ├── prop-elevation.vue
│ │ ├── prop-rounded.vue
│ │ └── usage.vue
│ ├── v-simple-table
│ │ ├── prop-dark.vue
│ │ ├── prop-dense.vue
│ │ ├── prop-fixed-header.vue
│ │ ├── prop-height.vue
│ │ └── usage.vue
│ ├── v-skeleton-loader
│ │ ├── misc-boilerplate.vue
│ │ ├── misc-implementation.vue
│ │ └── usage.vue
│ ├── v-slide-group
│ │ ├── misc-pseudo-carousel.vue
│ │ ├── prop-active-class.vue
│ │ ├── prop-center-active.vue
│ │ ├── prop-custom-icons.vue
│ │ ├── prop-mandatory.vue
│ │ ├── prop-multiple.vue
│ │ └── usage.vue
│ ├── v-slider
│ │ ├── prop-colors.vue
│ │ ├── prop-disabled.vue
│ │ ├── prop-discrete.vue
│ │ ├── prop-icons.vue
│ │ ├── prop-inverse-label.vue
│ │ ├── prop-min-and-max.vue
│ │ ├── prop-readonly.vue
│ │ ├── prop-step.vue
│ │ ├── prop-thumb.vue
│ │ ├── prop-ticks.vue
│ │ ├── prop-validation.vue
│ │ ├── prop-vertical.vue
│ │ ├── slot-append-and-prepend.vue
│ │ ├── slot-append-text-field.vue
│ │ └── usage.vue
│ ├── v-snackbar
│ │ ├── prop-multi-line.vue
│ │ ├── prop-timeout.vue
│ │ ├── prop-variants.vue
│ │ ├── prop-vertical.vue
│ │ └── usage.vue
│ ├── v-sparkline
│ │ ├── misc-custom-labels.vue
│ │ ├── misc-dashboard-card.vue
│ │ ├── misc-heart-rate.vue
│ │ ├── prop-fill.vue
│ │ └── usage.vue
│ ├── v-stepper
│ │ ├── misc-alternate-error.vue
│ │ ├── misc-dynamic.vue
│ │ ├── misc-editable.vue
│ │ ├── misc-error.vue
│ │ ├── misc-horizontal.vue
│ │ ├── misc-linear.vue
│ │ ├── misc-non-editable.vue
│ │ ├── misc-optional.vue
│ │ ├── misc-vertical-error.vue
│ │ ├── prop-alternate-label.vue
│ │ ├── prop-non-linear.vue
│ │ ├── prop-vertical.vue
│ │ └── usage.vue
│ ├── v-subheader
│ │ ├── misc-grid.vue
│ │ ├── misc-menu.vue
│ │ ├── misc-social-media.vue
│ │ ├── prop-inset.vue
│ │ └── usage.vue
│ ├── v-switch
│ │ ├── prop-colors.vue
│ │ ├── prop-flat.vue
│ │ ├── prop-inset.vue
│ │ ├── prop-model-as-array.vue
│ │ ├── prop-model-as-boolean.vue
│ │ ├── prop-states.vue
│ │ ├── slot-label.vue
│ │ └── usage.vue
│ ├── v-system-bar
│ │ ├── prop-color.vue
│ │ ├── prop-lights-out.vue
│ │ ├── prop-themes.vue
│ │ ├── prop-window.vue
│ │ └── usage.vue
│ ├── v-tabs
│ │ ├── misc-content.vue
│ │ ├── misc-desktop.vue
│ │ ├── misc-dynamic-height.vue
│ │ ├── misc-dynamic.vue
│ │ ├── misc-overflow-to-menu.vue
│ │ ├── misc-pagination.vue
│ │ ├── misc-tab-items.vue
│ │ ├── prop-align-with-title.vue
│ │ ├── prop-center-active.vue
│ │ ├── prop-fixed-tabs.vue
│ │ ├── prop-grow.vue
│ │ ├── prop-icons-and-text.vue
│ │ ├── prop-icons.vue
│ │ ├── prop-right.vue
│ │ ├── prop-vertical.vue
│ │ └── usage.vue
│ ├── v-text-field
│ │ ├── event-icons.vue
│ │ ├── misc-custom-validation.vue
│ │ ├── misc-full-width-with-counter.vue
│ │ ├── misc-password.vue
│ │ ├── prop-clearable.vue
│ │ ├── prop-counter.vue
│ │ ├── prop-custom-colors.vue
│ │ ├── prop-dense.vue
│ │ ├── prop-disabled-and-readonly.vue
│ │ ├── prop-filled.vue
│ │ ├── prop-hide-details.vue
│ │ ├── prop-hint.vue
│ │ ├── prop-icon.vue
│ │ ├── prop-outlined.vue
│ │ ├── prop-prefixes-and-suffixes.vue
│ │ ├── prop-shaped.vue
│ │ ├── prop-single-line.vue
│ │ ├── prop-solo.vue
│ │ ├── prop-validation.vue
│ │ ├── slot-icons.vue
│ │ ├── slot-label.vue
│ │ ├── slot-progress.vue
│ │ └── usage.vue
│ ├── v-textarea
│ │ ├── misc-signup-form.vue
│ │ ├── prop-auto-grow.vue
│ │ ├── prop-background-color.vue
│ │ ├── prop-browser-autocomplete.vue
│ │ ├── prop-clearable.vue
│ │ ├── prop-counter.vue
│ │ ├── prop-icons.vue
│ │ ├── prop-no-resize.vue
│ │ ├── prop-rows.vue
│ │ └── usage.vue
│ ├── v-time-picker
│ │ ├── misc-dialog-and-menu.vue
│ │ ├── prop-allowed-times.vue
│ │ ├── prop-ampm-in-title.vue
│ │ ├── prop-color.vue
│ │ ├── prop-disabled.vue
│ │ ├── prop-elevation.vue
│ │ ├── prop-format.vue
│ │ ├── prop-no-title.vue
│ │ ├── prop-range.vue
│ │ ├── prop-readonly.vue
│ │ ├── prop-scrollable.vue
│ │ ├── prop-use-seconds.vue
│ │ ├── prop-width.vue
│ │ └── usage.vue
│ ├── v-timeline
│ │ ├── misc-advanced.vue
│ │ ├── prop-color.vue
│ │ ├── prop-dense.vue
│ │ ├── prop-icon-dots.vue
│ │ ├── prop-reverse.vue
│ │ ├── prop-small.vue
│ │ ├── slot-icon.vue
│ │ ├── slot-opposite.vue
│ │ ├── slot-timeline-item-default.vue
│ │ └── usage.vue
│ ├── v-toolbar
│ │ ├── misc-contextual-action-bar.vue
│ │ ├── misc-flexible-and-card.vue
│ │ ├── misc-variations.vue
│ │ ├── prop-background.vue
│ │ ├── prop-collapse.vue
│ │ ├── prop-dense.vue
│ │ ├── prop-extended.vue
│ │ ├── prop-extension-height.vue
│ │ ├── prop-floating-with-search.vue
│ │ ├── prop-light-and-dark.vue
│ │ ├── prop-prominent.vue
│ │ └── usage.vue
│ ├── v-tooltip
│ │ ├── prop-alignment.vue
│ │ ├── prop-visibility.vue
│ │ └── usage.vue
│ ├── v-touch
│ │ └── usage.vue
│ ├── v-treeview
│ │ ├── misc-search-and-filter.vue
│ │ ├── misc-selectable-icons.vue
│ │ ├── playground.vue
│ │ ├── prop-activatable.vue
│ │ ├── prop-color.vue
│ │ ├── prop-dense.vue
│ │ ├── prop-hoverable.vue
│ │ ├── prop-item-disabled.vue
│ │ ├── prop-load-children.vue
│ │ ├── prop-open-all.vue
│ │ ├── prop-rounded.vue
│ │ ├── prop-selectable.vue
│ │ ├── prop-selected-color.vue
│ │ ├── prop-selection-type.vue
│ │ ├── prop-shaped.vue
│ │ ├── slot-append-and-label.vue
│ │ └── usage.vue
│ ├── v-virtual-scroller
│ │ ├── misc-user-directory.vue
│ │ ├── prop-bench.vue
│ │ └── usage.vue
│ ├── v-window
│ │ ├── misc-account-creation.vue
│ │ ├── misc-onboarding.vue
│ │ ├── prop-reverse.vue
│ │ ├── prop-vertical.vue
│ │ └── usage.vue
│ └── whiteframes
│ │ ├── base.vue
│ │ ├── constrained.vue
│ │ ├── extended-toolbar.vue
│ │ ├── inbox.vue
│ │ ├── side-navigation.vue
│ │ ├── system-bar.vue
│ │ └── three-column.vue
├── i18n
│ ├── index.js
│ ├── locales.js
│ ├── messages
│ │ ├── .gitignore
│ │ └── en.json
│ └── util.js
├── index.template.html
├── layouts
│ ├── default
│ │ ├── AppBar.vue
│ │ ├── BecomeASponsor.vue
│ │ ├── Default.vue
│ │ ├── Drawer.vue
│ │ ├── DrawerPrepend.vue
│ │ ├── FabToTop.vue
│ │ ├── List.vue
│ │ ├── ListGroup.vue
│ │ ├── ListItem.vue
│ │ ├── ListSubGroup.vue
│ │ ├── Search.vue
│ │ ├── Snackbar.vue
│ │ ├── Toc.vue
│ │ ├── View.vue
│ │ └── settings
│ │ │ ├── DrawerGrouping.vue
│ │ │ ├── DrawerPrepend.vue
│ │ │ ├── Group.vue
│ │ │ ├── Heading.vue
│ │ │ ├── Rtl.vue
│ │ │ ├── Settings.vue
│ │ │ └── Theme.vue
│ ├── home
│ │ ├── AppBar.vue
│ │ ├── Home.vue
│ │ └── View.vue
│ └── locale
│ │ └── Locale.vue
├── main.js
├── mixins
│ ├── ad.js
│ ├── codepen.js
│ └── density.js
├── pages
│ └── en
│ │ ├── beginners-guide
│ │ └── pre-amble.md
│ │ ├── components
│ │ ├── alerts.md
│ │ ├── api-explorer.md
│ │ ├── app-bars.md
│ │ ├── application.md
│ │ ├── aspect-ratios.md
│ │ ├── autocompletes.md
│ │ ├── avatars.md
│ │ ├── badges.md
│ │ ├── banners.md
│ │ ├── bottom-navigation.md
│ │ ├── bottom-sheets.md
│ │ ├── breadcrumbs.md
│ │ ├── button-groups.md
│ │ ├── buttons.md
│ │ ├── calendars.md
│ │ ├── cards.md
│ │ ├── carousels.md
│ │ ├── checkboxes.md
│ │ ├── chip-groups.md
│ │ ├── chips.md
│ │ ├── color-pickers.md
│ │ ├── combobox.md
│ │ ├── data-iterators.md
│ │ ├── data-tables.md
│ │ ├── date-pickers-month.md
│ │ ├── date-pickers.md
│ │ ├── dialogs.md
│ │ ├── dividers.md
│ │ ├── expansion-panels.md
│ │ ├── file-inputs.md
│ │ ├── floating-action-buttons.md
│ │ ├── footer.md
│ │ ├── forms.md
│ │ ├── grids.md
│ │ ├── hover.md
│ │ ├── icons.md
│ │ ├── images.md
│ │ ├── inputs.md
│ │ ├── item-groups.md
│ │ ├── lazy.md
│ │ ├── list-item-groups.md
│ │ ├── lists.md
│ │ ├── menus.md
│ │ ├── navigation-drawers.md
│ │ ├── overflow-btns.md
│ │ ├── overlays.md
│ │ ├── paginations.md
│ │ ├── parallax.md
│ │ ├── progress-circular.md
│ │ ├── progress-linear.md
│ │ ├── radio-buttons.md
│ │ ├── range-sliders.md
│ │ ├── ratings.md
│ │ ├── selects.md
│ │ ├── sheets.md
│ │ ├── simple-tables.md
│ │ ├── skeleton-loaders.md
│ │ ├── slide-groups.md
│ │ ├── sliders.md
│ │ ├── snackbars.md
│ │ ├── sparklines.md
│ │ ├── steppers.md
│ │ ├── subheaders.md
│ │ ├── switches.md
│ │ ├── system-bars.md
│ │ ├── tabs.md
│ │ ├── text-fields.md
│ │ ├── textareas.md
│ │ ├── time-pickers.md
│ │ ├── timelines.md
│ │ ├── toolbars.md
│ │ ├── tooltips.md
│ │ ├── treeview.md
│ │ ├── virtual-scroller.md
│ │ └── windows.md
│ │ ├── customization
│ │ ├── breakpoints.md
│ │ ├── global-config.md
│ │ ├── icons.md
│ │ ├── internationalization.md
│ │ ├── presets.md
│ │ ├── rtl.md
│ │ ├── sass-variables.md
│ │ ├── scrolling.md
│ │ └── theme.md
│ │ ├── directives
│ │ ├── click-outside.md
│ │ ├── intersect.md
│ │ ├── mutate.md
│ │ ├── resize.md
│ │ ├── ripple.md
│ │ ├── scroll.md
│ │ └── touch.md
│ │ ├── getting-started
│ │ ├── accessibility.md
│ │ ├── browser-support.md
│ │ ├── contributing.md
│ │ ├── installation.md
│ │ ├── release-notes.md
│ │ ├── treeshaking.md
│ │ ├── unit-testing.md
│ │ ├── upgrade-guide.md
│ │ └── whiteframes.md
│ │ ├── home.md
│ │ ├── introduction
│ │ ├── code-of-conduct.md
│ │ ├── frequently-asked-questions.md
│ │ ├── long-term-support.md
│ │ ├── meet-the-team.md
│ │ ├── roadmap.md
│ │ ├── security-disclosure.md
│ │ ├── sponsors-and-backers.md
│ │ └── why-vuetify.md
│ │ ├── professional-support
│ │ ├── consulting.md
│ │ └── enterprise.md
│ │ ├── resources
│ │ ├── jobs-for-vue.md
│ │ ├── made-with-vuetify.md
│ │ └── themes.md
│ │ └── styles
│ │ ├── border-radius.md
│ │ ├── colors.md
│ │ ├── content.md
│ │ ├── css-reset.md
│ │ ├── display.md
│ │ ├── elevation.md
│ │ ├── flex.md
│ │ ├── float.md
│ │ ├── spacing.md
│ │ ├── text-and-typography.md
│ │ └── transitions.md
├── plugins
│ ├── app.js
│ ├── cosmicjs.js
│ ├── index.js
│ ├── pwa-events.js
│ ├── vue-cookies.js
│ ├── vue-meta.js
│ ├── vuex-pathify.js
│ └── webfontloader.js
├── registerServiceWorker.js
├── router
│ ├── 301.json
│ ├── index.js
│ └── scroll-behavior.js
├── service-worker.js
├── store
│ ├── index.js
│ └── modules
│ │ ├── ads.js
│ │ ├── app.js
│ │ ├── index.js
│ │ ├── jobs.js
│ │ ├── messages.js
│ │ ├── pages.js
│ │ ├── pwa.js
│ │ ├── snackbar.js
│ │ ├── sponsors.js
│ │ ├── team.js
│ │ └── user.js
├── styles
│ └── overrides.sass
├── util
│ ├── date.js
│ ├── globals.js
│ ├── helpers.js
│ ├── metadata.js
│ ├── routes.js
│ └── tables.js
├── views
│ ├── Documentation.vue
│ ├── Home.vue
│ ├── Whiteframes.vue
│ └── errors
│ │ └── 404.vue
└── vuetify
│ ├── icons.js
│ └── index.js
├── vercel.json
├── vue.config.js
└── yarn.lock
/.browserslistrc:
--------------------------------------------------------------------------------
1 | > 1%
2 | last 2 versions
3 | not dead
4 |
--------------------------------------------------------------------------------
/.editorconfig:
--------------------------------------------------------------------------------
1 | [*.{js,jsx,ts,tsx,vue,json}]
2 | indent_style = space
3 | indent_size = 2
4 | trim_trailing_whitespace = true
5 | insert_final_newline = true
6 |
--------------------------------------------------------------------------------
/.env.example:
--------------------------------------------------------------------------------
1 | # Development
2 | EN_LOCALE_ONLY=true
3 | PORT=8080
4 |
5 | # Cosmic.js
6 | VUE_APP_COSMIC_BUCKET_READ_KEY=
7 | VUE_APP_COSMIC_BUCKET_SLUG=
8 | VUE_APP_COSMIC_BUCKET_WRITE_KEY=
9 |
--------------------------------------------------------------------------------
/.github/workflows/crowdin-uploads.yml:
--------------------------------------------------------------------------------
1 | name: Crowdin Uploads
2 |
3 | on:
4 | push:
5 | branches:
6 | - 'master'
7 | paths:
8 | - 'src/i18n/messages/en.json'
9 | - 'src/pages/en/**'
10 | - '.github/workflows/crowdin-uploads.yml'
11 |
12 | env:
13 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
14 | CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID }}
15 | CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }}
16 | CROWDIN_BRANCH: docs-next
17 |
18 | jobs:
19 | upload-to-crowdin:
20 | runs-on: ubuntu-latest
21 |
22 | steps:
23 |
24 | - name: Checkout
25 | uses: actions/checkout@v2
26 |
27 | - name: Upload
28 | uses: crowdin/github-action@1.0.9
29 | with:
30 | config: crowdin.yml
31 | crowdin_branch_name: ${{ env.CROWDIN_BRANCH }}
32 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /dist
4 | /src/api
5 |
6 | # local env files
7 | .env.local
8 | .env.*.local
9 |
10 | # Log files
11 | npm-debug.log*
12 | yarn-debug.log*
13 | yarn-error.log*
14 |
15 | # Editor directories and files
16 | .idea
17 | .vscode
18 | *.suo
19 | *.ntvs*
20 | *.njsproj
21 | *.sln
22 | *.sw?
23 |
24 | .vercel
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # docs-next
2 |
3 | 
4 |
5 | 
6 |
7 | 
8 |
9 | ## Project setup
10 |
11 | ```bash
12 | yarn install
13 | ```
14 |
15 | ### Compiles and hot-reloads for development
16 |
17 | ```bash
18 | yarn serve
19 | ```
20 |
21 | ### Compiles and minifies for production
22 |
23 | ```bash
24 | yarn build
25 | ```
26 |
27 | ### Lints and fixes files
28 |
29 | ```bash
30 | yarn lint
31 | ```
32 |
33 | ### Customize configuration
34 |
35 | See [Configuration Reference](https://cli.vuejs.org/config/).
36 |
--------------------------------------------------------------------------------
/babel.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | presets: [
3 | '@vue/cli-plugin-babel/preset',
4 | ],
5 | }
6 |
--------------------------------------------------------------------------------
/build/markdown-it.js:
--------------------------------------------------------------------------------
1 | // Imports
2 | const rules = require('./rules')
3 | const md = require('markdown-it')({
4 | html: true,
5 | linkify: true,
6 | typographer: true,
7 | })
8 | .use(require('markdown-it-attrs'))
9 | .use(require('markdown-it-anchor'), {
10 | permalink: true,
11 | permalinkSymbol: '',
12 | permalinkClass: '',
13 | slugify: str => encodeURIComponent(String(str).trim().toLowerCase()).replace(/%\d{2}/g, '-'),
14 | })
15 | .use(require('markdown-it-prism'))
16 | .use(require('markdown-it-header-sections'))
17 |
18 | for (const key in rules) rules[key](md)
19 |
20 | module.exports = { md }
21 |
--------------------------------------------------------------------------------
/build/sitemap.js:
--------------------------------------------------------------------------------
1 | const SitemapPlugin = require('sitemap-webpack-plugin').default
2 | const routes = require('./generate-routes')
3 |
4 | const paths = []
5 | for (const route of routes) {
6 | paths.push({
7 | path: route.fullPath,
8 | lastmod: new Date(),
9 | priority: route.fullPath === '/' ? '1.0' : '0.8',
10 | changefreq: 'daily',
11 | })
12 | }
13 |
14 | module.exports = new SitemapPlugin('https://vuetifyjs.com', paths)
15 |
--------------------------------------------------------------------------------
/crowdin.yml:
--------------------------------------------------------------------------------
1 | project_id_env: CROWDIN_PROJECT_ID
2 | api_token_env: CROWDIN_PERSONAL_TOKEN
3 | project_identifier: vuetify
4 | preserve_hierarchy: true
5 | files:
6 | - source: src/pages/en/**/*.md
7 | translation: src/pages/%locale%/**/%original_file_name%
8 | - source: src/i18n/messages/en.json
9 | translation: src/i18n/messages/%locale%.json
10 |
--------------------------------------------------------------------------------
/plugins/@vuetify/ssg.js:
--------------------------------------------------------------------------------
1 | // Globals
2 | const { IS_SERVER } = require('../../src/util/globals')
3 |
4 | module.exports = api => {
5 | api.chainWebpack(require(`./config/${IS_SERVER ? 'server' : 'client'}`))
6 | }
7 |
--------------------------------------------------------------------------------
/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vuetifyjs/docs-next/1e941766f3f698f6edbb654c79b0d5437dbbfb1c/public/favicon.ico
--------------------------------------------------------------------------------
/public/img/icons/android-chrome-192x192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vuetifyjs/docs-next/1e941766f3f698f6edbb654c79b0d5437dbbfb1c/public/img/icons/android-chrome-192x192.png
--------------------------------------------------------------------------------
/public/img/icons/android-chrome-512x512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vuetifyjs/docs-next/1e941766f3f698f6edbb654c79b0d5437dbbfb1c/public/img/icons/android-chrome-512x512.png
--------------------------------------------------------------------------------
/public/img/icons/android-chrome-maskable-192x192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vuetifyjs/docs-next/1e941766f3f698f6edbb654c79b0d5437dbbfb1c/public/img/icons/android-chrome-maskable-192x192.png
--------------------------------------------------------------------------------
/public/img/icons/android-chrome-maskable-512x512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vuetifyjs/docs-next/1e941766f3f698f6edbb654c79b0d5437dbbfb1c/public/img/icons/android-chrome-maskable-512x512.png
--------------------------------------------------------------------------------
/public/img/icons/apple-touch-icon-114x114.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vuetifyjs/docs-next/1e941766f3f698f6edbb654c79b0d5437dbbfb1c/public/img/icons/apple-touch-icon-114x114.png
--------------------------------------------------------------------------------
/public/img/icons/apple-touch-icon-120x120.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vuetifyjs/docs-next/1e941766f3f698f6edbb654c79b0d5437dbbfb1c/public/img/icons/apple-touch-icon-120x120.png
--------------------------------------------------------------------------------
/public/img/icons/apple-touch-icon-144x144.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vuetifyjs/docs-next/1e941766f3f698f6edbb654c79b0d5437dbbfb1c/public/img/icons/apple-touch-icon-144x144.png
--------------------------------------------------------------------------------
/public/img/icons/apple-touch-icon-152x152.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vuetifyjs/docs-next/1e941766f3f698f6edbb654c79b0d5437dbbfb1c/public/img/icons/apple-touch-icon-152x152.png
--------------------------------------------------------------------------------
/public/img/icons/apple-touch-icon-180x180.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vuetifyjs/docs-next/1e941766f3f698f6edbb654c79b0d5437dbbfb1c/public/img/icons/apple-touch-icon-180x180.png
--------------------------------------------------------------------------------
/public/img/icons/apple-touch-icon-57x57.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vuetifyjs/docs-next/1e941766f3f698f6edbb654c79b0d5437dbbfb1c/public/img/icons/apple-touch-icon-57x57.png
--------------------------------------------------------------------------------
/public/img/icons/apple-touch-icon-60x60.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vuetifyjs/docs-next/1e941766f3f698f6edbb654c79b0d5437dbbfb1c/public/img/icons/apple-touch-icon-60x60.png
--------------------------------------------------------------------------------
/public/img/icons/apple-touch-icon-72x72.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vuetifyjs/docs-next/1e941766f3f698f6edbb654c79b0d5437dbbfb1c/public/img/icons/apple-touch-icon-72x72.png
--------------------------------------------------------------------------------
/public/img/icons/apple-touch-icon-76x76.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vuetifyjs/docs-next/1e941766f3f698f6edbb654c79b0d5437dbbfb1c/public/img/icons/apple-touch-icon-76x76.png
--------------------------------------------------------------------------------
/public/img/icons/apple-touch-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vuetifyjs/docs-next/1e941766f3f698f6edbb654c79b0d5437dbbfb1c/public/img/icons/apple-touch-icon.png
--------------------------------------------------------------------------------
/public/img/icons/favicon-16x16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vuetifyjs/docs-next/1e941766f3f698f6edbb654c79b0d5437dbbfb1c/public/img/icons/favicon-16x16.png
--------------------------------------------------------------------------------
/public/img/icons/favicon-32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vuetifyjs/docs-next/1e941766f3f698f6edbb654c79b0d5437dbbfb1c/public/img/icons/favicon-32x32.png
--------------------------------------------------------------------------------
/public/img/icons/mstile-144x144.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vuetifyjs/docs-next/1e941766f3f698f6edbb654c79b0d5437dbbfb1c/public/img/icons/mstile-144x144.png
--------------------------------------------------------------------------------
/public/img/icons/mstile-150x150.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vuetifyjs/docs-next/1e941766f3f698f6edbb654c79b0d5437dbbfb1c/public/img/icons/mstile-150x150.png
--------------------------------------------------------------------------------
/public/img/icons/mstile-310x150.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vuetifyjs/docs-next/1e941766f3f698f6edbb654c79b0d5437dbbfb1c/public/img/icons/mstile-310x150.png
--------------------------------------------------------------------------------
/public/img/icons/mstile-310x310.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vuetifyjs/docs-next/1e941766f3f698f6edbb654c79b0d5437dbbfb1c/public/img/icons/mstile-310x310.png
--------------------------------------------------------------------------------
/public/img/icons/mstile-70x70.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vuetifyjs/docs-next/1e941766f3f698f6edbb654c79b0d5437dbbfb1c/public/img/icons/mstile-70x70.png
--------------------------------------------------------------------------------
/public/robots.txt:
--------------------------------------------------------------------------------
1 | User-agent: *
2 | Disallow:
3 |
--------------------------------------------------------------------------------
/public/search.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Vuetify
4 | Vuetify documentation
5 | UTF-8
6 | https://next.vuetifyjs.com/favicon.ico
7 |
8 |
9 |
--------------------------------------------------------------------------------
/src/App.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
17 |
--------------------------------------------------------------------------------
/src/assets/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vuetifyjs/docs-next/1e941766f3f698f6edbb654c79b0d5437dbbfb1c/src/assets/logo.png
--------------------------------------------------------------------------------
/src/components/Alert.vue:
--------------------------------------------------------------------------------
1 |
2 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
29 |
30 |
38 |
--------------------------------------------------------------------------------
/src/components/ad/Discovery.vue:
--------------------------------------------------------------------------------
1 |
19 |
--------------------------------------------------------------------------------
/src/components/ad/Entry.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
8 |
9 |
10 |
11 |
12 |
19 |
--------------------------------------------------------------------------------
/src/components/ad/Exit.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
10 |
17 |
--------------------------------------------------------------------------------
/src/components/ad/Inline.vue:
--------------------------------------------------------------------------------
1 |
2 |
7 | {{ current.metadata.description }}
8 |
9 |
10 |
11 |
21 |
22 |
31 |
--------------------------------------------------------------------------------
/src/components/ad/Random.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
26 |
--------------------------------------------------------------------------------
/src/components/api/ApiTable.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
10 |
15 |
--------------------------------------------------------------------------------
/src/components/app/Btn.vue:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
10 |
14 |
15 |
16 |
17 |
24 |
--------------------------------------------------------------------------------
/src/components/app/Caption.vue:
--------------------------------------------------------------------------------
1 |
25 |
--------------------------------------------------------------------------------
/src/components/app/ChevronDown.vue:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
9 |
12 |
--------------------------------------------------------------------------------
/src/components/app/Divider.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
8 |
--------------------------------------------------------------------------------
/src/components/app/Figure.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
9 |
14 |
15 |
16 |
17 |
32 |
--------------------------------------------------------------------------------
/src/components/app/Headline.vue:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
10 |
34 |
--------------------------------------------------------------------------------
/src/components/app/Image.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
9 |
10 |
11 |
18 |
--------------------------------------------------------------------------------
/src/components/app/Sheet.vue:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
11 |
12 |
13 |
16 |
--------------------------------------------------------------------------------
/src/components/app/Title.vue:
--------------------------------------------------------------------------------
1 |
21 |
--------------------------------------------------------------------------------
/src/components/doc/BecomeSponsor.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 | $mdiGithub
8 |
9 | {{ $i18n.t('become-a-sponsor') }}
10 |
11 |
12 |
13 |
18 |
--------------------------------------------------------------------------------
/src/components/doc/ConsultingCalendar.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
11 |
12 |
13 |
14 |
19 |
20 |
21 |
22 |
25 |
--------------------------------------------------------------------------------
/src/components/doc/VerticalDivider.vue:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
10 |
13 |
--------------------------------------------------------------------------------
/src/components/doc/links/DiscordLink.vue:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
11 |
14 |
--------------------------------------------------------------------------------
/src/components/doc/links/GithubLink.vue:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
11 |
14 |
--------------------------------------------------------------------------------
/src/components/doc/links/GuideLink.vue:
--------------------------------------------------------------------------------
1 |
2 |
12 |
13 |
14 |
17 |
--------------------------------------------------------------------------------
/src/components/doc/links/SponsorLink.vue:
--------------------------------------------------------------------------------
1 |
2 |
18 |
22 |
23 |
24 |
25 |
28 |
--------------------------------------------------------------------------------
/src/components/doc/links/StoreLink.vue:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
11 |
14 |
--------------------------------------------------------------------------------
/src/components/doc/links/TeamLink.vue:
--------------------------------------------------------------------------------
1 |
2 |
12 |
13 |
14 |
17 |
--------------------------------------------------------------------------------
/src/components/doc/support/tidelift/TideliftImg.vue:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
10 |
13 |
--------------------------------------------------------------------------------
/src/components/doc/toggles/SearchToggle.vue:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
9 |
34 |
--------------------------------------------------------------------------------
/src/components/doc/toggles/SettingsToggle.vue:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
10 |
20 |
--------------------------------------------------------------------------------
/src/components/examples/ExampleMissing.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
11 |
12 |
16 |
--------------------------------------------------------------------------------
/src/components/home/VuetifyLogo.vue:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
11 |
18 |
--------------------------------------------------------------------------------
/src/components/related-pages/RelatedPages.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 |
11 |
12 |
13 |
14 |
15 |
25 |
--------------------------------------------------------------------------------
/src/components/related-pages/RelatedTopics.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Related Topics
5 |
6 |
7 |
8 |
9 |
12 |
--------------------------------------------------------------------------------
/src/components/vuetify/Logo.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
12 |
13 |
14 |
15 |
22 |
--------------------------------------------------------------------------------
/src/components/vuetify/LogoAlt.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
13 |
14 |
15 |
16 |
23 |
--------------------------------------------------------------------------------
/src/examples/accessibility/select-list-item.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
11 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/src/examples/border-radius/misc-pill-and-circle.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 | Pill
9 |
10 |
11 |
16 | Circle
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/src/examples/border-radius/misc-removing-border-radius.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
9 |
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/src/examples/border-radius/misc-rounding-all-corners.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
10 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/src/examples/border-radius/misc-rounding-by-corner.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
11 |
16 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/src/examples/border-radius/misc-rounding-by-side.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
10 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/src/examples/color/classes.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 | Lorem ipsum
4 |
5 |
6 |
--------------------------------------------------------------------------------
/src/examples/color/text-classes.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 | Lorem ipsum dolor sit amet, inciderint definitionem est ea, explicari prodesset eam id. Mazim doctus vix an. Amet causae probatus nec ex .
4 |
5 |
6 |
--------------------------------------------------------------------------------
/src/examples/display/display-block.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | d-block
5 |
6 |
7 | d-block
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/examples/display/display-inline.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | d-inline
5 |
6 |
7 | d-inline
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/examples/display/hidden-elements.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 | Title
4 |
5 |
10 |
11 | {{ item.text }}
12 |
13 |
14 |
15 |
16 |
17 |
36 |
--------------------------------------------------------------------------------
/src/examples/display/print.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Screen Only (Hide on print only)
5 |
6 |
7 | Print Only (Hide on screen only)
8 |
9 |
10 | Hide up to large on screen, but always show on print
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/src/examples/display/visibility.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | hide on screens wider than lg
5 |
6 |
7 | hide on screens smaller than lg
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/examples/elevation/prop-dynamic.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
10 | Prop based elevation
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
24 | Class based elevation
25 |
26 |
27 |
28 |
29 |
30 |
--------------------------------------------------------------------------------
/src/examples/elevation/usage.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
9 |
14 |
20 |
21 |
22 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/src/examples/flex/flex-align-content-around.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 |
17 | Flex item
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/src/examples/flex/flex-align-content-between.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 |
17 | Flex item
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/src/examples/flex/flex-align-content-center.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 |
17 | Flex item
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/src/examples/flex/flex-align-content-end.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 |
17 | Flex item
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/src/examples/flex/flex-align-content-start.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 |
17 | Flex item
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/src/examples/flex/flex-align.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
12 |
19 | Flex item
20 |
21 |
22 |
23 |
24 |
25 |
38 |
--------------------------------------------------------------------------------
/src/examples/flex/flex-column.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
11 | Flex item {{ n }}
12 |
13 |
14 |
15 |
22 | Flex item {{ n }}
23 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/src/examples/flex/flex-direction.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
16 | Flex item {{ n }}
17 |
18 |
19 |
25 |
32 | Flex item {{ n }}
33 |
34 |
35 |
36 |
37 |
--------------------------------------------------------------------------------
/src/examples/flex/flex-justify.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
11 |
18 | Flex item
19 |
20 |
21 |
22 |
23 |
24 |
37 |
--------------------------------------------------------------------------------
/src/examples/flex/flex-nowrap.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 |
17 | Flex item
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/src/examples/flex/flex-order.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
14 | First flex item
15 |
16 |
21 | Second flex item
22 |
23 |
28 | Third flex item
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/src/examples/flex/flex-wrap-reverse.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
16 | Flex item
17 |
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/src/examples/flex/flex-wrap.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
16 | Flex item
17 |
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/src/examples/flex/flexbox-inline.vue:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 | I'm an inline flexbox container!
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/src/examples/flex/flexbox.vue:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 | I'm a flexbox container!
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/src/examples/float/classes.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Float left on all viewport sizes
5 |
6 |
7 |
8 | Float right on all viewport sizes
9 |
10 |
11 |
12 | Don't float on all viewport sizes
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/src/examples/float/responsive.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Float left on viewports sized SM (small) or wider
5 |
6 |
7 |
8 | Float left on viewports sized MD (medium) or wider
9 |
10 |
11 |
12 | Float left on viewports sized LG (large) or wider
13 |
14 |
15 |
16 | Float left on viewports sized XL (extra-large) or wider
17 |
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/src/examples/grid/misc-equal-width-columns.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
11 | Column
12 |
13 |
14 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/src/examples/grid/misc-grow-and-shrink.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
11 |
16 | col
17 |
18 |
19 |
20 |
21 |
22 |
27 |
32 | col-{{ n === 1 ? 8 : 4 }}
33 |
34 |
35 |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/src/examples/grid/prop-breakpoint-sizing.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
13 |
18 | {{ k }} of {{ n + 1 }}
19 |
20 |
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/src/examples/grid/prop-justify.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
13 |
18 | One of two columns
19 |
20 |
21 |
22 |
23 |
24 |
25 |
38 |
--------------------------------------------------------------------------------
/src/examples/grid/prop-no-gutters.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
9 |
14 | .col-12 .col-sm-6 .col-md-8
15 |
16 |
17 |
21 |
26 | .col-6 .col-md-4
27 |
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/src/examples/grid/prop-order-first-and-last.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
10 | First, but last
11 |
12 |
13 |
14 |
19 | Second, but unordered
20 |
21 |
22 |
23 |
28 | Third, but first
29 |
30 |
31 |
32 |
33 |
34 |
--------------------------------------------------------------------------------
/src/examples/grid/prop-order.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
10 | First, but unordered
11 |
12 |
13 |
14 |
19 | Second, but last
20 |
21 |
22 |
23 |
28 | Third, but first
29 |
30 |
31 |
32 |
33 |
34 |
--------------------------------------------------------------------------------
/src/examples/grid/usage.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
10 |
15 | One of three columns
16 |
17 |
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/src/examples/spacing/breakpoints.vue:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 | Adjust screen size to see spacing changes
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/src/examples/spacing/horizontal.vue:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 | Centered
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/src/examples/spacing/negative-margin.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
15 |
16 |
17 |
18 |
25 |
--------------------------------------------------------------------------------
/src/examples/text-and-typography/font-emphasis.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Black text.
5 |
6 |
7 | Bold text.
8 |
9 |
10 | Medium weight text.
11 |
12 |
13 | Normal weight text.
14 |
15 |
16 | Light weight text.
17 |
18 |
19 | Thin weight text.
20 |
21 |
22 | Italic text.
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/src/examples/text-and-typography/text-break.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Random TEXT cApitaLization
5 |
6 |
10 | SUBDERMATOGLYPHIC
11 |
12 |
13 |
14 |
15 |
19 |
--------------------------------------------------------------------------------
/src/examples/text-and-typography/text-decoration.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
Non-underlined link
7 |
8 |
9 | Line-through text
10 |
11 |
12 |
13 | Overline text
14 |
15 |
16 |
17 | Underline text
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/src/examples/text-and-typography/text-justify.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 | Morbi mattis ullamcorper velit. Donec orci lectus, aliquam ut, faucibus non, euismod id, nulla. Fusce convallis metus id felis luctus adipiscing. Aenean massa. Vestibulum purus quam, scelerisque ut, mollis sed, nonummy id, metus.
4 |
5 | Nulla consequat massa quis enim. Praesent venenatis metus at tortor pulvinar varius. Donec venenatis vulputate lorem. Phasellus accumsan cursus velit. Pellentesque ut neque.
6 |
7 |
8 |
--------------------------------------------------------------------------------
/src/examples/text-and-typography/text-no-wrap.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 | This text should overflow the parent.
7 |
8 |
9 |
10 |
15 |
--------------------------------------------------------------------------------
/src/examples/text-and-typography/text-opacity.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | High-emphasis has an opacity of 87%.
5 |
6 |
7 | Medium-emphasis text and hint text have opacities of 60%.
8 |
9 |
10 | Disabled text has an opacity of 38%.
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/src/examples/text-and-typography/text-transform.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Lowercased text.
5 |
6 |
7 | Uppercased text.
8 |
9 |
10 | CapiTaliZed text.
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/src/examples/text-and-typography/text-truncate.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Suspendisse faucibus, nunc et pellentesque egestas, lacus ante convallis tellus.
7 |
8 |
9 |
10 |
11 |
15 | Suspendisse faucibus, nunc et pellentesque egestas, lacus ante convallis tellus.
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/src/examples/transitions/misc-fab.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
11 | Fab Transition
12 |
13 |
14 |
15 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/src/examples/transitions/misc-fade.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
11 | Fade Transition
12 |
13 |
14 |
15 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/src/examples/transitions/misc-scale.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
11 | Scale Transition
12 |
13 |
14 |
15 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/src/examples/transitions/prop-custom-origin.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
8 |
14 | Scale Transition
15 |
16 |
17 |
18 | {}"
22 | >
23 |
24 |
25 |
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/src/examples/v-alert/misc-twitter.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
12 | You've got 5 new updates on your timeline!.
13 |
14 |
15 |
16 |
21 | Reset Alert
22 |
23 |
24 |
25 |
26 |
27 |
36 |
--------------------------------------------------------------------------------
/src/examples/v-alert/prop-border.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 | I'm an alert with a top border and red color
9 |
10 |
15 | I'm an alert with a right border and blue-grey color
16 |
17 |
22 | I'm an alert with a bottom border and pink color
23 |
24 |
29 | I'm an alert with a border left type info
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/src/examples/v-alert/prop-type.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | I'm a success alert.
5 |
6 |
7 |
8 | I'm an info alert.
9 |
10 |
11 |
12 | I'm a warning alert.
13 |
14 |
15 |
16 | I'm an error alert.
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/src/examples/v-app-bar/usage.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
10 |
33 |
--------------------------------------------------------------------------------
/src/examples/v-avatar/prop-size.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 | 36
8 |
9 |
10 |
14 | 48
15 |
16 |
17 |
21 | 62
22 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/src/examples/v-avatar/prop-tile.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
8 | mdi-alarm
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/src/examples/v-avatar/slot-default.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | mdi-account-circle
6 |
7 |
8 |
9 |
10 |
14 |
15 |
16 |
17 | CJ
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/src/examples/v-badge/misc-hover.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 |
11 |
15 | mdi-account
16 |
17 |
18 |
19 |
20 |
21 |
22 |
29 |
--------------------------------------------------------------------------------
/src/examples/v-badge/misc-tabs.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
9 |
13 | Item One
14 |
15 |
16 |
17 |
18 |
22 | Item Two
23 |
24 |
25 |
26 |
27 |
31 | Item Three
32 |
33 |
34 |
35 |
36 |
37 |
--------------------------------------------------------------------------------
/src/examples/v-banner/event-icon-click.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
11 | mdi-wifi-strength-alert-outline
12 |
13 | Unable to verify your Internet connection
14 |
15 |
16 |
20 | Connecting Settings
21 |
22 |
23 |
24 |
25 |
26 |
35 |
--------------------------------------------------------------------------------
/src/examples/v-banner/misc-two-line.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent cursus nec sem id malesuada.
4 | Curabitur lacinia sem et turpis euismod, eget elementum ex pretium.
5 |
6 |
10 | Dismiss
11 |
12 |
16 | Retry
17 |
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/src/examples/v-banner/slot-actions.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
12 | No Internet connection
13 |
14 |
19 | Dismiss
20 |
21 |
25 | Retry
26 |
27 |
28 |
29 |
30 |
31 |
38 |
--------------------------------------------------------------------------------
/src/examples/v-banner/usage.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 | A banner for use on desktop / mobile
8 |
9 |
10 |
11 |
12 |
37 |
--------------------------------------------------------------------------------
/src/examples/v-bottom-navigation/prop-color.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 | Recents
8 |
9 | mdi-history
10 |
11 |
12 |
13 | Favorites
14 |
15 | mdi-heart
16 |
17 |
18 |
19 | Nearby
20 |
21 | mdi-map-marker
22 |
23 |
24 |
25 |
26 |
31 |
--------------------------------------------------------------------------------
/src/examples/v-bottom-navigation/prop-grow.vue:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 | Recents
9 |
10 | mdi-history
11 |
12 |
13 |
14 | Favorites
15 |
16 | mdi-heart
17 |
18 |
19 |
20 | Nearby
21 |
22 | mdi-map-marker
23 |
24 |
25 |
26 |
27 |
32 |
--------------------------------------------------------------------------------
/src/examples/v-bottom-navigation/prop-horizontal.vue:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 | Recents
9 |
10 | mdi-history
11 |
12 |
13 |
14 | Favorites
15 |
16 | mdi-heart
17 |
18 |
19 |
20 | Nearby
21 |
22 | mdi-map-marker
23 |
24 |
25 |
26 |
27 |
32 |
--------------------------------------------------------------------------------
/src/examples/v-bottom-navigation/usage.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Recent
5 |
6 | mdi-history
7 |
8 |
9 |
10 | Favorites
11 |
12 | mdi-heart
13 |
14 |
15 |
16 | Nearby
17 |
18 | mdi-map-marker
19 |
20 |
21 |
22 |
23 |
28 |
--------------------------------------------------------------------------------
/src/examples/v-breadcrumbs/prop-divider.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
8 |
12 |
13 |
14 |
15 |
38 |
--------------------------------------------------------------------------------
/src/examples/v-breadcrumbs/prop-large.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
9 |
10 |
11 |
12 |
35 |
--------------------------------------------------------------------------------
/src/examples/v-btn/misc-raised.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 | Normal
7 |
8 | Primary
9 |
10 |
11 | Error
12 |
13 |
14 | Disabled
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/src/examples/v-btn/prop-block.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 | Block Button
4 |
5 |
6 |
--------------------------------------------------------------------------------
/src/examples/v-btn/prop-depressed.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 | Normal
8 |
9 |
13 | Primary
14 |
15 |
19 | Error
20 |
21 |
25 | Disabled
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/src/examples/v-btn/prop-outlined.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 | Outlined Button
9 |
10 |
16 | mdi-format-list-bulleted-square
17 |
18 |
25 | mdi-pencil
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/src/examples/v-btn/prop-rounded.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 | Rounded Button
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/src/examples/v-btn/prop-text.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 | Normal
8 |
9 |
13 | Primary
14 |
15 |
19 | Error
20 |
21 |
25 | Disabled
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/src/examples/v-btn/prop-tile.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
10 |
11 | mdi-pencil
12 |
13 | Edit
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/src/examples/v-card/misc-information-card.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 | Word of the Day
8 |
9 | be•nev•o•lent
10 |
11 | adjective
12 |
13 | well meaning and kindly.
14 | "a benevolent smile"
15 |
16 |
17 |
18 |
22 | Learn More
23 |
24 |
25 |
26 |
27 |
31 |
--------------------------------------------------------------------------------
/src/examples/v-checkbox/prop-model-as-array.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 | {{ selected }}
4 |
9 |
14 |
15 |
16 |
17 |
26 |
--------------------------------------------------------------------------------
/src/examples/v-checkbox/prop-model-as-boolean.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
11 |
12 |
13 |
14 |
24 |
--------------------------------------------------------------------------------
/src/examples/v-checkbox/usage.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
10 |
11 |
12 |
13 |
22 |
--------------------------------------------------------------------------------
/src/examples/v-chip/prop-colored.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
6 | Default
7 |
8 |
9 |
13 | Primary
14 |
15 |
16 |
20 | Secondary
21 |
22 |
23 |
28 | Red Chip
29 |
30 |
31 |
36 | Green Chip
37 |
38 |
39 |
40 |
--------------------------------------------------------------------------------
/src/examples/v-chip/prop-draggable.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 | Default
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/examples/v-chip/prop-no-ripple.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 | Default
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/examples/v-chip/prop-sizes.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 | x-small chip
8 |
9 |
10 |
14 | small chip
15 |
16 |
17 |
20 | Default
21 |
22 |
23 |
27 | large chip
28 |
29 |
30 |
34 | x-large chip
35 |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/src/examples/v-click-outside/usage.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
13 |
14 | {{ active ? 'Click Outside' : 'Click Me' }}
15 |
16 |
17 |
18 |
19 |
32 |
--------------------------------------------------------------------------------
/src/examples/v-color-picker/prop-canvas.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
11 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/src/examples/v-color-picker/prop-elevation.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
10 |
11 |
15 |
16 |
17 |
18 |
27 |
--------------------------------------------------------------------------------
/src/examples/v-color-picker/prop-inputs.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
11 |
15 |
16 |
21 |
22 |
23 |
24 |
25 |
33 |
--------------------------------------------------------------------------------
/src/examples/v-combobox/prop-dense.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
13 |
14 |
15 |
16 |
17 |
18 |
33 |
--------------------------------------------------------------------------------
/src/examples/v-data-table/prop-loading.vue:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
--------------------------------------------------------------------------------
/src/examples/v-date-picker-month/misc-internationalization.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
13 |
14 |
15 |
16 |
25 |
--------------------------------------------------------------------------------
/src/examples/v-date-picker-month/misc-orientation.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
12 |
13 |
14 |
15 |
25 |
--------------------------------------------------------------------------------
/src/examples/v-date-picker-month/prop-allowed-months.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
11 |
12 |
13 |
14 |
27 |
--------------------------------------------------------------------------------
/src/examples/v-date-picker-month/prop-colors.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
14 |
15 |
16 |
17 |
27 |
--------------------------------------------------------------------------------
/src/examples/v-date-picker-month/prop-icons.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 |
11 |
12 |
13 |
22 |
--------------------------------------------------------------------------------
/src/examples/v-date-picker-month/prop-multiple.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
9 |
10 |
11 |
18 |
--------------------------------------------------------------------------------
/src/examples/v-date-picker-month/prop-readonly.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
9 |
10 |
11 |
20 |
--------------------------------------------------------------------------------
/src/examples/v-date-picker-month/prop-show-current.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
13 |
14 |
15 |
16 |
26 |
--------------------------------------------------------------------------------
/src/examples/v-date-picker-month/prop-width.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
15 |
16 |
17 |
18 |
25 |
--------------------------------------------------------------------------------
/src/examples/v-date-picker-month/usage.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
8 |
9 |
10 |
19 |
--------------------------------------------------------------------------------
/src/examples/v-date-picker/misc-internationalization.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
13 |
14 |
15 |
16 |
25 |
--------------------------------------------------------------------------------
/src/examples/v-date-picker/misc-orientation.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
11 |
12 |
13 |
14 |
24 |
--------------------------------------------------------------------------------
/src/examples/v-date-picker/prop-allowed-dates.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 |
11 |
12 |
13 |
24 |
--------------------------------------------------------------------------------
/src/examples/v-date-picker/prop-colors.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
12 |
13 |
14 |
15 |
25 |
--------------------------------------------------------------------------------
/src/examples/v-date-picker/prop-elevation.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
10 |
11 |
15 |
16 |
17 |
18 |
27 |
--------------------------------------------------------------------------------
/src/examples/v-date-picker/prop-icons.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
10 |
11 |
12 |
21 |
--------------------------------------------------------------------------------
/src/examples/v-date-picker/prop-range.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
11 |
12 |
16 |
22 | model: {{ dates }}
23 |
24 |
25 |
26 |
27 |
39 |
--------------------------------------------------------------------------------
/src/examples/v-date-picker/prop-readonly.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
8 |
9 |
10 |
19 |
--------------------------------------------------------------------------------
/src/examples/v-date-picker/prop-show-current.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
11 |
12 |
13 |
14 |
24 |
--------------------------------------------------------------------------------
/src/examples/v-date-picker/prop-width.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
13 |
14 |
15 |
16 |
23 |
--------------------------------------------------------------------------------
/src/examples/v-date-picker/usage.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
16 |
--------------------------------------------------------------------------------
/src/examples/v-divider/usage.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
26 |
--------------------------------------------------------------------------------
/src/examples/v-expansion-panels/prop-accordion.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 | Item
9 |
10 | Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/src/examples/v-expansion-panels/prop-focusable.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 | Item
8 |
9 | Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/src/examples/v-expansion-panels/prop-inset.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 | Item
9 |
10 | Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/src/examples/v-expansion-panels/prop-popout.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 | Item
9 |
10 | Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/src/examples/v-expansion-panels/usage.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
8 | Item
9 |
10 |
11 | Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/src/examples/v-file-input/prop-accept.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
--------------------------------------------------------------------------------
/src/examples/v-file-input/prop-chips.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/src/examples/v-file-input/prop-counter.vue:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
--------------------------------------------------------------------------------
/src/examples/v-file-input/prop-dense.vue:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
--------------------------------------------------------------------------------
/src/examples/v-file-input/prop-multiple.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
--------------------------------------------------------------------------------
/src/examples/v-file-input/prop-prepend-icon.vue:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
--------------------------------------------------------------------------------
/src/examples/v-file-input/prop-show-size.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
--------------------------------------------------------------------------------
/src/examples/v-file-input/prop-validation.vue:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
11 |
20 |
--------------------------------------------------------------------------------
/src/examples/v-file-input/slot-selection.vue:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
15 | {{ text }}
16 |
17 |
18 |
19 |
20 |
21 |
28 |
--------------------------------------------------------------------------------
/src/examples/v-footer/prop-absolute.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
11 | {{ new Date().getFullYear() }} — Vuetify
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/src/examples/v-footer/prop-padless.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 | {{ new Date().getFullYear() }} — Vuetify
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/examples/v-hover/prop-disabled.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
11 |
17 |
18 | Hover over me!
19 |
20 |
21 |
22 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/src/examples/v-icon/misc-font-awesome.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 | fas fa-lock
7 |
8 | fas fa-search
9 |
10 | fas fa-list
11 |
12 | fas fa-edit
13 |
14 | fas fa-tachometer-alt
15 |
16 | fas fa-circle-notch fa-spin
17 |
18 |
19 |
20 |
21 | {
22 | "css": ["https://use.fontawesome.com/releases/v5.1.0/css/all.css"]
23 | }
24 |
25 |
--------------------------------------------------------------------------------
/src/examples/v-img/prop-aspect-ratio.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 |
11 |
16 |
17 |
18 |
19 |
26 |
--------------------------------------------------------------------------------
/src/examples/v-img/slot-placeholder.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
10 |
15 |
19 |
20 |
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/src/examples/v-input/prop-error-count.vue:
--------------------------------------------------------------------------------
1 |
2 |
8 | Input
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/examples/v-input/prop-error.vue:
--------------------------------------------------------------------------------
1 |
2 |
7 | Input
8 |
9 |
10 |
--------------------------------------------------------------------------------
/src/examples/v-input/prop-hide-details.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
9 |
10 |
11 |
12 |
22 |
--------------------------------------------------------------------------------
/src/examples/v-input/prop-hint.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
12 | Input
13 |
14 |
15 |
16 |
17 |
30 |
--------------------------------------------------------------------------------
/src/examples/v-input/prop-loading.vue:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
--------------------------------------------------------------------------------
/src/examples/v-input/prop-rules.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
19 |
--------------------------------------------------------------------------------
/src/examples/v-input/prop-success.vue:
--------------------------------------------------------------------------------
1 |
2 |
7 | Input
8 |
9 |
10 |
--------------------------------------------------------------------------------
/src/examples/v-input/slot-append-and-prepend.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 | mdi-plus
8 |
9 |
13 | mdi-minus
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/src/examples/v-mutate/usage.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
8 | {{ content }}
9 |
10 | Total mutations: {{ mutations }}
11 |
12 |
13 |
14 |
28 |
--------------------------------------------------------------------------------
/src/examples/v-overflow-btn/prop-counter.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 |
11 |
12 |
13 |
26 |
--------------------------------------------------------------------------------
/src/examples/v-overflow-btn/prop-dense.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
10 |
11 |
12 |
19 |
--------------------------------------------------------------------------------
/src/examples/v-overflow-btn/prop-disabled.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 |
11 |
12 |
13 |
20 |
--------------------------------------------------------------------------------
/src/examples/v-overflow-btn/prop-editable.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 |
11 |
12 |
13 |
26 |
--------------------------------------------------------------------------------
/src/examples/v-overflow-btn/prop-filled.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 |
11 |
12 |
13 |
20 |
--------------------------------------------------------------------------------
/src/examples/v-overflow-btn/prop-hint.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
11 |
12 |
13 |
14 |
21 |
--------------------------------------------------------------------------------
/src/examples/v-overflow-btn/prop-loading.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 |
11 |
12 |
13 |
20 |
--------------------------------------------------------------------------------
/src/examples/v-overflow-btn/prop-menu-props.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 |
11 |
12 |
13 |
20 |
--------------------------------------------------------------------------------
/src/examples/v-overflow-btn/prop-readonly.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 |
11 |
12 |
13 |
20 |
--------------------------------------------------------------------------------
/src/examples/v-overflow-btn/prop-segmented.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 |
11 |
12 |
13 |
24 |
--------------------------------------------------------------------------------
/src/examples/v-overlay/misc-loader.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 | Launch Application
9 |
10 | mdi-open-in-new
11 |
12 |
13 |
14 |
15 |
19 |
20 |
21 |
22 |
23 |
38 |
--------------------------------------------------------------------------------
/src/examples/v-overlay/prop-z-index.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 | Show Overlay
9 |
10 |
11 |
15 |
20 | Hide Overlay
21 |
22 |
23 |
24 |
25 |
26 |
34 |
--------------------------------------------------------------------------------
/src/examples/v-overlay/usage.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 | Show Overlay
8 |
9 |
10 |
11 |
12 |
13 |
14 |
29 |
--------------------------------------------------------------------------------
/src/examples/v-pagination/prop-circle.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
9 |
10 |
11 |
20 |
--------------------------------------------------------------------------------
/src/examples/v-pagination/prop-disabled.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/src/examples/v-pagination/prop-icons.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
10 |
11 |
12 |
21 |
--------------------------------------------------------------------------------
/src/examples/v-pagination/prop-length.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
28 |
--------------------------------------------------------------------------------
/src/examples/v-pagination/prop-total-visible.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
9 |
10 |
11 |
20 |
--------------------------------------------------------------------------------
/src/examples/v-pagination/usage.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
8 |
9 |
10 |
19 |
--------------------------------------------------------------------------------
/src/examples/v-parallax/misc-content.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
10 |
14 |
15 | Vuetify.js
16 |
17 |
18 | Build your application today!
19 |
20 |
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/src/examples/v-parallax/misc-custom-height.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
--------------------------------------------------------------------------------
/src/examples/v-parallax/usage.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/src/examples/v-progress-circular/prop-color.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
8 |
12 |
13 |
17 |
18 |
22 |
23 |
27 |
28 |
29 |
30 |
35 |
--------------------------------------------------------------------------------
/src/examples/v-progress-circular/prop-indeterminate.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
8 |
12 |
13 |
17 |
18 |
22 |
23 |
27 |
28 |
29 |
30 |
35 |
--------------------------------------------------------------------------------
/src/examples/v-progress-circular/usage.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
20 |
--------------------------------------------------------------------------------
/src/examples/v-progress-linear/misc-determinate.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
8 |
12 |
13 |
17 |
18 |
22 |
23 |
24 |
25 |
34 |
--------------------------------------------------------------------------------
/src/examples/v-progress-linear/prop-colors.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
9 |
14 |
15 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/src/examples/v-progress-linear/prop-indeterminate.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
8 |
12 |
13 |
17 |
18 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/src/examples/v-progress-linear/prop-rounded.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
9 |
14 |
15 |
20 |
21 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/src/examples/v-progress-linear/prop-stream.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
9 |
15 |
16 |
21 |
22 |
28 |
29 |
30 |
--------------------------------------------------------------------------------
/src/examples/v-progress-linear/prop-striped.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
10 |
16 |
17 |
23 |
24 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/src/examples/v-progress-linear/usage.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/src/examples/v-radio-group/prop-mandatory.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 | {{ radios || 'null' }}
4 |
8 |
12 |
16 |
17 |
18 |
19 |
20 |
29 |
--------------------------------------------------------------------------------
/src/examples/v-radio-group/usage.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
13 |
14 |
15 |
16 |
17 |
26 |
--------------------------------------------------------------------------------
/src/examples/v-range-slider/prop-disabled.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
11 |
12 |
13 |
14 |
15 |
16 |
25 |
--------------------------------------------------------------------------------
/src/examples/v-range-slider/prop-step.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
10 |
11 |
12 |
21 |
--------------------------------------------------------------------------------
/src/examples/v-range-slider/prop-vertical.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
9 |
10 |
11 |
12 |
13 |
22 |
--------------------------------------------------------------------------------
/src/examples/v-rating/prop-length.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 |
17 |
18 | model:
19 |
20 | {{ rating }}
21 |
22 |
23 |
24 |
25 |
26 |
34 |
--------------------------------------------------------------------------------
/src/examples/v-rating/slot-item.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
10 | {{ props.isFilled ? 'mdi-star-circle' : 'mdi-star-circle-outline' }}
11 |
12 |
13 |
14 |
15 |
16 |
17 |
30 |
--------------------------------------------------------------------------------
/src/examples/v-resize/usage.vue:
--------------------------------------------------------------------------------
1 |
2 |
7 | Window Size
8 | {{ windowSize }}
9 |
10 |
11 |
12 |
32 |
--------------------------------------------------------------------------------
/src/examples/v-responsive/usage.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | This card will always be 16:9 (unless you put more stuff in it)
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/src/examples/v-ripple/misc-custom-color.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 | Item with "{{ color }}" class
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/src/examples/v-ripple/misc-ripple-in-components.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
9 | With ripple (default)
10 |
11 |
15 | Without ripple
16 |
17 |
21 | With centered ripple
22 |
23 |
27 | With red ripple
28 |
29 |
30 |
31 |
--------------------------------------------------------------------------------
/src/examples/v-ripple/option-center.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 | HTML element with centered ripple
7 |
8 |
9 |
--------------------------------------------------------------------------------
/src/examples/v-ripple/usage.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 | HTML element with v-ripple
7 |
8 |
9 |
--------------------------------------------------------------------------------
/src/examples/v-select/prop-disabled.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
9 |
10 |
11 |
12 |
13 |
20 |
--------------------------------------------------------------------------------
/src/examples/v-select/prop-menu-props.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
9 |
10 |
11 |
12 |
13 |
20 |
--------------------------------------------------------------------------------
/src/examples/v-select/prop-readonly.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
9 |
10 |
11 |
12 |
13 |
20 |
--------------------------------------------------------------------------------
/src/examples/v-select/slot-selection.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
10 |
11 | {{ item }}
12 |
13 |
17 | (+{{ value.length - 1 }} others)
18 |
19 |
20 |
21 |
22 |
23 |
24 |
32 |
--------------------------------------------------------------------------------
/src/examples/v-sheet/prop-elevation.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
10 |
14 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
33 |
--------------------------------------------------------------------------------
/src/examples/v-sheet/prop-rounded.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
10 |
14 |
15 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/src/examples/v-skeleton-loader/usage.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
11 |
12 |
13 |
14 |
22 |
--------------------------------------------------------------------------------
/src/examples/v-slide-group/usage.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
10 |
15 |
23 | Options {{ n }}
24 |
25 |
26 |
27 |
28 |
29 |
30 |
37 |
--------------------------------------------------------------------------------
/src/examples/v-slider/prop-disabled.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/src/examples/v-slider/prop-discrete.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
10 |
11 |
12 |
13 |
14 |
23 |
--------------------------------------------------------------------------------
/src/examples/v-slider/prop-inverse-label.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/src/examples/v-slider/prop-readonly.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/src/examples/v-slider/prop-step.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
10 |
11 |
12 |
21 |
--------------------------------------------------------------------------------
/src/examples/v-slider/prop-vertical.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
10 |
11 |
12 |
13 |
14 |
23 |
--------------------------------------------------------------------------------
/src/examples/v-snackbar/usage.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 | Open Snackbar
8 |
9 |
12 | {{ text }}
13 |
14 |
15 |
21 | Close
22 |
23 |
24 |
25 |
26 |
27 |
28 |
36 |
--------------------------------------------------------------------------------
/src/examples/v-stepper/misc-editable.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
9 | Select campaign settings
10 |
11 |
12 |
13 |
14 |
18 | Create an ad group
19 |
20 |
21 |
22 |
23 |
27 | Create an ad
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/src/examples/v-stepper/misc-error.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Ad unit details
6 |
7 |
8 |
9 |
10 |
14 | Ad templates
15 | Alert message
16 |
17 |
18 |
19 |
20 |
21 | Ad sizes
22 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/src/examples/v-stepper/misc-horizontal.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Select campaign settings
6 |
7 |
8 |
9 |
10 |
11 | Create an ad group
12 |
13 |
14 |
15 |
16 |
17 | Create an ad
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/src/examples/v-stepper/misc-non-editable.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 | Select campaign settings
9 |
10 |
11 |
12 |
13 |
14 | Create an ad group
15 |
16 |
17 |
18 |
19 |
20 | Create an ad
21 |
22 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/src/examples/v-subheader/usage.vue:
--------------------------------------------------------------------------------
1 |
2 | Subheader
3 |
4 |
--------------------------------------------------------------------------------
/src/examples/v-switch/prop-flat.vue:
--------------------------------------------------------------------------------
1 |
2 |
7 |
12 |
17 |
18 |
19 |
20 |
30 |
--------------------------------------------------------------------------------
/src/examples/v-switch/prop-inset.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
13 |
14 |
15 |
16 |
26 |
--------------------------------------------------------------------------------
/src/examples/v-switch/prop-model-as-array.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 | {{ people }}
4 |
9 |
14 |
15 |
16 |
17 |
26 |
--------------------------------------------------------------------------------
/src/examples/v-switch/prop-model-as-boolean.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
11 |
12 |
13 |
14 |
24 |
--------------------------------------------------------------------------------
/src/examples/v-switch/slot-label.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Turn on the progress:
11 |
12 |
13 |
14 |
15 |
16 |
25 |
--------------------------------------------------------------------------------
/src/examples/v-switch/usage.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
10 |
11 |
12 |
13 |
22 |
--------------------------------------------------------------------------------
/src/examples/v-system-bar/prop-window.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 | mdi-message
8 | 10 unread messages
9 |
10 | mdi-minus
11 | mdi-checkbox-blank-outline
12 | mdi-close
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/src/examples/v-tabs/misc-pagination.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
9 |
10 |
15 | Item {{ i }}
16 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/src/examples/v-tabs/prop-fixed-tabs.vue:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 | Option
9 |
10 |
11 | Another Selection
12 |
13 |
14 | Items
15 |
16 |
17 | Another Screen
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/src/examples/v-tabs/prop-icons.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 |
11 |
16 | Item {{ i }}
17 |
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/src/examples/v-tabs/usage.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 | Item One
4 | Item Two
5 | Item Three
6 |
7 |
8 |
--------------------------------------------------------------------------------
/src/examples/v-text-field/prop-filled.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
9 |
14 |
15 |
16 |
20 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
39 |
--------------------------------------------------------------------------------
/src/examples/v-text-field/prop-hide-details.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
9 |
10 |
11 |
12 |
22 |
--------------------------------------------------------------------------------
/src/examples/v-text-field/slot-label.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | What about icon here?
7 | find_in_page
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/src/examples/v-textarea/prop-auto-grow.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/src/examples/v-textarea/prop-background-color.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
9 |
14 |
15 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/src/examples/v-textarea/prop-browser-autocomplete.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/src/examples/v-textarea/prop-clearable.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/examples/v-textarea/prop-counter.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
10 |
11 |
12 |
20 |
--------------------------------------------------------------------------------
/src/examples/v-textarea/prop-no-resize.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
10 |
11 |
12 |
19 |
--------------------------------------------------------------------------------
/src/examples/v-time-picker/prop-ampm-in-title.vue:
--------------------------------------------------------------------------------
1 |
2 |
7 |
11 |
16 |
17 |
18 |
19 |
28 |
--------------------------------------------------------------------------------
/src/examples/v-time-picker/prop-color.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
12 |
13 |
14 |
15 |
24 |
--------------------------------------------------------------------------------
/src/examples/v-time-picker/prop-disabled.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
10 |
15 |
16 |
17 |
18 |
27 |
--------------------------------------------------------------------------------
/src/examples/v-time-picker/prop-elevation.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
10 |
11 |
15 |
16 |
17 |
18 |
27 |
--------------------------------------------------------------------------------
/src/examples/v-time-picker/prop-format.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
10 |
11 |
12 |
21 |
--------------------------------------------------------------------------------
/src/examples/v-time-picker/prop-no-title.vue:
--------------------------------------------------------------------------------
1 |
2 |
5 |
9 |
14 |
15 |
16 |
17 |
26 |
--------------------------------------------------------------------------------
/src/examples/v-time-picker/prop-range.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
Plan your event:
4 |
8 |
9 | Start:
10 |
14 |
15 |
16 | End:
17 |
21 |
22 |
23 |
24 |
25 |
26 |
36 |
--------------------------------------------------------------------------------
/src/examples/v-time-picker/prop-readonly.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
10 |
15 |
16 |
17 |
18 |
27 |
--------------------------------------------------------------------------------
/src/examples/v-time-picker/prop-scrollable.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
10 |
11 |
12 |
13 |
22 |
--------------------------------------------------------------------------------
/src/examples/v-time-picker/prop-use-seconds.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
10 |
15 |
16 |
17 |
18 |
27 |
--------------------------------------------------------------------------------
/src/examples/v-time-picker/prop-width.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
10 |
16 |
17 |
18 |
19 |
20 |
27 |
--------------------------------------------------------------------------------
/src/examples/v-timeline/slot-timeline-item-default.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
10 | Tus eu perfecto
11 |
12 |
13 |
14 | Lorem ipsum
15 |
16 |
17 | Lorem ipsum dolor sit amet, no nam oblique veritus. Commune scaevola imperdiet nec ut, sed euismod convenire principes at. Est et nobis iisque percipit, an vim zril disputando voluptatibus, vix an salutandi sententiae.
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/src/examples/v-timeline/usage.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 | timeline item
4 |
5 | timeline item
6 |
7 | timeline item
8 |
9 |
10 |
--------------------------------------------------------------------------------
/src/examples/v-toolbar/prop-background.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
8 |
9 |
10 | Vuetify
11 |
12 |
13 |
14 |
15 | mdi-export
16 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/src/examples/v-toolbar/prop-collapse.vue:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
10 | mdi-magnify
11 |
12 |
13 |
14 | mdi-dots-vertical
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/src/examples/v-toolbar/prop-dense.vue:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
10 |
11 | Title
12 |
13 |
14 |
15 |
16 | mdi-magnify
17 |
18 |
19 |
20 | mdi-heart
21 |
22 |
23 |
24 | mdi-dots-vertical
25 |
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/src/examples/v-toolbar/prop-extended.vue:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
10 |
11 | Title
12 |
13 |
14 |
15 |
16 | mdi-magnify
17 |
18 |
19 |
20 | mdi-heart
21 |
22 |
23 |
24 | mdi-dots-vertical
25 |
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/src/examples/v-toolbar/prop-extension-height.vue:
--------------------------------------------------------------------------------
1 |
2 |
8 |
12 |
13 |
14 | Title
15 |
16 |
17 |
18 |
19 | mdi-magnify
20 |
21 |
22 |
23 | mdi-heart
24 |
25 |
26 |
27 | mdi-dots-vertical
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/src/examples/v-toolbar/prop-floating-with-search.vue:
--------------------------------------------------------------------------------
1 |
2 |
8 |
12 |
17 |
18 |
19 | my_location
20 |
21 |
22 |
23 | mdi-dots-vertical
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/src/examples/v-toolbar/prop-prominent.vue:
--------------------------------------------------------------------------------
1 |
2 |
8 |
12 |
13 |
14 | Title
15 |
16 |
17 |
18 |
19 | mdi-magnify
20 |
21 |
22 |
23 | mdi-heart
24 |
25 |
26 |
27 | mdi-dots-vertical
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/src/examples/v-toolbar/usage.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
10 |
32 |
--------------------------------------------------------------------------------
/src/examples/v-touch/usage.vue:
--------------------------------------------------------------------------------
1 |
2 |
14 | Swipe Direction
15 | {{ swipeDirection }}
16 |
17 |
18 |
19 |
32 |
--------------------------------------------------------------------------------
/src/examples/whiteframes/base.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
7 |
8 |
9 |
10 |
11 |
12 |
13 | Application
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
27 |
--------------------------------------------------------------------------------
/src/examples/whiteframes/side-navigation.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
10 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
30 |
--------------------------------------------------------------------------------
/src/i18n/index.js:
--------------------------------------------------------------------------------
1 | // Imports
2 | import Vue from 'vue'
3 | import VueI18n from 'vue-i18n'
4 |
5 | // Messages
6 | import en from '@/i18n/messages/en.json'
7 |
8 | Vue.use(VueI18n)
9 |
10 | export function createI18n () {
11 | // const loadedLocales = ['en']
12 | const i18n = new VueI18n({
13 | locale: 'en',
14 | fallbackLocale: 'en',
15 | messages: { en },
16 | })
17 |
18 | return i18n
19 | }
20 |
--------------------------------------------------------------------------------
/src/i18n/locales.js:
--------------------------------------------------------------------------------
1 | module.exports = [
2 | {
3 | title: 'English',
4 | locale: 'en',
5 | },
6 | {
7 | title: 'Deutsch',
8 | locale: 'de-DE',
9 | alternate: 'de',
10 | },
11 | {
12 | title: 'Français',
13 | locale: 'fr-FR',
14 | alternate: 'fr',
15 | },
16 | {
17 | title: 'Русский',
18 | locale: 'ru-RU',
19 | alternate: 'ru',
20 | },
21 | {
22 | title: '简体中文',
23 | locale: 'zh-CN',
24 | alternate: 'zh-Hans',
25 | },
26 | {
27 | title: '한국어',
28 | locale: 'ko-KR',
29 | alternate: 'ko',
30 | },
31 | {
32 | title: '日本語',
33 | locale: 'ja-JP',
34 | alternate: 'ja',
35 | },
36 | {
37 | title: 'Help translate',
38 | locale: 'eo-UY',
39 | },
40 | ]
41 |
--------------------------------------------------------------------------------
/src/i18n/messages/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 | !en.json
--------------------------------------------------------------------------------
/src/i18n/util.js:
--------------------------------------------------------------------------------
1 | import locales from '@/i18n/locales'
2 |
3 | export function localeLookup (name) {
4 | return locales.find(l => [l.alternate, l.locale].includes(name)).locale
5 | }
6 |
--------------------------------------------------------------------------------
/src/layouts/default/BecomeASponsor.vue:
--------------------------------------------------------------------------------
1 |
2 |
10 |
11 |
12 |
15 |
--------------------------------------------------------------------------------
/src/layouts/default/DrawerPrepend.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
19 |
--------------------------------------------------------------------------------
/src/layouts/default/ListSubGroup.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
24 |
--------------------------------------------------------------------------------
/src/layouts/default/View.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
14 |
--------------------------------------------------------------------------------
/src/layouts/default/settings/DrawerPrepend.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
10 |
14 | $close
15 |
16 |
17 |
18 |
19 |
29 |
--------------------------------------------------------------------------------
/src/layouts/default/settings/Heading.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
10 |
11 | $close
12 |
13 |
14 |
15 |
16 |
19 |
--------------------------------------------------------------------------------
/src/layouts/home/Home.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
25 |
--------------------------------------------------------------------------------
/src/layouts/home/View.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
14 |
--------------------------------------------------------------------------------
/src/layouts/locale/Locale.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
29 |
--------------------------------------------------------------------------------
/src/mixins/density.js:
--------------------------------------------------------------------------------
1 | export default {
2 | name: 'density',
3 |
4 | props: {
5 | comfortable: Boolean,
6 | compact: Boolean,
7 | },
8 |
9 | computed: {
10 | normal () {
11 | return (
12 | !this.comfortable &&
13 | !this.compact
14 | )
15 | },
16 | },
17 | }
18 |
--------------------------------------------------------------------------------
/src/pages/en/components/api-explorer.md:
--------------------------------------------------------------------------------
1 | ---
2 | meta:
3 | title: API explorer
4 | description: Search the API of Vuetify components or browse common categories.
5 | keywords: material design components, components api, vuetify api, vuetify component categories
6 | ---
7 |
8 | # API Explorer
9 |
10 | Quickly search for and navigate all of the components in Material Design spec, plus more! Select a component and quickly view its API and usage example
11 |
12 |
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/src/pages/en/components/aspect-ratios.md:
--------------------------------------------------------------------------------
1 | ---
2 | meta:
3 | title: Aspect ratios
4 | description: The responsive component is used as a wrapper component to force custom aspect ratios for its children.
5 | keywords: ratio, responsive, aspect ratios
6 | related:
7 | - /components/cards/
8 | - /components/sheets/
9 | - /components/images/
10 | ---
11 |
12 | # Aspect ratios
13 |
14 | The `v-responsive` component can be used to fix any section to a specific aspect ratio
15 |
16 |
17 |
18 | ## Usage
19 |
20 | Specify a custom aspect-ratio
21 |
22 |
23 |
24 | ## API
25 |
26 | - [v-responsive](/api/v-responsive)
27 |
28 |
29 |
--------------------------------------------------------------------------------
/src/pages/en/directives/resize.md:
--------------------------------------------------------------------------------
1 | ---
2 | meta:
3 | title: Resize directive
4 | description: The resize directive provides the ability to conditionally invoke functions when the screen is resized.
5 | keywords: resize, vuetify resize directive, vue resize directive, window resize directive
6 | related:
7 | - /customization/breakpoints/
8 | - /components/grids/
9 | - /styles/flex/
10 | ---
11 |
12 | # Resize directive
13 |
14 | The `v-resize` directive can be used for calling specific functions when the window resizes.
15 |
16 |
17 |
18 | ## Usage
19 |
20 | Resize your window and observe the values change..
21 |
22 |
23 |
24 | ## API
25 |
26 | - [v-resize](/api/v-resize)
27 |
28 |
29 |
--------------------------------------------------------------------------------
/src/pages/en/directives/touch.md:
--------------------------------------------------------------------------------
1 | ---
2 | meta:
3 | title: Touch directive
4 | description: The touch directive provides an interface for responding to various user touch actions.
5 | keywords: touch, vuetify touch directive, vue touch directive, mobile touch directive
6 | related:
7 | - /styles/scroll/
8 | ---
9 |
10 | # Touch directive
11 |
12 | The `v-touch` directive allows you to capture swipe gestures and apply directional callbacks.
13 |
14 |
15 |
16 | ## Usage
17 |
18 | On a mobile device, try swiping in various directions.
19 |
20 |
21 |
22 | ## API
23 |
24 | - [v-touch](/api/v-touch)
25 |
26 |
27 |
--------------------------------------------------------------------------------
/src/pages/en/getting-started/release-notes.md:
--------------------------------------------------------------------------------
1 | ---
2 | meta:
3 | title: Release notes
4 | description: Stay up to date with the latest release notes. The migration guides will also help you migrate applications though major releases.
5 | keywords: migration, releases, upgrading vuetify
6 | related:
7 | - /introduction/long-term-support/
8 | - /getting-started/contributing/
9 | - /introduction/roadmap/
10 | ---
11 |
12 | # Release notes
13 |
14 | The Vuetify team performs releases on a weekly basis. All release notes can be found through the Github and can be viewed below for your convenience. Furthermore between major releases there can be many breaking changes in which you can follow the latest migration guide below to help easy your transition.
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/src/pages/en/home.md:
--------------------------------------------------------------------------------
1 | ---
2 | meta:
3 | title: Vuetify — A Material Design Framework for Vue.js
4 | description: Vuetify is a Material Design component framework for Vue.js. It aims to provide all the tools necessary to create beautiful content rich applications.
5 | keywords: vue, material design components, vue components, material design components, vuetify, vuetify.js, component framework
6 | ---
7 |
8 |
9 |
10 |
11 |
12 | # Material Design Framework {.text-center .font-weight-light}
13 |
14 | Vuetify is a Vue UI Library with beautifully handcrafted Material Components. No design skills required — everything you need to create amazing applications is at your fingertips. {style="max-width: 768px" .mx-auto}
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/src/pages/en/professional-support/consulting.md:
--------------------------------------------------------------------------------
1 | ---
2 | meta:
3 | title: Consulting and support
4 | description: Get professional help, support and guidance for your Vuetify application from the creator, John Leider.
5 | keywords: vuetify consulting, vuetify support, vuetify help
6 | nav: Consulting
7 | ---
8 |
9 | # Consulting and support
10 |
11 | John Leider, the creator of Vuetify, and other **Core Team** members are now offering Consulting Services for your Vuetify based application. Utilize our in-demand services for guidance and advice on advanced implementations, best practices, and procedures.
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/src/pages/en/resources/jobs-for-vue.md:
--------------------------------------------------------------------------------
1 | ---
2 | meta:
3 | title: Vue & Vuetify jobs
4 | description: Vue.js & Vuetify jobs for developers and businesses. Apply to Software Engineer, Full Stack Developer, Senior Software Engineer and more!
5 | keywords: Vue.js Jobs, Vue.js careers, Vue.js job search, work in Vue.js, Vuetify jobs for Vue
6 | related:
7 | - /introduction/why-vuetify/
8 | - /professional-support/consulting/
9 | - /professional-support/business/
10 | nav: Jobs for Vue
11 | ---
12 |
13 | # Vue and Vuetify jobs
14 |
15 | Find top Vue.js developers, ready to join your team; or browse available openings and land your next job!
16 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/src/pages/en/resources/made-with-vuetify.md:
--------------------------------------------------------------------------------
1 | ---
2 | meta:
3 | title: Made with Vuetify
4 | description: todo
5 | keywords: todo
6 | related:
7 | - /getting-started/whiteframes/
8 | - /customization/theme/
9 | - /introduction/sponsors-and-backers/
10 | ---
11 |
12 | # Made with Vuetify
13 |
14 | A collection of projects made with Vuetify. See what others are creating in the ecosystem. Powered by [made with vue.js](https://madewithvuejs.com/vuetify?ref=vuetifyjs.com).
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/src/pages/en/resources/themes.md:
--------------------------------------------------------------------------------
1 | ---
2 | meta:
3 | title: Free & Premium Vuetify themes
4 | description: Vuetify offers numerous pre-build starter and premium themes. Kickstart your next application today, no design skills needed.
5 | keywords: vuetify themes, pre-built material themes, premium themes
6 | related:
7 | - /getting-started/whiteframes/
8 | - /customization/theme/
9 | - /getting-started/quick-start/
10 | ---
11 |
12 | # Vuetify Themes
13 |
14 | Vuetify offers both **free** and **premium** pre-made themes designed to get you started in a flash. Free themes are available to install through Vue CLI or you can simply download the source.
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/src/plugins/app.js:
--------------------------------------------------------------------------------
1 | /**
2 | * plugins/app.js
3 | *
4 | * Automatically loads and bootstraps files
5 | * in the `./src/components/` folder.
6 | */
7 |
8 | export function registerComponents (app) {
9 | // Get all .vue files within `src/components/app`
10 | const requireComponent = require.context('@/components', true, /\.vue$/)
11 |
12 | for (const file of requireComponent.keys()) {
13 | const componentConfig = requireComponent(file)
14 |
15 | app.component(
16 | componentConfig.default.name,
17 | componentConfig.default || componentConfig,
18 | )
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/src/plugins/cosmicjs.js:
--------------------------------------------------------------------------------
1 | // Imports
2 | import Cosmic from 'cosmicjs'
3 |
4 | const api = Cosmic()
5 |
6 | const bucket = api.bucket({
7 | slug: process.env.VUE_APP_COSMIC_BUCKET_SLUG,
8 | read_key: process.env.VUE_APP_COSMIC_BUCKET_READ_KEY,
9 | })
10 |
11 | export default bucket
12 |
--------------------------------------------------------------------------------
/src/plugins/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * plugins/index.js
3 | *
4 | * Automatically included in `./src/main.js`
5 | */
6 |
7 | import { loadFonts } from './webfontloader'
8 | import { registerComponents } from './app'
9 | import { useMeta } from './vue-meta'
10 | import { useVuetify } from '@/vuetify'
11 |
12 | export function registerPlugins (app) {
13 | registerComponents(app)
14 | loadFonts(app)
15 | useMeta(app)
16 | useVuetify(app)
17 | }
18 |
--------------------------------------------------------------------------------
/src/plugins/pwa-events.js:
--------------------------------------------------------------------------------
1 | // Utilities
2 | import { ROOT_DISPATCH } from '@/store'
3 | import { IN_BROWSER } from '@/util/globals'
4 |
5 | const pwa = store => {
6 | if (!IN_BROWSER) return
7 |
8 | window.addEventListener('beforeinstallprompt', e => {
9 | e.preventDefault()
10 | store.dispatch('pwa/setInstallPrompt', e, ROOT_DISPATCH)
11 | store.dispatch('pwa/setCanInstall', true, ROOT_DISPATCH)
12 | })
13 |
14 | document.addEventListener('swUpdated', e => {
15 | store.dispatch('pwa/setUpdateAvailable', true, ROOT_DISPATCH)
16 | store.dispatch('pwa/setUpdateDetail', e.detail, ROOT_DISPATCH)
17 | })
18 | }
19 |
20 | export default pwa
21 |
--------------------------------------------------------------------------------
/src/plugins/vue-cookies.js:
--------------------------------------------------------------------------------
1 | import Cookies from 'vue-cookies'
2 |
3 | export function useCookies (app) {
4 | app.use(Cookies)
5 | }
6 |
--------------------------------------------------------------------------------
/src/plugins/vue-meta.js:
--------------------------------------------------------------------------------
1 | // Globals
2 | import { IN_BROWSER, IS_SERVER } from '@/util/globals'
3 |
4 | export async function useMeta (app) {
5 | if (IS_SERVER || !IN_BROWSER) return
6 |
7 | const Meta = await import('vue-meta')
8 |
9 | app.use(Meta)
10 | }
11 |
--------------------------------------------------------------------------------
/src/plugins/vuex-pathify.js:
--------------------------------------------------------------------------------
1 | // https://davestewart.github.io/vuex-pathify/#/setup/config
2 |
3 | import pathify from 'vuex-pathify'
4 |
5 | // options
6 | pathify.options.mapping = 'simple'
7 | pathify.options.strict = true
8 |
9 | export default pathify
10 |
--------------------------------------------------------------------------------
/src/service-worker.js:
--------------------------------------------------------------------------------
1 | /* eslint-disable no-undef */
2 | workbox.core.setCacheNameDetails({ prefix: 'docs-next' })
3 |
4 | self.addEventListener('message', (event) => {
5 | if (!event.data) return
6 |
7 | if (event.data === 'skipWaiting') {
8 | self.skipWaiting()
9 | }
10 | })
11 |
12 | self.__precacheManifest = [].concat(self.__precacheManifest || [])
13 | workbox.precaching.precacheAndRoute(self.__precacheManifest, {})
14 |
--------------------------------------------------------------------------------
/src/store/modules/ads.js:
--------------------------------------------------------------------------------
1 | // Imports
2 | import bucket from '@/plugins/cosmicjs'
3 |
4 | // Pathify
5 | import { make } from 'vuex-pathify'
6 |
7 | const state = {
8 | all: [],
9 | }
10 |
11 | const mutations = make.mutations(state)
12 |
13 | const actions = {
14 | fetch: async ({ commit }) => {
15 | const { objects } = await bucket.getObjects({
16 | type: 'ads',
17 | props: 'metadata,slug,title',
18 | status: 'published',
19 | })
20 |
21 | commit('all', objects || [])
22 | },
23 | }
24 |
25 | const getters = {}
26 |
27 | export default {
28 | namespaced: true,
29 | state,
30 | mutations,
31 | actions,
32 | getters,
33 | }
34 |
--------------------------------------------------------------------------------
/src/store/modules/index.js:
--------------------------------------------------------------------------------
1 | export { default as ads } from './ads'
2 | export { default as app } from './app'
3 | export { default as jobs } from './jobs'
4 | export { default as messages } from './messages'
5 | export { default as pages } from './pages'
6 | export { default as pwa } from './pwa'
7 | export { default as snackbar } from './snackbar'
8 | export { default as sponsors } from './sponsors'
9 | export { default as team } from './team'
10 | export { default as user } from './user'
11 |
--------------------------------------------------------------------------------
/src/store/modules/messages.js:
--------------------------------------------------------------------------------
1 | // Pathify
2 | // Utilities
3 | import bucket from '@/plugins/cosmicjs'
4 | import { make } from 'vuex-pathify'
5 |
6 | const state = {
7 | notifications: [],
8 | }
9 |
10 | const mutations = make.mutations(state)
11 |
12 | const actions = {
13 | fetch: async ({ commit }) => {
14 | const { objects: notifications } = await bucket.getObjects({
15 | type: 'notifications',
16 | props: 'created_at,metadata,slug,title',
17 | status: 'published',
18 | limit: 10,
19 | sort: '-created_at',
20 | })
21 |
22 | commit('notifications', notifications || [])
23 | },
24 | }
25 |
26 | const getters = {}
27 |
28 | export default {
29 | namespaced: true,
30 | state,
31 | mutations,
32 | actions,
33 | getters,
34 | }
35 |
--------------------------------------------------------------------------------
/src/store/modules/pages.js:
--------------------------------------------------------------------------------
1 | // Pathify
2 | import { make } from 'vuex-pathify'
3 |
4 | const state = {
5 | frontmatter: {},
6 | loading: [],
7 | pages: {},
8 | toc: [],
9 | }
10 |
11 | const mutations = make.mutations(state)
12 |
13 | const actions = {}
14 |
15 | const getters = {
16 | ...make.getters(state),
17 | translating: (_, __, rootState) => {
18 | return rootState.route.params.locale === 'eo-UY'
19 | },
20 | }
21 |
22 | export default {
23 | namespaced: true,
24 | state,
25 | mutations,
26 | actions,
27 | getters,
28 | }
29 |
--------------------------------------------------------------------------------
/src/store/modules/snackbar.js:
--------------------------------------------------------------------------------
1 | // Utilities
2 | import { make } from 'vuex-pathify'
3 |
4 | const state = {
5 | snackbar: {
6 | action_text: 'Close',
7 | action: '',
8 | color: 'success',
9 | emoji: '',
10 | slug: null,
11 | text: '',
12 | },
13 | value: false,
14 | }
15 |
16 | const mutations = make.mutations(state)
17 |
18 | const actions = {}
19 |
20 | const getters = {}
21 |
22 | export default {
23 | namespaced: true,
24 | state,
25 | mutations,
26 | actions,
27 | getters,
28 | }
29 |
--------------------------------------------------------------------------------
/src/util/date.js:
--------------------------------------------------------------------------------
1 | import { format, parseISO } from 'date-fns'
2 |
3 | export function formatDate (date) {
4 | return format(parseISO(date.toISOString().substr(0, 10)), 'MMMM d')
5 | }
6 |
--------------------------------------------------------------------------------
/src/util/globals.js:
--------------------------------------------------------------------------------
1 | const IN_BROWSER = typeof window !== 'undefined'
2 | const IS_DEBUG = process.env.DEBUG === 'true'
3 | const IS_PROD = process.env.NODE_ENV === 'production'
4 | const IS_SERVER = process.env.WEBPACK_TARGET === 'node'
5 |
6 | module.exports = {
7 | IN_BROWSER,
8 | IS_DEBUG,
9 | IS_PROD,
10 | IS_SERVER,
11 | }
12 |
--------------------------------------------------------------------------------
/src/views/Whiteframes.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
29 |
--------------------------------------------------------------------------------
/src/views/errors/404.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 | Whoops, 404
10 |
11 |
12 | The page you were looking for does not exist
13 |
14 |
19 | Get me out of here!
20 |
21 |
22 |
23 |
24 |
25 |
26 |
35 |
--------------------------------------------------------------------------------
/vercel.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 2,
3 | "cleanUrls": true,
4 | "trailingSlash": true,
5 | "build": {
6 | "env": {
7 | "VUE_APP_COSMIC_BUCKET_SLUG": "@cosmic-bucket-slug",
8 | "VUE_APP_COSMIC_BUCKET_READ_KEY": "@cosmic-bucket-read-key"
9 | }
10 | },
11 | "rewrites": [
12 | {
13 | "source": "/(.*)",
14 | "destination": "$1"
15 | },
16 | {
17 | "source": "/(.*)",
18 | "destination": "/index"
19 | }
20 | ],
21 | "github": {
22 | "autoAlias": false,
23 | "silent": true
24 | }
25 | }
26 |
--------------------------------------------------------------------------------