@adstage/web-sdk 2.5.3 → 2.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +59 -0
- package/dist/index.cjs.js +2073 -1045
- package/dist/index.d.ts +55 -12
- package/dist/index.esm.js +2073 -1045
- package/dist/index.standalone.js +2073 -1045
- package/package.json +1 -1
- package/src/constants/endpoints.ts +0 -1
- package/src/core/{AdStage.ts → adstage.ts} +36 -8
- package/src/index.ts +9 -3
- package/src/managers/ads/advertisement-event-tracker.ts +15 -11
- package/src/managers/ads/carousel-slider-manager.ts +90 -12
- package/src/managers/ads/slider-event-tracker.ts +57 -0
- package/src/managers/ads/text-transition-manager.ts +91 -26
- package/src/modules/ads/ad-renderer.ts +259 -0
- package/src/modules/ads/{AdsModule.ts → ads-module.ts} +202 -21
- package/src/modules/ads/interfaces/i-ad-renderer.ts +77 -0
- package/src/modules/ads/renderers/banner-ad-renderer.ts +414 -0
- package/src/modules/ads/renderers/base-ad-renderer.ts +340 -0
- package/src/modules/ads/renderers/interstitial-ad-renderer.ts +256 -0
- package/src/modules/ads/renderers/native-ad-renderer.ts +154 -0
- package/src/modules/ads/renderers/text-ad-renderer.ts +120 -0
- package/src/modules/ads/renderers/video-ad-renderer.ts +433 -0
- package/src/modules/config/{ConfigModule.ts → config-module.ts} +1 -5
- package/src/react/{AdStageProvider.tsx → ad-stage-provider.tsx} +1 -1
- package/src/react/index.ts +2 -2
- package/src/types/config.ts +2 -184
- package/src/utils/ad-click-handler.ts +155 -0
- package/src/utils/text-ad-utils.ts +37 -0
- package/src/dummy/ads_dummy.json +0 -84
- package/src/modules/ads/AdRenderer.ts +0 -735
- package/src/renderers/banner-renderer.ts +0 -35
- package/src/renderers/base-renderer.ts +0 -209
- package/src/renderers/index.ts +0 -71
- package/src/renderers/interstitial-renderer.ts +0 -70
- package/src/renderers/native-renderer.ts +0 -35
- package/src/renderers/text-renderer.ts +0 -94
- package/src/renderers/video-renderer.ts +0 -63
- /package/src/modules/events/{EventsModule.ts → events-module.ts} +0 -0
package/README.md
CHANGED
|
@@ -12,11 +12,23 @@ AdStage Web SDK는 멀티테넌트 마케팅 데이터 플랫폼인 AdStage의
|
|
|
12
12
|
|
|
13
13
|
### 🎯 광고 시스템 (완전 구현)
|
|
14
14
|
- **5가지 광고 타입**: 배너, 텍스트, 비디오, 네이티브, 전면 광고
|
|
15
|
+
- **타입별 렌더러**: 각 광고 타입에 최적화된 전용 렌더링 엔진
|
|
15
16
|
- **스마트 슬라이더**: 여러 광고 자동 순환 및 페이드 효과
|
|
16
17
|
- **Lazy 로딩**: 즉시 placeholder 표시, 백그라운드 광고 로드
|
|
17
18
|
- **이벤트 추적**: 노출, 클릭, 뷰어빌리티 등 자동 추적
|
|
18
19
|
- **중복 방지**: 동일 광고 중복 노출 방지 시스템
|
|
19
20
|
|
|
21
|
+
### 🏗️ 모듈화 아키텍처 (v2.5.3+)
|
|
22
|
+
- **팩토리 패턴**: AdRenderer가 광고 타입에 따라 적절한 렌더러 선택
|
|
23
|
+
- **타입별 렌더러**:
|
|
24
|
+
- `BannerAdRenderer`: 배너 광고 최적화 및 이미지 처리
|
|
25
|
+
- `TextAdRenderer`: 텍스트 전환 효과 및 스타일링
|
|
26
|
+
- `VideoAdRenderer`: 비디오 컨트롤 커스터마이징 및 폴백
|
|
27
|
+
- `NativeAdRenderer`: 네이티브 광고 레이아웃
|
|
28
|
+
- `InterstitialAdRenderer`: 전면 광고 오버레이
|
|
29
|
+
- **공통 인터페이스**: 일관된 API와 확장 가능한 구조
|
|
30
|
+
- **독립적 유지보수**: 각 광고 타입별 독립적 개발 및 테스트 가능
|
|
31
|
+
|
|
20
32
|
### ⚙️ 설정 관리 (완전 구현)
|
|
21
33
|
- **동기 초기화**: `await` 없이 즉시 사용 가능
|
|
22
34
|
- **모듈 선택**: 필요한 기능만 선택적 로드
|
|
@@ -71,6 +83,53 @@ const textId = AdStage.ads.text('text-container', {
|
|
|
71
83
|
});
|
|
72
84
|
```
|
|
73
85
|
|
|
86
|
+
## 🏗️ 아키텍처 구조
|
|
87
|
+
|
|
88
|
+
### 광고 렌더링 시스템
|
|
89
|
+
|
|
90
|
+
```
|
|
91
|
+
AdRenderer (Factory)
|
|
92
|
+
├── IAdRenderer (Interface)
|
|
93
|
+
├── BaseAdRenderer (Base Class)
|
|
94
|
+
└── renderers/
|
|
95
|
+
├── BannerAdRenderer - 배너 광고 (이미지 최적화, 비율 계산)
|
|
96
|
+
├── TextAdRenderer - 텍스트 광고 (전환 효과, 스타일링)
|
|
97
|
+
├── VideoAdRenderer - 비디오 광고 (컨트롤 커스터마이징)
|
|
98
|
+
├── NativeAdRenderer - 네이티브 광고 (레이아웃 구성)
|
|
99
|
+
└── InterstitialAdRenderer - 전면 광고 (오버레이, 모달)
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
### 주요 클래스 관계
|
|
103
|
+
|
|
104
|
+
```mermaid
|
|
105
|
+
graph TD
|
|
106
|
+
A[AdStage] --> B[AdsModule]
|
|
107
|
+
B --> C[AdRenderer Factory]
|
|
108
|
+
C --> D[IAdRenderer Interface]
|
|
109
|
+
D --> E[BaseAdRenderer]
|
|
110
|
+
E --> F[BannerAdRenderer]
|
|
111
|
+
E --> G[TextAdRenderer]
|
|
112
|
+
E --> H[VideoAdRenderer]
|
|
113
|
+
E --> I[NativeAdRenderer]
|
|
114
|
+
E --> J[InterstitialAdRenderer]
|
|
115
|
+
|
|
116
|
+
F --> K[CarouselSliderManager]
|
|
117
|
+
G --> L[TextTransitionManager]
|
|
118
|
+
|
|
119
|
+
C --> M[AdvertisementEventTracker]
|
|
120
|
+
C --> N[ViewableEventTracker]
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
### 렌더러별 특화 기능
|
|
124
|
+
|
|
125
|
+
| 렌더러 | 주요 기능 | 고유 특성 |
|
|
126
|
+
|--------|-----------|-----------|
|
|
127
|
+
| **BannerAdRenderer** | 이미지 최적화, 비율 계산 | 스마트 크기 조정, 다중 이미지 슬라이더 |
|
|
128
|
+
| **TextAdRenderer** | 텍스트 전환, 스타일링 | 페이드 효과, 라인 제한, 그라디언트 배경 |
|
|
129
|
+
| **VideoAdRenderer** | 비디오 제어, 폴백 처리 | 컨트롤 커스터마이징, 자동 이미지 폴백 |
|
|
130
|
+
| **NativeAdRenderer** | 네이티브 레이아웃 | 제목/설명/CTA 구조화, 자연스러운 디자인 |
|
|
131
|
+
| **InterstitialAdRenderer** | 전면 오버레이 | 모달 UI, ESC/클릭 닫기, 애니메이션 |
|
|
132
|
+
|
|
74
133
|
### HTML 마크업
|
|
75
134
|
|
|
76
135
|
```html
|