GeoLeaf Core API - v3.0.0
    Preparing search index...
    FetchManager: {
        fetch(
            resource: FetchResource,
            options?: FetchOptions,
        ): Promise<FetchResult>;
        fetchAll(
            resources: FetchResource[],
            options?: {
                concurrency?: number;
                signal?: AbortSignal;
                onResource?: (
                    r: FetchResource,
                    result: FetchResult | null,
                    error: unknown,
                ) => void;
            },
        ): Promise<
            { resource: FetchResource; result?: FetchResult; error?: unknown }[],
        >;
        isModified(
            url: string,
            cachedMetadata: { etag?: string | null; lastModified?: string | null },
            options?: { signal?: AbortSignal },
        ): Promise<boolean>;
    } = ...

    Type Declaration

    • fetch: function
      • Fetch and parse a resource

        Parameters

        • resource: FetchResource

          Resource to fetch

          • url

            Resource URL

          • type

            Resource type (tile, icon, config, etc)

          • optional

            Is optional

        • Optionaloptions: FetchOptions = {}

          Fetch options

          • signal

            Abort signal

        Returns Promise<FetchResult>

        Parsed resource with metadata

        If fetch fails (unless optional and 404)

        const resource = {
        url: 'https://example.com/icon.svg',
        type: 'icon'
        };
        const result = await FetchManager.fetch(resource);
        // result = { data, size, metadata }
    • fetchAll: function
      • Fetch multiple resources in parallel with worker pool

        Parameters

        • resources: FetchResource[]

          Resources to fetch

        • options: {
              concurrency?: number;
              signal?: AbortSignal;
              onResource?: (
                  r: FetchResource,
                  result: FetchResult | null,
                  error: unknown,
              ) => void;
          } = {}

          Options

          • Optionalconcurrency?: number

            Number of concurrent workers

          • Optionalsignal?: AbortSignal

            Abort signal

          • OptionalonResource?: (r: FetchResource, result: FetchResult | null, error: unknown) => void

            Callback per resource (resource, result, error)

        Returns Promise<{ resource: FetchResource; result?: FetchResult; error?: unknown }[]>

        Fetch results

        const results = await FetchManager.fetchAll(resources, {
        concurrency: 5,
        onResource: (resource, result, error) => {
        console.log(resource.url, result ? 'OK' : error);
        }
        });
    • isModified: function
      • Check if resource has been modified (using ETag/Last-Modified)

        Parameters

        • url: string

          Resource URL

        • cachedMetadata: { etag?: string | null; lastModified?: string | null }

          Cached metadata

        • Optionaloptions: { signal?: AbortSignal } = {}

          Options

          • Optionalsignal?: AbortSignal

            Abort signal

        Returns Promise<boolean>

        True if modified