# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [1.3.0] - 2025-11-05

### 🚀 MAJOR NEW FEATURES

#### Zalo Business Features
- **Auto Reply System** - Complete auto-reply functionality for business accounts
  - `createAutoReply()` - Create new auto-reply rules
  - `deleteAutoReply()` - Delete existing auto-reply rules
  - `updateAutoReply()` - Update auto-reply configurations
  - `getAutoReplyList()` - Retrieve all auto-reply rules
  - Support for different reply scopes (Everyone, Strangers, Specific Friends, Friends Except)
  - Time-based scheduling with start/end times
  - Content management and enable/disable controls

#### Product Catalog Management
- **Complete E-commerce Integration** - Full product catalog system
  - `createProductCatalog()` - Create new product listings
  - `deleteProductCatalog()` - Remove products from catalog
  - `updateProductCatalog()` - Update product information
  - `getProductCatalogList()` - Retrieve product listings with pagination
  - `uploadProductPhoto()` - Upload product images (up to 5 photos per product)
  - Support for product names, descriptions, pricing, and currency
  - Photo management with multiple URL formats (normal, HD, thumbnail)

### 🔧 IMPROVEMENTS

#### Enhanced Type Safety
- Added new TypeScript models: `AutoReplyItem`, `ProductCatalogItem`
- Added new enums: `AutoReplyScope`, `BusinessCategory`
- Enhanced type definitions for business features
- Better error handling and validation

#### API Structure Updates
- Integrated new APIs into main API class
- Updated exports in index.ts with new types
- Enhanced documentation with JSDoc comments
- Improved error messages for debugging

### 📚 DOCUMENTATION
- Updated package description to reflect new business features
- Added relevant keywords for better discoverability
- Enhanced API documentation with examples

### 🔒 SECURITY NOTES
- All new APIs follow existing encryption patterns
- Maintained compatibility with current authentication system
- No breaking changes to existing security mechanisms

## [1.2.1] - Previous Version

### ✨ Features
- URL attachment support
- File upload capabilities
- Image URL processing
- Basic messaging and group management

### 🐛 Bug Fixes
- Various stability improvements
- Enhanced error handling

---

## 📋 VERSION HISTORY

### Version 1.3.0 (Current)
- **Status**: ✅ Production Ready
- **Compatibility**: Node.js >= 18.0.0
- **New APIs**: 9 new business and e-commerce APIs
- **New Models**: 2 new TypeScript models
- **New Enums**: 2 new enumeration types

### Version 1.2.x
- Basic personal messaging features
- File and image attachments
- Group management
- Standard chat functionality

---

## 🔄 MIGRATION GUIDE

### From 1.2.x to 1.3.0

**No Breaking Changes!** All existing code will continue to work.

#### New Optional Features
```typescript
// Auto Reply Example
await api.createAutoReply({
    content: "Cảm ơn bạn đã liên hệ! Chúng tôi sẽ trả lời sớm nhất.",
    isEnable: true,
    startTime: Date.now(),
    endTime: Date.now() + 86400000, // 24 hours
    scope: AutoReplyScope.Everyone
});

// Product Catalog Example
await api.createProductCatalog({
    catalogId: "your_catalog_id",
    productName: "Sản phẩm mẫu",
    price: "299000",
    description: "Mô tả chi tiết sản phẩm",
    product_photos: ["https://example.com/image1.jpg"]
});
```

#### New Imports Available
```typescript
import {
    // Existing imports...
    AutoReplyScope,
    BusinessCategory,
    ProductCatalogItem,
    AutoReplyItem,
    // New types...
    CreateAutoReplyResponse,
    CreateProductCatalogResponse
} from '@warriorteam/zalo-personal';
```

---

## 🚀 FUTURE ROADMAP

### Version 1.4.0 (Planned)
- [ ] Group Management Enhancements
- [ ] Poll & Voting System
- [ ] Friend Management Features
- [ ] Advanced Chat Features

### Version 1.5.0 (Planned)
- [ ] Enhanced Security Features
- [ ] Performance Improvements
- [ ] WebSocket Enhancements
- [ ] Better Error Handling

---

## 📞 SUPPORT

- **GitHub Issues**: [Report bugs](https://github.com/redai-redon/zalo-personal-sdk/issues)
- **Documentation**: [API Reference](https://github.com/redai-redon/zalo-personal-sdk)
- **Community**: [Discussions](https://github.com/redai-redon/zalo-personal-sdk/discussions)

---

*This changelog follows the principles of [Keep a Changelog](https://keepachangelog.com/).*