MCPcopy
hub / github.com/ampproject/amphtml / createLoaderElement

Function createLoaderElement

src/service/loader-element.js:28–53  ·  view source on GitHub ↗
(
  ampDoc,
  element,
  elementWidth,
  elementHeight,
  startTime = ampDoc.win.Date.now()
)

Source from the content-addressed store, hash-verified

26 * @return {!Element} The loader root element.
27 */
28export function createLoaderElement(
29 ampDoc,
30 element,
31 elementWidth,
32 elementHeight,
33 startTime = ampDoc.win.Date.now()
34) {
35 // We create the loader root element up front, since it is needed
36 // synchronously. We create the actual element with animations when the
37 // service is ready.
38 const loaderRoot = element.ownerDocument.createElement('div');
39
40 getLoaderServicePromise(ampDoc, element).then((loaderService) => {
41 const endTime = ampDoc.win.Date.now();
42 const initDelay = endTime - startTime;
43 loaderService.initializeLoader(
44 element,
45 loaderRoot,
46 initDelay,
47 elementWidth,
48 elementHeight
49 );
50 });
51
52 return loaderRoot;
53}

Callers 2

test-loader.jsFile · 0.90
createLoaderState_Method · 0.90

Calls 4

getLoaderServicePromiseFunction · 0.85
nowMethod · 0.80
initializeLoaderMethod · 0.80
thenMethod · 0.45

Tested by

no test coverage detected