Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SwG release 0.1.22.165 #34352

Merged
merged 2 commits into from
May 13, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -438,7 +438,7 @@ describes.realWin('amp-subscriptions-google', {amp: true}, (env) => {
});
env.sandbox
.stub(serviceAdapter, 'loadMeteringState')
.resolves({key: 'value'});
.resolves({id: 'abc123'});
const fetchStub = env.sandbox.stub(xhr, 'fetchJson').callsFake(() =>
Promise.resolve({
json: () =>
Expand All @@ -459,7 +459,7 @@ describes.realWin('amp-subscriptions-google', {amp: true}, (env) => {

const fetchUrl = fetchStub.getCall(0).args[0];
expect(fetchUrl).to.equal(
'https://news.google.com/swg/_/api/v1/publication/example.org/entitlements?encodedParams=eyJtZXRlcmluZyI6eyJjbGllbnRUeXBlcyI6WzFdLCJvd25lciI6ImV4YW1wbGUub3JnIiwicmVzb3VyY2UiOnsiaGFzaGVkQ2Fub25pY2FsVXJsIjoiMjcwM2YyYjZlZjBlYWFhODEzNzZhMThmYWE3N2E1OTAwOTc1Zjc3MDVkNWQ4YjZlMWEzNzJkNWY2YzJiOTdiYjU5ZjI4M2Q3MzdiNmQ5YWI3N2M1YTNkODQ4YzZlY2UyMDdjZDYwMzU4M2NjMzIyZGQ4MGFiMGI5MzA5MmM2NTAifSwic3RhdGUiOnsiYXR0cmlidXRlcyI6W119fX0'
'https://news.google.com/swg/_/api/v1/publication/example.org/entitlements?encodedParams=eyJtZXRlcmluZyI6eyJjbGllbnRUeXBlcyI6WzFdLCJvd25lciI6ImV4YW1wbGUub3JnIiwicmVzb3VyY2UiOnsiaGFzaGVkQ2Fub25pY2FsVXJsIjoiMjcwM2YyYjZlZjBlYWFhODEzNzZhMThmYWE3N2E1OTAwOTc1Zjc3MDVkNWQ4YjZlMWEzNzJkNWY2YzJiOTdiYjU5ZjI4M2Q3MzdiNmQ5YWI3N2M1YTNkODQ4YzZlY2UyMDdjZDYwMzU4M2NjMzIyZGQ4MGFiMGI5MzA5MmM2NTAifSwic3RhdGUiOnsiaWQiOiJhYmMxMjMiLCJhdHRyaWJ1dGVzIjpbXX19fQ'
);
});

Expand Down
10 changes: 6 additions & 4 deletions third_party/subscriptions-project/config.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/** Version: 0.1.22.163 */
/** Version: 0.1.22.165 */
/**
* Copyright 2018 The Subscribe with Google Authors. All Rights Reserved.
*
Expand Down Expand Up @@ -174,9 +174,11 @@ class GlobalDoc {
constructor(winOrDoc) {
const isWin = !!winOrDoc.document;
/** @private @const {!Window} */
this.win_ = /** @type {!Window} */ (isWin
? /** @type {!Window} */ (winOrDoc)
: /** @type {!Document} */ (winOrDoc).defaultView);
this.win_ = /** @type {!Window} */ (
isWin
? /** @type {!Window} */ (winOrDoc)
: /** @type {!Document} */ (winOrDoc).defaultView
);
/** @private @const {!Document} */
this.doc_ = isWin
? /** @type {!Window} */ (winOrDoc).document
Expand Down
2 changes: 2 additions & 0 deletions third_party/subscriptions-project/swg-button.css
Original file line number Diff line number Diff line change
Expand Up @@ -327,10 +327,12 @@

.swg-button-v2-dark:hover, .swg-button-v2-dark:active {
box-shadow: 0px 2px 6px 2px rgba(0, 0, 0, 0.15), 0px 1px 2px rgba(0, 0, 0, 0.3);
background-color: #202124;
}

.swg-button-v2-dark:focus {
box-shadow: 0px 6px 10px 4px rgba(0, 0, 0, 0.15), 0px 2px 3px rgba(0, 0, 0, 0.3);
background-color: #202124;
}

.swg-button-v2-icon-light,
Expand Down
81 changes: 60 additions & 21 deletions third_party/subscriptions-project/swg-gaa.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/** Version: 0.1.22.163 */
/** Version: 0.1.22.165 */
/**
* Copyright 2018 The Subscribe with Google Authors. All Rights Reserved.
*
Expand All @@ -38,44 +38,75 @@ const I18N_STRINGS = {
'cs': 'Získejte s Googlem víc',
'de': 'Immer gut informiert mit Google',
'en': 'Get more with Google',
'es': 'Disfruta de más artículos con Google',
'es-ar': 'Disfruta más artículos con Google',
'fr': 'Plus de contenus avec Google',
'hi': 'Google की मदद से ज़्यादा मुफ़्त लेख पाएं',
'it': 'Con Google puoi avere di più',
'ja': 'Google を活用しよう',
'kn': 'Google ನಿಂದ ಹೆಚ್ಚಿನ ಪ್ರಯೋಜನ ಪಡೆಯಿರಿ',
'ml': 'Google ഉപയോഗിച്ച് കൂടുതൽ പ്രയോജനങ്ങൾ നേടൂ',
'mr': 'Google वापरून बरेच काही मिळवा',
'nl': 'Krijg meer met Google',
'pt-br': 'Veja mais com o Google',
'ta': 'Google மூலம் மேலும் பல கட்டுரைகளைப் படியுங்கள்',
'te': 'Googleతో మరిన్ని ప్రయోజనాలను పొందండి',
},
'SHOWCASE_REGWALL_DESCRIPTION': {
'cs':
'<strong></strong>Tento obsah je obvykle zpoplatněn, ale pokud se do publikace <ph name="PUBLICATION"><ex>AP News</ex>{publication}</ph> zaregistrujete pomocí účtu Google, získáte od Googlu přístup zdarma.',
'de':
'<strong></strong>Dieser Inhalt ist normalerweise kostenpflichtig. Google gewährt dir jedoch kostenlos Zugriff auf diesen Artikel und andere Inhalte, wenn du dich mit deinem Google-Konto bei <ph name="PUBLICATION"><ex>AP News</ex>{publication}</ph> registrierst.',
'en':
'<strong></strong>This content usually requires payment, but Google is giving you free access to this article and more when you register with <ph name="PUBLICATION"><ex>AP News</ex>{publication}</ph> using your Google Account.',
'cs': '<strong></strong>Tento obsah je obvykle zpoplatněn, ale pokud se do publikace <ph name="PUBLICATION"><ex>AP News</ex>{publication}</ph> zaregistrujete pomocí účtu Google, získáte od Googlu přístup zdarma.',
'de': '<strong></strong>Dieser Inhalt ist normalerweise kostenpflichtig. Google gewährt dir jedoch kostenlos Zugriff auf diesen Artikel und andere Inhalte, wenn du dich mit deinem Google-Konto bei <ph name="PUBLICATION"><ex>AP News</ex>{publication}</ph> registrierst.',
'en': '<strong></strong>This content usually requires payment, but Google is giving you free access to this article and more when you register with <ph name="PUBLICATION"><ex>AP News</ex>{publication}</ph> using your Google Account.',
'es': '<strong></strong>Normalmente, es necesario pagar para ver este contenido, pero Google te ofrece acceso gratuito a este y otros artículos si te registras en <ph name="PUBLICATION"><ex>AP News</ex>{publication}</ph> con tu cuenta de Google.',
'es-ar':
'<strong></strong>Normalmente, es necesario pagar para ver este contenido, pero Google te ofrece acceso gratuito a este y otros artículos si te registras en <ph name="PUBLICATION"><ex>AP News</ex>{publication}</ph> con tu Cuenta&nbsp;de&nbsp;Google.',
'fr':
'<strong></strong>Ce contenu est généralement payant, mais vous pouvez lire cet article et d\'autres contenus gratuitement grâce à Google en vous inscrivant sur <ph name="PUBLICATION"><ex>AP News</ex>{publication}</ph> avec votre compte Google.',
'it':
'<strong></strong>Generalmente questi contenuti sono a pagamento, ma Google ti offre accesso gratuito a questo articolo e ad altri articoli se ti registri a <ph name="PUBLICATION"><ex>AP News</ex>{publication}</ph> usando il tuo Account Google.',
'fr': '<strong></strong>Ce contenu est généralement payant, mais vous pouvez lire cet article et d\'autres contenus gratuitement grâce à Google en vous inscrivant sur <ph name="PUBLICATION"><ex>AP News</ex>{publication}</ph> avec votre compte Google.',
'hi': '<strong></strong>इस कॉन्टेंट को पढ़ने के लिए पैसे चुकाने पड़ते हैं, लेकिन आप Google की मदद से इस लेख और अन्य कॉन्टेंट को मुफ़्त में पढ़ सकते हैं. इसके लिए, आपको Google खाते का इस्तेमाल करके, <ph name="PUBLICATION"><ex>AP News</ex>{publication}</ph> में रजिस्टर करना होगा.',
'it': '<strong></strong>Generalmente questi contenuti sono a pagamento, ma Google ti offre accesso gratuito a questo articolo e ad altri articoli se ti registri a <ph name="PUBLICATION"><ex>AP News</ex>{publication}</ph> usando il tuo Account Google.',
'ja': '<strong></strong>通常、このコンテンツをお読みいただくにはお支払いが必要ですが、お使いの Google アカウントで <ph name="PUBLICATION"><ex>AP News</ex>{publication}</ph> に登録すると、この記事や他の記事を無料でお読みいただけます(購読料は Google が負担します)。',
'kn': '<strong></strong>ಸಾಮಾನ್ಯವಾಗಿ ಈ ವಿಷಯಕ್ಕಾಗಿ ಹಣ ಪಾವತಿಸಬೇಕಾಗುತ್ತದೆ, ಆದರೆ ನೀವು <ph name="PUBLICATION"><ex>AP News</ex>{publication}</ph> ಗೆ ನಿಮ್ಮ Google ಖಾತೆಯ ಮೂಲಕ ನೋಂದಾಯಿಸಿಕೊಂಡಾಗ Google ಈ ಲೇಖನ ಮತ್ತು ಇನ್ನಷ್ಟು ವಿಷಯಗಳಿಗೆ ನಿಮಗೆ ಉಚಿತವಾದ ಪ್ರವೇಶವನ್ನು ನೀಡುತ್ತದೆ.',
'ml': '<strong></strong>സാധാരണ ഈ ഉള്ളടക്കത്തിന് പണം നൽകേണ്ടതുണ്ട്, എന്നാൽ Google അക്കൗണ്ട് ഉപയോഗിച്ച് <ph name="PUBLICATION"><ex>AP News</ex>{publication}</ph> എന്നതിൽ രജിസ്‌റ്റർ ചെയ്യുമ്പോൾ, ഈ ലേഖനത്തിലേക്കും മറ്റും Google നിങ്ങൾക്ക് സൗജന്യ ആക്‌സസ് നൽകുന്നു.',
'mr': '<strong></strong>या आशयासाठी सामान्यतः पेमेंट आवश्यक असते पण तुम्ही तुमचे Google खाते वापरून <ph name="PUBLICATION"><ex>AP News</ex>{publication}</ph> मध्ये नोंदणी करता तेव्हा, Google तुम्हाला या लेखाचा आणि आणखी बऱ्याच आशयाचा विनामूल्य ॲक्सेस देते.',
'nl': '<strong></strong>Voor deze content moet je eigenlijk betalen. Maar Google geeft je kosteloos toegang tot dit artikel en andere content als je je registreert bij <ph name="PUBLICATION"><ex>AP News</ex>{publication}</ph> via je Google-account.',
'pt-br':
'<strong></strong>Normalmente, é preciso pagar por este conteúdo. Porém, basta você se registrar na publicação <ph name="PUBLICATION"><ex>AP News</ex>{publication}</ph> usando sua Conta do Google para ter acesso gratuito a esta matéria e muito mais.',
'ta': '<strong></strong>வழக்கமாக இந்த உள்ளடக்கத்தை வாசிக்க கட்டணம் செலுத்த வேண்டியிருக்கும். ஆனால் <ph name="PUBLICATION"><ex>AP News</ex>{publication}</ph> இல் உங்கள் Google கணக்கைப் பயன்படுத்திப் பதிவுசெய்யும்போது இந்தக் கட்டுரைக்கும் மேலும் பலவற்றுக்கும் Google இலவச அணுகலை வழங்குகிறது.',
'te': '<strong></strong>ఈ కంటెంట్‌కు మీరు సాధారణంగా పేమెంట్ చేయాల్సి ఉంటుంది, కానీ మీరు Google ఖాతాను ఉపయోగించి <ph name="PUBLICATION"><ex>AP News</ex>{publication}</ph>తో రిజిస్టర్ చేసుకున్నప్పుడు, ఈ వార్తా కథనానికి ఇంకా మరెన్నో వాటికి Google, ఉచిత యాక్సెస్‌ను ఇస్తుంది.',
},
'SHOWCASE_REGWALL_PUBLISHER_SIGN_IN_BUTTON': {
'cs': 'Už máte účet?',
'de': 'Du hast bereits ein Konto?',
'en': 'Already have an account?',
'es': '¿Ya tienes una cuenta?',
'es-ar': '¿Ya tienes una cuenta?',
'fr': 'Vous avez déjà un compte&nbsp;?',
'hi': 'क्या आपके पास पहले से कोई प्रकाशक खाता है?',
'it': 'Hai già un account?',
'ja': 'すでにアカウントをお持ちですか?',
'kn': 'ಈಗಾಗಲೇ ಖಾತೆಯೊಂದನ್ನು ಹೊಂದಿದ್ದೀರಾ?',
'ml': 'മുമ്പേ അക്കൗണ്ടുണ്ടോ?',
'mr': 'आधीपासून खाते आहे?',
'nl': 'Heb je al een account?',
'pt-br': 'Já tem uma conta?',
'ta': 'ஏற்கெனவே கணக்கு உள்ளதா?',
'te': 'ఇప్పటికే ఖాతా ఉందా?',
},
'SHOWCASE_REGWALL_GOOGLE_SIGN_IN_BUTTON': {
'cs': 'Přihlásit se přes Google',
'de': 'Über Google anmelden',
'en': 'Sign in with Google',
'es': 'Iniciar sesión con Google',
'es-ar': 'Acceder con Google',
'fr': 'Se connecter avec Google',
'hi': 'Google से साइन इन करें',
'it': 'Accedi con Google',
'ja': 'Google でログイン',
'kn': 'Google ಖಾತೆ ಬಳಸಿಕೊಂಡು ಸೈನ್ ಇನ್ ಮಾಡಿ',
'ml': 'Google ഉപയോഗിച്ച് സൈൻ ഇൻ ചെയ്യുക',
'mr': 'Google वापरून साइन इन करा',
'nl': 'Inloggen met Google',
'pt-br': 'Fazer login com o Google',
'ta': 'Google மூலம் உள்நுழைக',
'te': 'Googleతో సైన్ ఇన్ చేయండి',
},
};

Expand Down Expand Up @@ -827,6 +858,12 @@ function queryStringHasFreshGaaParams(queryString) {
return false;
}

// Verify access type.
const noAccess = params['gaa_at'] === 'na';
if (noAccess) {
return false;
}

// Verify timestamp isn't stale.
const expirationTimestamp = parseInt(params['gaa_ts'], 16);
const currentTimestamp = Date.now() / 1000;
Expand Down Expand Up @@ -899,9 +936,9 @@ class GaaMeteringRegwall {
// Tell the iframe which language to render.
iframeUrl = addQueryParam(iframeUrl, 'lang', languageCode);

const containerEl = /** @type {!HTMLDivElement} */ (self.document.createElement(
'div'
));
const containerEl = /** @type {!HTMLDivElement} */ (
self.document.createElement('div')
);
containerEl.id = REGWALL_CONTAINER_ID;
setImportantStyles(containerEl, {
'all': 'unset',
Expand Down Expand Up @@ -969,9 +1006,9 @@ class GaaMeteringRegwall {

for (let i = 0; i < ldJsonElements.length; i++) {
const ldJsonElement = ldJsonElements[i];
const ldJson = /** @type {?{ publisher: ?{ name: string } }} */ (parseJson(
ldJsonElement.textContent
));
const ldJson = /** @type {?{ publisher: ?{ name: string } }} */ (
parseJson(ldJsonElement.textContent)
);
if (ldJson?.publisher?.name) {
return ldJson.publisher.name;
}
Expand Down Expand Up @@ -1033,9 +1070,9 @@ class GaaMeteringRegwall {
// Introduce this window to the publisher's Google Sign-In iframe.
// This lets the iframe send post messages back to this window.
// Without the introduction, the iframe wouldn't have a reference to this window.
const googleSignInIframe = /** @type {!HTMLIFrameElement} */ (self.document.getElementById(
GOOGLE_SIGN_IN_IFRAME_ID
));
const googleSignInIframe = /** @type {!HTMLIFrameElement} */ (
self.document.getElementById(GOOGLE_SIGN_IN_IFRAME_ID)
);
googleSignInIframe.onload = () => {
googleSignInIframe.contentWindow.postMessage(
{
Expand Down Expand Up @@ -1149,7 +1186,9 @@ class GaaGoogleSignInButton {
)
.then((googleUser) => {
// Gather GAA user details.
const basicProfile = /** @type {!GoogleUserDef} */ (googleUser).getBasicProfile();
const basicProfile = /** @type {!GoogleUserDef} */ (
googleUser
).getBasicProfile();
/** @type {!GaaUserDef} */
const gaaUser = {
idToken: /** @type {!GoogleUserDef} */ (googleUser).getAuthResponse()
Expand Down
Loading