Skip to main content

Package exports

Supported package entry points for Nuxt and plain Vue applications.

Use only the entry points in this table. Generated files, source folders, and other deep paths are not public application imports.

PackagePurpose
@lupinum/nuxt-photoNuxt module entry used in nuxt.config.ts.
@lupinum/nuxt-photo/appPublic components, composables, keys, utilities, and app types.
@lupinum/vue-photoComplete plain Vue public surface.
@lupinum/vue-photo/composablesFocused Vue composable entry.
@lupinum/vue-photo/provideFocused Vue provider and injection-key entry.
@lupinum/vue-photo/typesFocused Vue public type entry.
@lupinum/vue-photo/styles.cssComplete structure and theme stylesheet.

Nuxt applications

Install @lupinum/nuxt-photo and add its root entry to the module list:

nuxt.config.ts
export default defineNuxtConfig({
  modules: ['@lupinum/nuxt-photo'],
})

Ready-made components and common helpers are registered automatically. Use the app facade for explicit imports:

ts
import {
  PhotoAlbum,
  responsive,
  type LightboxCaptionSlotProps,
  type PhotoItem,
} from '@lupinum/nuxt-photo/app'

The facade contains:

  • ready-made components and lower-level lightbox components;
  • useLightbox, provideLightbox, usePhotoLabels, and useContainerWidth;
  • responsive value utilities;
  • public layout, image, controller, validation, and slot-prop types;
  • ImageAdapterKey, LightboxComponentKey, and PhotoDefaultsKey.

Do not import @lupinum/vue-photo from a Nuxt application unless it is also a direct application dependency.

Plain Vue applications

Install @lupinum/vue-photo and use its root for normal imports:

ts
import { PhotoAlbum, responsive, type PhotoItem } from '@lupinum/vue-photo'
import '@lupinum/vue-photo/styles.css'

The focused subpaths are optional:

ts
import { useLightbox } from '@lupinum/vue-photo/composables'
import { ImageAdapterKey } from '@lupinum/vue-photo/provide'
import type { LightboxCaptionSlotProps } from '@lupinum/vue-photo/types'

These subpaths expose supported subsets of the same public Vue contract. They do not grant access to layout, geometry, transition, or component implementation files.

Vue root runtime exports

  • Photo, PhotoGroup, PhotoAlbum, PhotoCarousel, and Lightbox
  • LightboxProvider, LightboxRoot, LightboxOverlay, LightboxViewport, LightboxSlide, LightboxControls, and LightboxCaption
  • PhotoImage and PhotoTrigger
  • useLightbox, provideLightbox, usePhotoLabels, and useContainerWidth
  • responsive and resolveResponsiveParameter
  • ImageAdapterKey, LightboxComponentKey, and PhotoDefaultsKey
  • PhotoValidationError

Type-only exports are listed in the Types reference.