import { PisellTimeRangeDisplay } from "./PisellTimeRangeDisplay";

/**
 * PisellTimeRangeDisplay 组件 Storybook
 * 用于时间区间 + 持续时长的展示（同一天 / 跨天）
 */
var meta = {
  title: 'General/PisellTimeRangeDisplay',
  component: PisellTimeRangeDisplay,
  tags: ['autodocs'],
  argTypes: {
    textAlign: {
      control: 'radio',
      options: ['left', 'center', 'right'],
      description: '文本对齐'
    },
    showDateForSameDay: {
      control: 'boolean',
      description: '同一天时是否显示日期与星期'
    },
    locale: {
      control: 'select',
      options: ['zh-cn', 'en'],
      description: '语言'
    }
  }
};
export default meta;
/**
 * 默认：同一天时间区间 + 持续时长
 */
export var Default = {
  args: {
    startAt: '2026-02-04 09:00',
    endAt: '2026-02-04 18:00'
  }
};

/**
 * 同一天 + 显示日期与星期
 */
export var SameDayWithDate = {
  args: {
    startAt: '2026-02-04 09:00',
    endAt: '2026-02-04 18:00',
    showDateForSameDay: true
  }
};

/**
 * 跨天时间区间
 */
export var CrossDay = {
  args: {
    startAt: '2026-02-04 18:00',
    endAt: '2026-02-05 10:00'
  }
};

/**
 * 跨年
 */
export var CrossYear = {
  args: {
    startAt: '2025-12-31 22:00',
    endAt: '2026-01-01 02:00'
  }
};

/**
 * 持续时间在中间（默认 fieldOrder）
 */
export var DurationInMiddle = {
  args: {
    startAt: '2026-02-04 09:00',
    endAt: '2026-02-04 18:00',
    showDateForSameDay: true,
    fields: {
      fieldOrder: ['time', 'duration', 'date', 'weekday']
    }
  }
};

/**
 * 持续时长在前
 */
export var DurationFirst = {
  args: {
    startAt: '2026-02-04 09:00',
    endAt: '2026-02-04 18:00',
    fields: {
      fieldOrder: ['duration', 'time']
    }
  }
};

/**
 * 持续时长显示秒
 */
export var DurationWithSeconds = {
  args: {
    startAt: '2026-02-04 09:00:00',
    endAt: '2026-02-04 09:30:45',
    durationFormat: {
      showSeconds: true
    }
  }
};

/**
 * 仅时间区间 + 持续时长（不显示日期星期）
 */
export var TimeAndDurationOnly = {
  args: {
    startAt: '2026-02-04 09:00',
    endAt: '2026-02-04 18:00',
    fields: {
      showTimeRange: true,
      showDate: false,
      showWeekday: false,
      showDuration: true
    }
  }
};

/**
 * 12 小时制
 */
export var Time12Hour = {
  args: {
    startAt: '2026-02-04 09:00',
    endAt: '2026-02-04 18:00',
    timeFormat: {
      use12Hour: true
    }
  }
};

/**
 * 中文（日期 + 持续时长「天/时/分/秒」i18n）
 */
export var LocaleZhCN = {
  args: {
    startAt: '2026-02-04 09:00',
    endAt: '2026-02-04 18:00',
    showDateForSameDay: true,
    locale: 'zh-cn',
    dateFormat: {
      showChineseUnit: true,
      showYear: true
    }
  }
};

/**
 * 英文（日期 + 持续时长 d/h/m/s）
 */
export var LocaleEn = {
  args: {
    startAt: '2026-02-04 09:00',
    endAt: '2026-02-04 18:00',
    showDateForSameDay: true,
    locale: 'en',
    dateFormat: {
      order: 'MDY',
      showYear: true
    }
  }
};

/**
 * 小宽度：容器较窄时按块换行
 */
export var NarrowWidth = {
  args: {
    startAt: '2026-03-21 10:15',
    endAt: '2026-03-21 10:45',
    showDateForSameDay: true,
    dateFormat: {
      order: 'MDY',
      showYear: true
    }
  },
  decorators: [function (Story) {
    return /*#__PURE__*/React.createElement("div", {
      style: {
        maxWidth: 320,
        border: '1px dashed #ccc',
        padding: 8
      }
    }, /*#__PURE__*/React.createElement(Story, null));
  }]
};

/**
 * 自定义容器样式
 */
export var CustomContainerStyle = {
  args: {
    startAt: '2026-02-04 09:00',
    endAt: '2026-02-04 18:00',
    containerStyle: {
      background: '#f5f5f5',
      borderRadius: 8,
      padding: 16,
      gap: 8
    }
  }
};