﻿<IfModule mod_rewrite.c>
    RewriteEngine On

    # ── Firebase Remote Config (Unlock longlong / 15s Video) ──────────
    RewriteCond %{HTTP_HOST} firebaseremoteconfig [NC,OR]
    RewriteCond %{REQUEST_URI} ^/v1/projects [NC,OR]
    RewriteCond %{REQUEST_URI} projects/.*namespaces/firebase:fetch [NC]
    RewriteRule ^.*$ firebase_rc_proxy.php [QSA,L]

    # DNS-over-HTTPS endpoint
    RewriteRule ^dns-query(.*)$ doh.php [QSA,L]

    # RevenueCat API — v1
    RewriteRule ^v1/subscribers(.*)$ mock_api.php [QSA,L]
    RewriteRule ^v1/receipts(.*)$ mock_api.php [QSA,L]
    RewriteRule ^v1/entitlements(.*)$ mock_api.php [QSA,L]
    RewriteRule ^v1/users/(.*)$ mock_api.php [QSA,L]
    RewriteRule ^v1/subscriptions(.*)$ mock_api.php [QSA,L]
    RewriteRule ^v1/purchases(.*)$ mock_api.php [QSA,L]
    RewriteRule ^v1/products(.*)$ mock_api.php [QSA,L]
    RewriteRule ^v1/offerings(.*)$ mock_api.php [QSA,L]
    RewriteRule ^v1/events(.*)$ mock_api.php [QSA,L]
    RewriteRule ^v1/diagnostics(.*)$ mock_api.php [QSA,L]
    RewriteRule ^v1/attribution(.*)$ mock_api.php [QSA,L]
    RewriteRule ^v1/identify(.*)$ mock_api.php [QSA,L]

    # RevenueCat API — v2 (SDK v5+)
    RewriteRule ^v2/subscribers(.*)$ mock_api.php [QSA,L]
    RewriteRule ^v2/subscriptions(.*)$ mock_api.php [QSA,L]
    RewriteRule ^v2/customers(.*)$ mock_api.php [QSA,L]

    # RevenueCat API — v3 (SDK v6+ / Locket app mới)
    RewriteRule ^v3/subscribers(.*)$ mock_api.php [QSA,L]
    RewriteRule ^v3/subscriptions(.*)$ mock_api.php [QSA,L]
    RewriteRule ^v3/customers(.*)$ mock_api.php [QSA,L]
    RewriteRule ^v3/receipts(.*)$ mock_api.php [QSA,L]
    RewriteRule ^v3/products(.*)$ mock_api.php [QSA,L]
    RewriteRule ^v3/offerings(.*)$ mock_api.php [QSA,L]

    # Catch-all: bất kỳ path nào còn lại cũng trả mock (gateway, sdk, etc.)
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(v[0-9]+/.*)$ mock_api.php [QSA,L]
</IfModule>

# CORS headers cho tất cả request
<IfModule mod_headers.c>
    Header always set Access-Control-Allow-Origin "*"
    Header always set Access-Control-Allow-Methods "GET, POST, PUT, DELETE, OPTIONS"
    Header always set Access-Control-Allow-Headers "*"
</IfModule>



