ByNate Jones,
a Vulture senior writer covering movies and pop culture
Using this week’s Gladiator II reactions as a guide, here’s a dictionary for common phrases.
Photo: Paramount
A new Oscar combatant has stepped into the Colosseum. Over the past week, Paramount unveiled Ridley Scott’s Gladiator II to a handpicked audience of journalists and influencers, many of whom duly partook in a cherished awards-season tradition: the post-screening hype tweet.
If you’re unfamiliar, the process behind the post-screening hype tweet is this: When a would-be awards-contender movie screens, it sometimes has two different embargoes. There’s the review embargo, usually set a few days to a few weeks in the future. Then there’s the social-media embargo, which is often up as soon as the movie’s over. The upshot is that the thoughtful, considered reactions take a while to come in, while the most knee-jerk, hyperbolic ones are available immediately.
Years ago, I briefly wondered whether Elon Musk’s takeover of the website formerly known as Twitter would kill off this genre of writing for good. (I secretly hoped it would, because I have always been very bad at these kinds of tweets.) But I was wrong. Despite users fleeing the platform, the post-screening hype tweet lives on. Writers need something to publish to keep getting invited to screenings; publicists need something tangible to show their bosses. These tweets are simply too important to the awards-season ecosystem to ever die.
As a creature of the digital age, the post-screening hype tweet is a cousin of the Letterboxd review. However, their tone and function could not be more different. The guiding principle of a Letterboxd review is to seem as pithy and off-the-cuff as possible. For instance, someone there might write of The Substance, “i would fuck up those directions so bad.” It’s a tricky tonal balancing act to come off as the world’s wittiest and most disaffected cinephile, but thankfully, the goal of a post-screening hype tweet is simpler. One simply announces that one has seen the movie, and it is good. Like a haiku, it is the creation of a moment — ideally, it should be composed before the closing credits have finished.
The whole point of the exercise is to build buzz, but buzz notoriously features a low signal-to-noise ratio. Underneath the hype, it can be hard to understand what anyone’s actually saying. But I’m here to help. Using this week’s Gladiator II reactions as a guide, here’s a dictionary for common phrases in the post-screening hype tweet lexicon:
“Epic!”: The film cost over $100 million.
“A total spectacle!”: The film cost over $200 million.
“I’m buzzing”: The movie is better than Madame Web.
“This film has everything”: Every scene is properly lit and in focus.
“Sicko mode”: There are three shots that will be turned into animated GIFs.
“Totally bad-ass”: There are fight scenes.
“This is the kind of filmmaking that only [X] could pull off”: The director is a straight white man over the age of 65.
“[X] eats”: An actor has at least two close-ups.
“We are so back”: The movie is 20 percent better than the director’s previous film.
“A solid cast”: One person here will be nominated for a Golden Globe.
“[A list of wild-sounding things that happen in the movie]”: The viewer would prefer to list facts about the film instead of praising it.
“Lacks emotional punch”: A polite way of saying mediocre.
“The cinematic event of the year”: The movie will be released before December 31.
Breaking Down the Golden Globes’ Genre Placements
Last week, I mentioned how the intrepid reporters of THRhad broken the awards beat wide open by revealing the category placements for nearly every film in the field. However, one major contender’s status still remained unknown: The Substance. This week brought news that the Coralie Fargeat body-horror film will compete as a comedy at the Globes, which means every title is present and accounted for. To celebrate the occasion, here is a completely objective, totally infallible ruling about which placements are correct:
Movies I haven’t seen so I don’t have an opinion on:Nightbitch.
Oddly enough, while films in the past have sometimes tried to improve their chances by passing themselves off as Comedies or Musicals, this year, a number of female contenders might have been better off fudging the other way. As it stands, Demi Moore is probably not going to beat out Mikey Madison or Karla Sofía Gascón for the Best Actress in a Comedy or Musical trophy. Could she have had a puncher’s chance at the win in Drama? Similarly, Hard Truths is a borderline case — I laughed enough that I’d peg it as a Comedy — but I wonder if it’s running in Drama partly to ensure that Marianne Jean-Baptiste gets in. On the guys’ side, things have returned to their natural order, with Drama being far more competitive. But it’s not just about one night in January. Globes placement is also a way of positioning a film in the wider awards landscape, as you can see from unserious contenders (positive) like Babygirl and Conclave attempting to bolster their prestige bona fides by competing on the serious side of the ballot.
Oscar Futures: Does Conclave Have Mass Appeal?
Every week between now and January 17, when the nominations for the Academy Awards are announced, Vulture will consult its crystal ball to determine the changing fortunes in this year’s Oscars race. In our “Oscar Futures” column, we’ll let you in on insider gossip, parse brand-new developments, and track industry buzz to figure out who’s up, who’s down, and who’s currently leading the race for a coveted Oscar nomination.
Best Picture
Up
Conclave
Here’s the secret to Conclave, which hits theaters this weekend: Underneath its papal pomp and regal bearing, this thing is pulp through and through. That marriage of high-gloss production and airport-novel source material puts Conclave in the awards-season sweet spot, allowing audiences to have fun while also feeling like a serious work of cinema. While it remains to be seen whether the film has enough heft to land the big trophy — some may find it ill equipped for its attempts to engage with contemporary political debates — the festival crowd-pleasershould slot comfortably into a whole host of categories.
Even
Gladiator II
I was not at those early Gladiator screenings, so for the moment, I must read omens and portents to divine its awards destiny. What I foresee from myownauspices is that, while apparently very entertaining, the sequel will have difficulty matching the success of its Oscar-winning predecessor. Nevertheless, there are enough positives to make me believe Gladiator II could challenge for a spot in a fairly open Best Picture category, even if it’s only a serious threat in one above-the-line race.
Current Predix
Anora, Blitz, The Brutalist, Conclave, Dune: Part Two, Emilia Pérez, Nickel Boys, A Real Pain, September 5, Sing Sing
Best Director
Up
Edward Berger
Though Berger’s All Quiet on the Western Frontultimately won four Oscars, the German director couldn’t break through with a branch that loves both technical prowess and international auteurs. Why not? My guess is that, having made his name in TV, he was not a creature of the global festival circuit the way rivals like Ruben Östlund were. Now that Berger’s work is Academy-certified, he should have more luck, especially as his painterly compositions do the heavy lifting in elevating the film above its source material.
Up
Brady Corbet
The viewing public got its first look at The Brutalist this week, as A24 unveiled a minute-long teaser that accurately communicates the film’s scope and ambition. The Letterboxd contingent has preemptively declared The Brutalist their favorite film of 2024, and I have a hunch the director’s branch may respond to this three-hour behemoth the exact same way.
Current Predix
Jacques Audiard, Emilia Pérez; Sean Baker, Anora; Edward Berger, Conclave; Brady Corbet, The Brutalist; Denis Villeneuve, Dune: Part Two
Best Actor
Up
Ralph Fiennes, Conclave
Fiennes is magnificent as a cardinal whose motivations remain a mystery even to himself. Tasked with leading the selection of a new pope, he goes from neutral guardian of the process to a political actor in his own right. (But enough about the Supreme Court!) Having been nominated twice and never won, Fiennes could amass some career-achievement momentum, though he won’t have the benefit of public vote counts and multiple rounds of voting the way they do in Conclave.
Down
Paul Mescal, Gladiator II
Et tu, Ridley? With such a weak Best Actor slate, a few pundits slotted Mescal into their Oscar five sight unseen. Now, word is that, while the indie heartthrob proves himself capable of shouldering a big-budget tentpole, the film around him is not such that we should necessarily expect a Best Actor nomination. (It doesn’t help, either, that one of his co-stars is earning raves for stealing the movie.) Red arrow aside, Mescal also got honored at an Academy gala last weekend, so just like every week, it was still a good week to be Paul Mescal.
Current Predix
Adrien Brody, The Brutalist; Daniel Craig, Queer; Colman Domingo, Sing Sing; Ralph Fiennes, Conclave; Sebastian Stan, The Apprentice
Best Actress
Up
Mikey Madison, Anora
Anora posted gaudy numbers in extremely limited release, pulling a $90,000 per-screen average that stands as this year’s high-water mark. That’s in the same neighborhood as Moonlight and Lady Bird, though far short of what Parasite and La La Land put up. Step one complete in Anora’s path to becoming a top-tier contender, which boosts Madison’s candidacy in turn. However, I can’t help noticing how nearlyeveryinterview calls the 25-year-old “shy and soft-spoken,” which makes me question whether she’ll be able to mount the kind of full-scale charm offensive we saw from the ingénues of the 2010s. How will the Oscars handle the generational shift from millennial careerism to Gen-Z self-care?
Up
Demi Moore, The Substance
The Substance just passed $30 million worldwide, outperforming just about everyone’s expectations for a grotesque horror-comedy released by a niche streaming service. Moore still faces an uphill climb to get nominated for this extremely un-Oscar-y film, but Mubi has succeeded at making The Substance into a cultural event — a necessary task if this train is to go all the way.
Current Predix
Karla Sofía Gascón, Emilia Pérez; Marianne Jean-Baptiste, Hard Truths; Angelina Jolie, Maria; Nicole Kidman, Babygirl; Mikey Madison, Anora
Best Supporting Actor
Up
Stanley Tucci, Conclave
As the embodiment of honorable, impotent liberalism, Tucci is probably the most likely candidate for a Conclave coattail nomination. (Lest you forget, he’s only been nominated once, for The Lovely Bones.) Still, he’s kind of just doing his Stanley Tucci thing. Which isn’t always fatal — theLittle Gold Men podcast compared his performance to J.K. Simmons’s nominated turn in Being the Ricardos — but does leave him open to being usurped by a buzzier performance. Like, say …
Up
Denzel Washington, Gladiator II
One thing I believe from the Gladiator II tweets is that Washington’s cape-loving schemer truly is the clear standout. After all, he was able to run away with the entire trailer using only two words; given a whole movie, the sky’s the limit. “The Denzel Washington hype is even realer than you think,” says the Ankler’s Katey Rich, who marvels, “After watching Gladiator II, I felt certain there’s no better living movie star.” He’s already won twice, but if anyone deserves to dance at the Three Trophy Club, it’s Denzel.
Current Predix
Kieran Culkin, A Real Pain; Clarence Maclin, Sing Sing; Guy Pearce, The Brutalist; Jeremy Strong, The Apprentice; Stanley Tucci, Conclave
Best Supporting Actress
Up
Isabella Rossellini, Conclave
I watched Conclave a second time last week just to see how Rossellini’s big scene played with a crowd. (My first viewing took place in a nearly empty screening room, with someone snoring in the row behind.) Actually, it’s more of a moment: As a nun who gets wrapped up in the papal shenanigans, she spends much of the film observing silently from the sidelines before getting a beat that reliably brings down the house. Her screen time is even more scant than Judd Hirsch in The Fabelmans — at least he got a whole monologue — but the audience response, combined with Rossellini’s stature in the industry, has me starting to believe.
Up
Joan Chen, Dìdi
The regional film festivals play a vital role putting wind in the sails of early-season contenders like Chen, who just received a career-achievement award from the Newport Beach Film Festival and will get another next month in Denver. Rack up those frequent-flier miles! Unfortunately, she’s competing for Focus’s resources in this category with Rossellini, who’ll receive her own career tribute at December’s European Film Awards.
Current Predix
Danielle Deadwyler, The Piano Lesson; Felicity Jones, The Brutalist; Saoirse Ronan, Blitz; Isabella Rossellini, Conclave; Zoe Saldaña, Emilia Pérez
By submitting your email, you agree to our
Terms and Privacy Notice
and to receive email correspondence from us. This site is protected by reCAPTCHA and the Google
Privacy Policy and
Terms of Service apply.
or
Already a subscriber?
What is your email?
This email will be used to sign into all New York sites. By submitting your email, you agree to our Terms and Privacy Policy and to receive email correspondence from us.
Password must be at least 8 characters and contain:
Lower case letters (a-z)
Upper case letters (A-Z)
Numbers (0-9)
Special Characters (!@#$%^&*)
This password will be used to sign into all New York sites. By submitting your email, you agree to our Terms and Privacy Policy and to receive email correspondence from us.
You’re in!
As part of your account, you’ll receive occasional updates and offers from New York, which you can opt out of anytime.
or
Already a subscriber?
What is your email?
This email will be used to sign into all New York sites. By submitting your email, you agree to our Terms and Privacy Policy and to receive email correspondence from us.
Password must be at least 8 characters and contain:
Lower case letters (a-z)
Upper case letters (A-Z)
Numbers (0-9)
Special Characters (!@#$%^&*)
This password will be used to sign into all New York sites. By submitting your email, you agree to our Terms and Privacy Policy and to receive email correspondence from us.
You’re in!
As part of your account, you’ll receive occasional updates and offers from New York, which you can opt out of anytime.
Already a subscriber?
Already a subscriber?
`;
// integrate Sub(x) scripts and elements
if (hostname !== 'subs.nymag.com') { // do not integrate on this subdomain
document.head.appendChild(trackingScript);
document.body.insertAdjacentHTML('beforeend', subXAnimationElements);
}
There was an error processing the request. Please try again later."}).catch(e=>console.error("Error verifying email: ",e)))(r.querySelector(".content"),o.bannerCTAVerification)})):(l.remove(),s.remove()),o.dismissable||n.remove(),o.useAlertIcon||a.remove(),r.classList.add("show"),n.addEventListener("click",()=>{u(),r.classList.remove("show")})}else r.remove()}});
}, {"1":1,"6":6,"12":12,"35":35,"40":40}];
window.modules["global-nav.client"] = [function(require,module,exports){"use strict";const dom=require(4),auth=require(12),signInButton=dom.find(".user-signin"),signOutButton=dom.find(".user-signout"),globalNav=dom.find('[class^="global-nav"]'),body=dom.find("body"),dropdownItems=dom.findAll(".dropdown-wrap"),gtm=require(1),appendLandingPageParams=require(135),pageUri=require(124).getPageUri(),subscriptionPromoLinks=dom.findAll(".persist-params"),searchString=window.location.search||"";function closeDropdowns(e){let n=globalNav.querySelectorAll(".dropdown.open");dropdownItems.forEach(function(t){let o=t.querySelector(".dropdown");!n||t.contains(e.target)&&27!==e.keyCode||o.classList.remove("open")})}function gtmSendReport(e,n,t){let o={eventCategory:"ecommerce",eventAction:"componentClick",brand:e,dimension23:"global-nav",list:pageUri,pageZone:"header",variant:"nav-link"};"global-nav-link"===t&&(o.eventLabel=n.href),gtm.reportNow(o)}function updateElementTargetUrlsIfQueryStrings(e){if(searchString){const n=new URLSearchParams(searchString);let t=e.href;if(t.includes("?")){const o=t.split("?"),i=new URLSearchParams(o[1]);for(let e of n.entries())i.set(e[0],e[1]);t=`${o[0]}?${i.toString()}`,e.href=t}else e.href=`${t}?${n.toString()}`}}function init(e){const n=e.querySelectorAll(".to-landing-page");window.addEventListener("auth:init",()=>{signInButton.addEventListener("click",function(e){e.preventDefault(),auth.showEmbeddedLoginFlow("top navigation")}),signOutButton.addEventListener("click",function(e){e.preventDefault(),gtmSendReport("Sign Out",e.target,"user-info-link"),auth.logout()}),auth.isAuthenticated()&&e.classList.add("signed-in"),auth.isSubscriber()&&e.classList.add("subscribed"),e.querySelectorAll(".user-link").forEach(e=>{e.classList.add("active")}),subscriptionPromoLinks.forEach(e=>{updateElementTargetUrlsIfQueryStrings(e)}),appendLandingPageParams(n)})}dropdownItems.forEach(function(e){e.addEventListener("click",function(){e.querySelector(".dropdown").classList.toggle("open")})}),body.addEventListener("click",closeDropdowns),document.addEventListener("keydown",closeDropdowns),globalNav.addEventListener("click",function(e){let n=e.target;n.classList.contains("global-nav-track")&>mSendReport(n.text,n,"global-nav-link")}),module.exports=init;
}, {"1":1,"4":4,"12":12,"124":124,"135":135}];
window.modules["aaa-module-mounting.legacy"] = [function(require,module,exports){"use strict";const _pickBy=require(221),_each=require(406),Fingerprint2=require(408),DS=require(407),Eventify=require(246);function registerGlobals(){window.DS=DS,window.Eventify=Eventify,window.Fingerprint2=Fingerprint2,DS.value("Eventify",Eventify),DS.value("Fingerprint2",Fingerprint2),DS.value("$document",window.document),DS.value("$window",window)}function mountDollarSliceComponents(){DS.service("components",["$document","$module",function(e,n){var o=_pickBy(n.definitions,e=>e.providerStrategy===n.providers.controller),r=Object.keys(o);function t(e){return o=>{try{n.get(e,o)}catch(e){logMountError(o,e)}}}_each(r,n=>{var o=e.querySelectorAll('[data-uri*="/_components/'+n+'/"]'),r=e.querySelectorAll('[data-uri$="/_components/'+n+'"]');_each(o,t(n)),_each(r,t(n))}),this.components=r}]),DS.get("components")}function logMountError(e,n){const o=e.outerHTML.slice(0,e.outerHTML.indexOf(e.innerHTML));console.error("Error attaching controller to "+o,n)}registerGlobals(),"loading"===document.readyState?document.addEventListener("DOMContentLoaded",()=>{mountDollarSliceComponents()}):mountDollarSliceComponents();
}, {"221":221,"246":246,"406":406,"407":407,"408":408}];
window.modules["ads.legacy"] = [function(require,module,exports){"use strict";const _map=require(118),_forEach=require(107),_isString=require(268),_intersectionWith=require(409),_isEqual=require(274),_each=require(406),_debounce=require(182),_sortBy=require(205),page=require(124),visit=require(114);DS.service("adService",["Eventify","$cid","$document","$window",function(e,t,a,i){var o,n,s,r,d,c,u,l,g={},p=this,h=[],f=visit.getQueryParamsObject(["utm_campaign"]),m=document.querySelector('script[data-type="ad-a9"]'),b=[],w=!1,v=[],y=document.querySelector('script[data-name="ad-doubleverify"]');document.querySelector('script[data-name="concert-ads"]')||(i.NYM={},i.NYM.analytics={},i.NYM.analytics.adStartTime=i.performance.now(),i.googletag=i.googletag||{},i.googletag.cmd=i.googletag.cmd||[],u=i.googletag,(m||y)&&(i.googletag.cmd=i.googletag.cmd||[],i.googletag.cmd.push(function(){i.googletag.pubads().disableInitialLoad()})),m&&(l=i.setInterval(function(){void 0!==window.apstag&&void 0!==window.apstag.timeout&&(i.clearInterval(l),window.apstag.cleared=!0,l=null)},10),setTimeout(function(){l&&(i.clearInterval(l),i.googletag.pubads().refresh(),window.apstag||console.log("MESSAGE: Timeout for A9 load exceeded, aborting"))},500)),y&&(b.push(new Promise(function(e){w?e():v.push(e)})),c=i.setTimeout(T,2500)),o=function(e){var t,a,o=e.data,n=[];return o.loaded?e:(o.loaded=!0,t=null,(t=o.sizes?u.defineSlot(o.name,o.sizes,o.id).addService(u.pubads()):u.defineOutOfPageSlot(o.name,o.id).addService(u.pubads())).setTargeting("adid",o.id),f.hasOwnProperty("utm_campaign")&&t.setTargeting("utmcamp",f.utm_campaign),a=p.getAdCount(o.label),t.setTargeting("label",o.label+"_"+o.site+"-"+a),u.display(o.id),u.pubads().addEventListener("slotOnload",function(){i.NYM.analytics.firstAdLoadTime||(i.NYM.analytics.firstAdLoadTime=i.performance.now(),i.NYM.analytics.firstAdLoadLabel=e.data.label)}),n=_(o),Promise.all(b).then(function(){n?window.apstag&&window.apstag.cleared?window.apstag.fetchBids({slots:[n],timeout:window.apstag.timeout},function(){u.cmd.push(function(){window.apstag.setDisplayBids(),u.pubads().refresh([t],{changeCorrelator:!1})})}):y&&u.pubads().refresh([t],{changeCorrelator:!1}):u.pubads().refresh([t],{changeCorrelator:!1})}),e.slot=t,e)},n=function(e){var a,i,o,n=t(),s=e.getAttribute("data-name"),r=e.getAttribute("data-sizes"),d=e.getAttribute("data-label"),c=e.getAttribute("data-site");n=e.id,r&&r.length?(r=r.split(","),a=[],_map(r,function(e){e=e.split("x"),i=parseInt(e[0]),o=parseInt(e[1]),a.push([i,o])})):(e.classList.add("oop"),a=!1),this.data={id:n,name:s,sizes:a,loaded:!1,label:d,site:c},g[n]=this},r=function(e){u.cmd.push(function(){var t=o(e);g[e.data.id]=t})},s=function(e){var t=[];e.slot?(t=_(e))&&window.apstag&&window.apstag.cleared&&window.apstag.fetchBids({slots:[t],timeout:window.apstag.timeout},function(){u.cmd.push(function(){window.apstag.setDisplayBids(),u.pubads().refresh([e.slot],{changeCorrelator:!1})})}):e&&r(e)},u.cmd.push(function(){var e,t,o,n=page.getMeta("article:tag"),s=page.getMeta("author"),r=i.location.href,d=(e=a.head.querySelector(".head-gtm"),t=a.body.querySelector(".gtm"),e&&"top"===e.getAttribute("data-gtm")?"gtmtop":t&&"bottom"===t.getAttribute("data-gtm")?"gtmbottom":"");o=[],_forEach([n,s,d],function(e){_forEach(e.split(","),function(e){(e=e.trim().toLowerCase().replace(/\s/g,"-").replace(/\'|\’/g,"")).length&&o.push(e)})}),u.pubads().setTargeting("kw",o),u.pubads().setTargeting("entry_group",o),r=r.slice(r.lastIndexOf("/")+1),u.pubads().setTargeting("pn",r),u.companionAds().setRefreshUnfilledSlots(!0),u.pubads().enableAsyncRendering(),u.enableServices()}),this.load=r,this.create=function(e){return new n(e)},this.refresh=function(e){var t;_isString(e)?(t=this.getById(e),s(t)):s(e)},this.remove=function(e){var t=e.data.id;a.getElementById(t).innerHTML=""},this.getAdCount=function(e){var t,a=0,i=Object.keys(g);return _each(i,function(i){(t=g[i]).data.loaded&&t.data.label===e&&a++}),a},this.getById=function(e){return g[e]},d=_debounce(function(){var e={TopLeaderboard:1,RightColTopMPU:2,outOfPage:99,"homepageTakeover/TopLeaderboard":1},t=_sortBy(h,function(t){return e[t.data.label]||10});_forEach(t,function(e){return e.data.sizes?r(e):i.setTimeout(function(){r(e)},2e3)}),y&&window.PQ.cmd.push(()=>{try{window.PQ.loadSignals(["ids","bsc","vlp"],T)}catch(e){T(),console.error(`There has been an error loading Double Verify signals: ${e}`)}}),h=[]},10),this.addToPageLoadQueue=function(e){h.push(e),d()});function _(e){var t,a=e.sizes;return a=_intersectionWith(a,[[970,250],[970,90],[728,90],[300,600],[300,250],[320,100],[320,50]],_isEqual),e.sizes&&e.sizes.length&&(t={slotID:e.id,sizes:a,slotName:e.label}),t}function T(){i.clearTimeout(c),w=!0,_forEach(v,function(e){e()})}}]);
}, {"107":107,"114":114,"118":118,"124":124,"182":182,"205":205,"268":268,"274":274,"406":406,"409":409}];
window.modules["cid.legacy"] = [function(require,module,exports){"use strict";DS.service("$cid",function(){var r=Math.floor(100*Math.random());return function(){return"cid-"+ ++r}});
}, {}];
window.modules["client.legacy"] = [function(require,module,exports){"use strict";require("cid.legacy"),require("ads.legacy"),require("facebook.legacy"),require("aaa-module-mounting.legacy");
}, {"cid.legacy":"cid.legacy","ads.legacy":"ads.legacy","facebook.legacy":"facebook.legacy","aaa-module-mounting.legacy":"aaa-module-mounting.legacy"}];
window.modules["facebook.legacy"] = [function(require,module,exports){"use strict";DS.service("facebook",[function(){this.fb=function(i){window.FB&&window.FB[i].apply(this,Array.prototype.slice.call(arguments,1))}}]);
}, {}];
require=(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o typeof key === 'string' && key.match(/\.legacy$/)).forEach(key => window.require(key));
}
function tryToMount(fn, el, name) {
try {
fn(el); // init the controller
} catch (e) {
const elementTag = el.outerHTML.slice(0, el.outerHTML.indexOf(el.innerHTML));
console.error(`Error initializing controller for "${name}" on "${elementTag}"`, e);
}
}
/**
* mount client.js component controllers
*/
function mountComponentModules() {
Object.keys(window.modules).filter(key => typeof key === 'string' && key.match(/\.client$/)).forEach(key => {
let controllerFn = window.require(key);
if (typeof controllerFn === 'function') {
const name = key.replace('.client', ''),
instancesSelector = `[data-uri*="_components/${name}/"]`,
defaultSelector = `[data-uri$="_components${name}"]`,
instances = document.querySelectorAll(instancesSelector),
defaults = document.querySelectorAll(defaultSelector);
for (let el of instances) {
tryToMount(controllerFn, el, name);
}
for (let el of defaults) {
tryToMount(controllerFn, el, name);
}
}
});
}
// Make sure that a `window.process.env.NODE_ENV` is available in the client for any dependencies,
// services, or components that could require it
// note: the `` value is swapped for the actual environment variable in /lib/cmd/compile/scripts.js
window.process = window.process || {};
window.process.env = window.process.env || {};
if (!window.process.env.NODE_ENV) {
window.process.env.NODE_ENV = '';
}
// note: legacy controllers that require legacy services (e.g. dollar-slice) must
// wait for DOMContentLoaded to initialize themselves, as the files themselves must be mounted first
mountLegacyServices();
mountComponentModules();
// ]]