# CalInvite::Providers::Outlook

Microsoft Outlook Live (outlook.live.com) provider for generating calendar event URLs.
This provider generates URLs that open the Outlook.com web calendar
with a pre-filled event creation form. Supports both all-day and
time-specific events.

Note: This is for personal Outlook.com accounts. For corporate Office 365,
use the {Office365} provider instead.

@example Creating a regular event URL
  event = CalInvite::Event.new(
    title: "Team Meeting",
    start_time: Time.now,
    end_time: Time.now + 3600,
    description: "Weekly team sync"
  )
  outlook = CalInvite::Providers::Outlook.new(event)
  url = outlook.generate

@example Creating an all-day event URL with attendees
  event = CalInvite::Event.new(
    title: "Company Holiday",
    all_day: true,
    start_time: Date.today,
    end_time: Date.today + 1,
    attendees: ["john@example.com", "jane@example.com"],
    show_attendees: true
  )
  url = CalInvite::Providers::Outlook.new(event).generate

@see Office365 For corporate Office 365 calendar URLs

_class_ defined in `lib/cal_invite/providers/outlook.rb`

Superclass: `CalInvite::Providers::BaseProvider`

## Instance methods

### `generate()`

Generates an Outlook.com calendar URL for the event.
Automatically handles both all-day and time-specific events.

@return [String] The Outlook.com calendar URL
@raise [ArgumentError] If required time fields are missing for non-all-day events
