Terms Package

Legal text templates and formatting functions for IP licensing terms

Overview

@zooly/terms is a pure TypeScript package that provides legal text templates, blueprints, and formatting functions for IP licensing terms. It contains no dependencies on app-db or srv, making it portable and reusable across different contexts.

Package Details

  • Package Name: @zooly/terms
  • Location: packages/terms
  • Type: Legal text templates and formatting library

Key Features

  • Legal text templates for three IP term types (VoiceOver, Image, Likeness)
  • Default term generators that create sensible default values
  • Formatter functions that convert database records into human-readable legal text
  • Type-safe blueprints for each term type

Term Types

The package supports three types of IP licensing terms:

  • VoiceOver - Terms for voice recordings and audio content
  • Image - Terms for image and photograph licensing
  • Likeness - Terms for using a person's likeness or appearance

Package Structure

packages/terms/
├── src/
│   ├── index.ts                    # Main exports
│   └── enums/
│       └── ip-terms/
│           ├── voice-over/
│           │   ├── voice-over-terms.ts      # Blueprint with defaults
│           │   └── formatIpTermsVoiceOver.ts # Formatter function
│           ├── image/
│           │   ├── image-terms.ts
│           │   └── formatIpTermsImage.ts
│           └── likeness/
│               ├── likeness-terms.ts
│               └── formatIpTermsLikeness.ts

Exports

The package exports:

  • Default Term Functions: getDefaultVoiceOverTerms(), getDefaultImageTerms(), getDefaultLikenessTerms()
  • Formatter Functions: formatIpTermsVoiceOver(), formatIpTermsImage(), formatIpTermsLikeness()

Dependencies

  • @zooly/types - For shared types like IpTerms, Account, FormattedIpTermsResult

Usage

This package is used by the service layer (@zooly/app-srv) to:

  • Generate default terms when creating new IP term records
  • Format database records into human-readable legal text with seller names
  • Provide consistent legal text templates across the application

For complete information about the Terms Setup feature, including API endpoints, database schema, and implementation details, see the Terms Setup documentation.