@ihoomanai/chat-widget 2.0.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.
@@ -0,0 +1,153 @@
1
+ {
2
+ "$schema": "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudfront-distribution.html",
3
+ "_comment": "AWS CloudFront Distribution Configuration for Ihooman Chat Widget CDN",
4
+ "Distribution": {
5
+ "DistributionConfig": {
6
+ "Comment": "Ihooman Chat Widget CDN - cdn.ihooman.ai",
7
+ "Enabled": true,
8
+ "HttpVersion": "http2and3",
9
+ "IPV6Enabled": true,
10
+ "PriceClass": "PriceClass_All",
11
+ "DefaultRootObject": "",
12
+ "Aliases": {
13
+ "Items": ["cdn.ihooman.ai"]
14
+ },
15
+ "Origins": {
16
+ "Items": [
17
+ {
18
+ "Id": "S3-widget-origin",
19
+ "DomainName": "cdn-ihooman-widget.s3.amazonaws.com",
20
+ "S3OriginConfig": {
21
+ "OriginAccessIdentity": "origin-access-identity/cloudfront/EXAMPLE"
22
+ },
23
+ "OriginPath": "/widget"
24
+ }
25
+ ]
26
+ },
27
+ "DefaultCacheBehavior": {
28
+ "TargetOriginId": "S3-widget-origin",
29
+ "ViewerProtocolPolicy": "redirect-to-https",
30
+ "AllowedMethods": ["GET", "HEAD", "OPTIONS"],
31
+ "CachedMethods": ["GET", "HEAD"],
32
+ "Compress": true,
33
+ "CachePolicyId": "VERSIONED_CACHE_POLICY_ID",
34
+ "ResponseHeadersPolicyId": "CORS_SECURITY_HEADERS_POLICY_ID"
35
+ },
36
+ "CacheBehaviors": {
37
+ "Items": [
38
+ {
39
+ "_comment": "Latest version - short cache",
40
+ "PathPattern": "/latest/*",
41
+ "TargetOriginId": "S3-widget-origin",
42
+ "ViewerProtocolPolicy": "redirect-to-https",
43
+ "AllowedMethods": ["GET", "HEAD", "OPTIONS"],
44
+ "CachedMethods": ["GET", "HEAD"],
45
+ "Compress": true,
46
+ "CachePolicyId": "LATEST_CACHE_POLICY_ID",
47
+ "ResponseHeadersPolicyId": "CORS_SECURITY_HEADERS_POLICY_ID"
48
+ }
49
+ ]
50
+ }
51
+ }
52
+ },
53
+ "CachePolicies": {
54
+ "VersionedCachePolicy": {
55
+ "_comment": "Cache policy for versioned URLs (v2/, v2.1.0/)",
56
+ "CachePolicyConfig": {
57
+ "Name": "IhoomanWidget-Versioned-CachePolicy",
58
+ "Comment": "1 year cache for immutable versioned widget files",
59
+ "DefaultTTL": 31536000,
60
+ "MaxTTL": 31536000,
61
+ "MinTTL": 31536000,
62
+ "ParametersInCacheKeyAndForwardedToOrigin": {
63
+ "EnableAcceptEncodingGzip": true,
64
+ "EnableAcceptEncodingBrotli": true,
65
+ "HeadersConfig": {
66
+ "HeaderBehavior": "none"
67
+ },
68
+ "CookiesConfig": {
69
+ "CookieBehavior": "none"
70
+ },
71
+ "QueryStringsConfig": {
72
+ "QueryStringBehavior": "none"
73
+ }
74
+ }
75
+ }
76
+ },
77
+ "LatestCachePolicy": {
78
+ "_comment": "Cache policy for latest URL",
79
+ "CachePolicyConfig": {
80
+ "Name": "IhoomanWidget-Latest-CachePolicy",
81
+ "Comment": "5 minute cache for latest widget files",
82
+ "DefaultTTL": 300,
83
+ "MaxTTL": 300,
84
+ "MinTTL": 300,
85
+ "ParametersInCacheKeyAndForwardedToOrigin": {
86
+ "EnableAcceptEncodingGzip": true,
87
+ "EnableAcceptEncodingBrotli": true,
88
+ "HeadersConfig": {
89
+ "HeaderBehavior": "none"
90
+ },
91
+ "CookiesConfig": {
92
+ "CookieBehavior": "none"
93
+ },
94
+ "QueryStringsConfig": {
95
+ "QueryStringBehavior": "none"
96
+ }
97
+ }
98
+ }
99
+ }
100
+ },
101
+ "ResponseHeadersPolicies": {
102
+ "CORSAndSecurityHeaders": {
103
+ "_comment": "Response headers policy for CORS and security",
104
+ "ResponseHeadersPolicyConfig": {
105
+ "Name": "IhoomanWidget-CORS-Security-Headers",
106
+ "Comment": "CORS and security headers for widget CDN",
107
+ "CorsConfig": {
108
+ "AccessControlAllowCredentials": false,
109
+ "AccessControlAllowHeaders": {
110
+ "Items": ["Content-Type", "Accept", "Origin"]
111
+ },
112
+ "AccessControlAllowMethods": {
113
+ "Items": ["GET", "HEAD", "OPTIONS"]
114
+ },
115
+ "AccessControlAllowOrigins": {
116
+ "Items": ["*"]
117
+ },
118
+ "AccessControlMaxAgeSec": 86400,
119
+ "OriginOverride": true
120
+ },
121
+ "SecurityHeadersConfig": {
122
+ "ContentTypeOptions": {
123
+ "Override": true
124
+ },
125
+ "FrameOptions": {
126
+ "FrameOption": "DENY",
127
+ "Override": true
128
+ },
129
+ "ReferrerPolicy": {
130
+ "ReferrerPolicy": "strict-origin-when-cross-origin",
131
+ "Override": true
132
+ },
133
+ "StrictTransportSecurity": {
134
+ "AccessControlMaxAgeSec": 31536000,
135
+ "IncludeSubdomains": true,
136
+ "Preload": true,
137
+ "Override": true
138
+ }
139
+ },
140
+ "CustomHeadersConfig": {
141
+ "Items": [
142
+ {
143
+ "_comment": "Versioned files get immutable cache header",
144
+ "Header": "Cache-Control",
145
+ "Value": "public, max-age=31536000, immutable",
146
+ "Override": false
147
+ }
148
+ ]
149
+ }
150
+ }
151
+ }
152
+ }
153
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "status": "healthy",
3
+ "service": "ihooman-chat-widget-cdn",
4
+ "version": "2.0.0",
5
+ "timestamp": "2026-01-31T15:26:43.871Z"
6
+ }