GeoLeaf Core API - v3.19.0
    Preparing search index...
    • May the ENTITIES of a layer be pulled from url — the source its offline.source.url names?

      Silence is a refusal only in a profile that declares. A profile with no declaration at all pulls from wherever its layers say, as it always did. From the first declaration on, a source is pulled when its origin is declared or is the page's own, and refused otherwise.

      ⚠️ Not prefetchVerdict, on purpose — neither prefetch nor cacheable is read, and an authenticated origin is pullable. prefetch says an origin's terms allow downloading what was not asked for; the layer naming its source IS the request. cacheable rules the Service Worker's cache, and a pull writes the features store, not that cache. And prefetch is dropped from an authenticated declaration: read here, it would make the one kind of source a pull exists for — a data API behind a session — impossible to pull.

      Parameters

      • url: string

        The source URL, absolute or relative to pageUrl.

      • origins: readonly DataOriginDeclaration[]

        Normalised declarations (parseDataOrigins).

      • OptionalpageUrl: string

        The page's URL, which resolves a relative url and defines "own origin".

      Returns PrefetchVerdict

      origin — the parsed origin, or the raw URL when it does not parse — and allowed. A refusal says why, in reason: "undeclared" or "unparsable". An unparsable URL is refused only where a declaration exists; elsewhere the loader's own URL guard judges it.

      const origins = parseDataOrigins(configGet("modules.offline.dataOrigins", []));
      const { allowed, origin } = pullVerdict(source.url, origins, globalThis.location?.href);
      if (!allowed) Log.warn(`Not pulled: ${origin} is not a declared origin`);