Sha256: 18425f5fcb8fd3e37bed9fb3bb009b98f48f4eaee3757420fa047cce39cf7a16

Contents?: true

Size: 1.08 KB

Versions: 8

Compression:

Stored size: 1.08 KB

Contents

import { get } from "@rails/request.js";

export async function getHTML(url: string): Promise<string> {
  const response = await get(url, { headers: { "X-Shimmer": "true" } });
  if (response.ok) {
    return await response.response.text();
  }
  return "";
}

export const loaded: Promise<void> = new Promise((res) => {
  document.addEventListener("DOMContentLoaded", () => {
    res();
  });
});

export async function nextFrame(): Promise<void> {
  return new Promise((res) => {
    setTimeout(res, 10);
  });
}

export function createElement(
  parent: HTMLElement,
  className: string
): HTMLDivElement {
  const element = document.createElement("div");
  element.className = className;
  parent.append(element);
  return element;
}

export function guid(): string {
  function s4(): string {
    return Math.floor((1 + Math.random()) * 0x10000)
      .toString(16)
      .substring(1);
  }
  return [s4() + s4(), s4(), s4(), s4(), s4() + s4() + s4()].join("-");
}

export function wait(seconds: number): Promise<void> {
  return new Promise((res) => {
    setTimeout(res, seconds * 1000);
  });
}

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
shimmer-0.0.18 src/util.ts
shimmer-0.0.17 src/util.ts
shimmer-0.0.16 src/util.ts
shimmer-0.0.15 src/util.ts
shimmer-0.0.14 src/util.ts
shimmer-0.0.13 src/util.ts
shimmer-0.0.12 src/util.ts
shimmer-0.0.11 src/util.ts