Skip to content

Commit

Permalink
Merge branch 'master' into multi_selector_bug
Browse files Browse the repository at this point in the history
  • Loading branch information
Micajuine Ho committed Mar 24, 2020
2 parents 0068ebd + 01b9bb5 commit 89b3a76
Show file tree
Hide file tree
Showing 13 changed files with 121 additions and 90 deletions.
96 changes: 64 additions & 32 deletions babel.config.js
Expand Up @@ -32,45 +32,76 @@ const argv = minimist(process.argv.slice(2));
const isClosureCompiler =
argv._.includes('dist') || argv._.includes('check-types');
const {esm} = argv;
const noModuleTarget = {
'browsers': isTravisBuild()
? ['Last 2 versions', 'safari >= 9']
: ['Last 2 versions'],

const targets = esm => {
if (esm) {
return {'esmodules': true};
}

if (isTravisBuild()) {
return {'browsers': ['Last 2 versions', 'safari >= 9']};
}

return {'browsers': ['Last 2 versions']};
};

const plugins = [
'./build-system/babel-plugins/babel-plugin-transform-fix-leading-comments',
'@babel/plugin-transform-react-constant-elements',
[
'@babel/plugin-transform-classes',
{
loose: false,
},
],
[
const plugins = esm => {
const leadingComments =
'./build-system/babel-plugins/babel-plugin-transform-fix-leading-comments';
const reactConstantElements =
'@babel/plugin-transform-react-constant-elements';
const transformJSX = [
'@babel/plugin-transform-react-jsx',
{
pragma: 'Preact.createElement',
pragmaFrag: 'Preact.Fragment',
useSpread: true,
},
],
];
];
const transformClasses = [
'@babel/plugin-transform-classes',
{
loose: false,
},
];

if (esm) {
return [leadingComments, reactConstantElements, transformJSX];
}

return [
leadingComments,
reactConstantElements,
transformClasses,
transformJSX,
];
};

const esmPresets = [
'babel-preset-modules',
{
'loose': true,
},
];
const presets = [
'@babel/preset-env',
{
'modules': isClosureCompiler ? false : 'commonjs',
'loose': true,
'targets': noModuleTarget,
},
];
const presets = esm => {
if (esm) {
return [
[
'@babel/preset-env',
{
'modules': false,
'targets': targets(esm),
'bugfixes': true,
},
],
];
}

return [
[
'@babel/preset-env',
{
'modules': isClosureCompiler ? false : 'commonjs',
'loose': true,
'targets': targets(esm),
},
],
];
};

// eslint-disable-next-line local/no-module-exports
module.exports = function(api) {
Expand All @@ -80,9 +111,10 @@ module.exports = function(api) {
if (isClosureCompiler && !esm) {
return {};
}

return {
'plugins': plugins,
'presets': [esm ? esmPresets : presets],
'plugins': plugins(esm),
'presets': presets(esm),
'compact': false,
'sourceType': 'module',
};
Expand Down
5 changes: 3 additions & 2 deletions build-system/tasks/serve.js
Expand Up @@ -21,6 +21,7 @@ const header = require('connect-header');
const log = require('fancy-log');
const minimist = require('minimist');
const morgan = require('morgan');
const path = require('path');
const watch = require('gulp-watch');
const {
lazyBuildExtensions,
Expand Down Expand Up @@ -110,8 +111,8 @@ async function startServer(
* live-reload.
*/
function resetServerFiles() {
for (const serverFile in serverFiles) {
delete require.cache[serverFiles[serverFile]];
for (const serverFile of serverFiles) {
delete require.cache[path.resolve(serverFile)];
}
}

Expand Down
6 changes: 4 additions & 2 deletions extensions/amp-analytics/0.1/amp-analytics.js
Expand Up @@ -35,7 +35,7 @@ import {Services} from '../../../src/services';
import {Transport} from './transport';
import {dev, devAssert, rethrowAsync, user} from '../../../src/log';
import {dict, hasOwn} from '../../../src/utils/object';
import {expandTemplate} from '../../../src/string';
import {endsWith, expandTemplate, startsWith} from '../../../src/string';
import {getMode} from '../../../src/mode';
import {installLinkerReaderService} from './linker-reader';
import {isArray, isEnumValue} from '../../../src/types';
Expand Down Expand Up @@ -360,7 +360,9 @@ export class AmpAnalytics extends AMP.BaseElement {
this.addTrigger_(trigger);
} else if (
trigger['selector'] &&
!Array.isArray(trigger['selector'])
!Array.isArray(trigger['selector']) &&
startsWith(trigger['selector'], '${') &&
endsWith(trigger['selector'], '}')
) {
// Expand the selector using variable expansion.
return this.variableService_
Expand Down
22 changes: 11 additions & 11 deletions extensions/amp-social-share/0.2/social-share.css.js
Expand Up @@ -23,34 +23,34 @@ export const BASE_STYLE = {
};

/* Twitter Styling */
export const SOCIAL_SHARE_TWITTER = {'backgroundColor': '1da1f2'};
export const TWITTER = {'backgroundColor': '1da1f2'};

/* Facebook Styling */
export const SOCIAL_SHARE_FACEBOOK = {'backgroundColor': '#32529f'};
export const FACEBOOK = {'backgroundColor': '#32529f'};

/* Pinterest Styling */
export const SOCIAL_SHARE_PINTEREST = {'backgroundColor': 'e60023'};
export const PINTEREST = {'backgroundColor': 'e60023'};

/* LinkedIn Styling */
export const SOCIAL_SHARE_LINKEDIN = {'backgroundColor': '0077b5'};
export const LINKEDIN = {'backgroundColor': '0077b5'};

/* Google+ Styling */
export const SOCIAL_SHARE_GPLUS = {'backgroundColor': 'dc4e41'};
export const GPLUS = {'backgroundColor': 'dc4e41'};

/* Tumblr Styling */
export const SOCIAL_SHARE_TUMBLR = {'backgroundColor': '3c5a77'};
export const TUMBLR = {'backgroundColor': '3c5a77'};

/* Email Styling */
export const SOCIAL_SHARE_EMAIL = {'backgroundColor': '000000'};
export const EMAIL = {'backgroundColor': '000000'};

/* Whatsapp Styling */
export const SOCIAL_SHARE_WHATSAPP = {'backgroundColor': '25d366'};
export const WHATSAPP = {'backgroundColor': '25d366'};

/* line Styling */
export const SOCIAL_SHARE_LINE = {'backgroundColor': '52b448'};
export const LINE = {'backgroundColor': '52b448'};

/* SMS Styling */
export const SOCIAL_SHARE_SMS = {'backgroundColor': 'ca2b63'};
export const SMS = {'backgroundColor': 'ca2b63'};

/* "system" styling */
export const SOCIAL_SHARE_SYSTEM = {'backgroundColor': '000000'};
export const SYSTEM = {'backgroundColor': '000000'};
6 changes: 3 additions & 3 deletions extensions/amp-social-share/0.2/social-share.js
Expand Up @@ -63,9 +63,9 @@ export function SocialShare(props) {
}
}

const styleType = `SOCIAL_SHARE_${props['type'].toUpperCase()}`;
const type = props['type'].toUpperCase();
const baseStyle = CSS.BASE_STYLE;
const backgroundStyle = CSS[styleType];
const backgroundStyle = CSS[type];
const size = {
width: props['width'] || DEFAULT_WIDTH,
height: props['height'] || DEFAULT_HEIGHT,
Expand All @@ -82,7 +82,7 @@ export function SocialShare(props) {
>
<SocialShareIcon
style={{...backgroundStyle, ...baseStyle, ...size}}
styleType={styleType}
type={type}
/>
</div>
);
Expand Down
5 changes: 4 additions & 1 deletion extensions/amp-story-education/0.1/amp-story-education.js
Expand Up @@ -17,6 +17,7 @@
import {
Action,
StateProperty,
UIType,
} from '../../amp-story/1.0/amp-story-store-service';
import {CSS} from '../../../build/amp-story-education-0.1.css';
import {Layout} from '../../../src/layout';
Expand Down Expand Up @@ -98,7 +99,9 @@ export class AmpStoryEducation extends AMP.BaseElement {
createShadowRootWithStyle(this.element, this.containerEl_, CSS);

this.viewer_ = Services.viewerForDoc(this.element);
if (this.viewer_.isEmbedded()) {
const isMobileUI =
this.storeService_.get(StateProperty.UI_STATE) === UIType.MOBILE;
if (this.viewer_.isEmbedded() && isMobileUI) {
this.maybeShowScreen_(
Screen.ONBOARDING_NAVIGATION_TAP_AND_SWIPE,
State.NAVIGATION_TAP
Expand Down
11 changes: 8 additions & 3 deletions extensions/amp-story/1.0/page-advancement.js
Expand Up @@ -966,12 +966,17 @@ class MediaBasedAdvancement extends AdvancementConfig {
this.mediaElement_,
'Media element was unspecified.'
);

this.unlistenFns_.push(
listenOnce(mediaElement, 'ended', () => this.onAdvance())
);
this.unlistenFns_.push(
listenOnce(mediaElement, 'timeupdate', () => this.onProgressUpdate())
);

this.onProgressUpdate();

this.timer_.poll(POLL_INTERVAL_MS, () => {
this.onProgressUpdate();
return !this.isRunning();
});
}

/** @private */
Expand Down
1 change: 0 additions & 1 deletion package.json
Expand Up @@ -46,7 +46,6 @@
"babel-plugin-istanbul": "6.0.0",
"babel-plugin-minify-replace": "0.5.0",
"babel-plugin-transform-es2015-modules-commonjs": "6.26.2",
"babel-preset-modules": "0.0.2",
"babelify": "10.0.0",
"baconipsum": "0.1.2",
"base62": "2.0.1",
Expand Down
9 changes: 4 additions & 5 deletions src/preact/base-element.js
Expand Up @@ -135,11 +135,10 @@ export class PreactBaseElement extends AMP.BaseElement {
* @param {!JsonObject} props
*/
mutateProps(props) {
if (this.defaultProps_) {
Object.assign(this.defaultProps_, props);
} else {
this.defaultProps_ = props;
}
this.defaultProps_ = /** @type {!JsonObject} */ ({
...this.defaultProps_,
...props,
});
this.scheduleRender_();
}

Expand Down
22 changes: 11 additions & 11 deletions third_party/optimized-svg-icons/social-share-svgs.js
Expand Up @@ -5,8 +5,8 @@ import * as Preact from '../../src/preact';
* @return {PreactDef.Renderable}
*/
export function SocialShareIcon(props) {
switch (props['styleType']) {
case 'SOCIAL_SHARE_FACEBOOK':
switch (props['type']) {
case 'FACEBOOK':
return (
<svg {...props} viewBox="0 0 512 512">
<path
Expand All @@ -15,7 +15,7 @@ export function SocialShareIcon(props) {
></path>
</svg>
);
case 'SOCIAL_SHARE_PINTEREST':
case 'PINTEREST':
return (
<svg {...props} viewBox="0 0 512 512">
<path
Expand All @@ -24,7 +24,7 @@ export function SocialShareIcon(props) {
></path>
</svg>
);
case 'SOCIAL_SHARE_LINKEDIN':
case 'LINKEDIN':
return (
<svg {...props} viewBox="0 0 512 512">
<path
Expand All @@ -33,7 +33,7 @@ export function SocialShareIcon(props) {
></path>
</svg>
);
case 'SOCIAL_SHARE_EMAIL':
case 'EMAIL':
return (
<svg {...props} viewBox="0 0 512 512">
<path
Expand All @@ -42,7 +42,7 @@ export function SocialShareIcon(props) {
></path>
</svg>
);
case 'SOCIAL_SHARE_TWITTER':
case 'TWITTER':
return (
<svg {...props} viewBox="0 0 512 512">
<path
Expand All @@ -51,7 +51,7 @@ export function SocialShareIcon(props) {
></path>
</svg>
);
case 'SOCIAL_SHARE_TUMBLR':
case 'TUMBLR':
return (
<svg {...props} viewBox="0 0 512 512">
<path
Expand All @@ -60,7 +60,7 @@ export function SocialShareIcon(props) {
></path>
</svg>
);
case 'SOCIAL_SHARE_WHATSAPP':
case 'WHATSAPP':
return (
<svg {...props} viewBox="0 0 46 46">
<path
Expand All @@ -69,7 +69,7 @@ export function SocialShareIcon(props) {
></path>
</svg>
);
case 'SOCIAL_SHARE_LINE':
case 'LINE':
return (
<svg {...props} viewBox="0 0 512 512">
<path
Expand All @@ -79,7 +79,7 @@ export function SocialShareIcon(props) {
></path>
</svg>
);
case 'SOCIAL_SHARE_SMS':
case 'SMS':
return (
<svg {...props} viewBox="0 0 30 29">
<g fill="none" fillRule="evenodd" stroke="none" strokeWidth="3">
Expand All @@ -91,7 +91,7 @@ export function SocialShareIcon(props) {
</g>
</svg>
);
case 'SOCIAL_SHARE_SYSTEM':
case 'SYSTEM':
return (
<svg {...props} viewBox="0 0 24 24">
<path fill="none" d="M0 0h24v24H0z"></path>
Expand Down
4 changes: 2 additions & 2 deletions third_party/subscriptions-project/config.js
Expand Up @@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/** Version: 0.1.22.96 */
/** Version: 0.1.22.97 */
/**
* Copyright 2018 The Subscribe with Google Authors. All Rights Reserved.
*
Expand Down Expand Up @@ -784,7 +784,7 @@ class PageConfigResolver {
this.configResolver_ = null;
} else if (this.doc_.isReady()) {
this.configResolver_(
Promise.reject(new Error('No config could be discovered in the page'))
Promise.reject(user().createError('No config could be discovered in the page'))
);
this.configResolver_ = null;
}
Expand Down

0 comments on commit 89b3a76

Please sign in to comment.