Loading the leaflet Map in Lightning Web ComponentDynamic component creation in Lightning Web ComponentsWhy Lightning Web ComponentLightning Web Component - Custom NamesSalesforce Lightning Web ComponentGoogle Recaptcha V3 Implementation in Lightning Web ComponentLightning Web ComponentArray.push() won't update Lightning Web Component Viewdata Binding in lightning web componentLightning Web Component Invalid Field Highlight IssueAdd Lightning Web Component to Lightning Tab

Is it true that good novels will automatically sell themselves on Amazon (and so on) and there is no need for one to waste time promoting?

Worshiping one God at a time?

How to get the n-th line after a grepped one?

Should I use acronyms in dialogues before telling the readers what it stands for in fiction?

Optimising a list searching algorithm

What does "Four-F." mean?

Is it possible to stack the damage done by the Absorb Elements spell?

What should I install to correct "ld: cannot find -lgbm and -linput" so that I can compile a Rust program?

Calculate the frequency of characters in a string

HP P840 HDD RAID 5 many strange drive failures

Violin - Can double stops be played when the strings are not next to each other?

PTIJ What is the inyan of the Konami code in Uncle Moishy's song?

Pronounciation of the combination "st" in spanish accents

Loading the leaflet Map in Lightning Web Component

Is there a creature that is resistant or immune to non-magical damage other than bludgeoning, slashing, and piercing?

Suggestions on how to spend Shaabath (constructively) alone

Maths symbols and unicode-math input inside siunitx commands

Comment Box for Substitution Method of Integrals

Unfrosted light bulb

Would it be believable to defy demographics in a story?

World War I as a war of liberals against authoritarians?

gerund and noun applications

Are dual Irish/British citizens bound by the 90/180 day rule when travelling in the EU after Brexit?

How to define limit operations in general topological spaces? Are nets able to do this?



Loading the leaflet Map in Lightning Web Component


Dynamic component creation in Lightning Web ComponentsWhy Lightning Web ComponentLightning Web Component - Custom NamesSalesforce Lightning Web ComponentGoogle Recaptcha V3 Implementation in Lightning Web ComponentLightning Web ComponentArray.push() won't update Lightning Web Component Viewdata Binding in lightning web componentLightning Web Component Invalid Field Highlight IssueAdd Lightning Web Component to Lightning Tab













3















When I am trying to load the lightning web component map is not loading.



<template>
<div id="map" lwc:dom="manual"></div>
</template>

import LightningElement,api from 'lwc';
import ShowToastEvent from 'lightning/platformShowToastEvent';
import loadScript, loadStyle from 'lightning/platformResourceLoader';
import leaflet from '@salesforce/resourceUrl/leaflet';


export default class Leaflet extends LightningElement
@api leafletInitialized = false;
@api recordId;
renderedCallback()
if (this.leafletInitialized)
return;

this.leafletInitialized = true;

Promise.all([
loadScript(this, leaflet + 'leaflet/leaflet.js'),
loadStyle(this, leaflet + '/leaflet/leaflet.css')
])
.then(() =>
this.initializeleaflet();
)
.catch(error =>
this.dispatchEvent(
new ShowToastEvent(
title: 'Error loading D3',
message: error.message,
variant: 'error'
)
);
);


initializeleaflet()
var map = L.map('map').setView([39.7392, -104.991531], 14);
mapLink =
'<a href="http://openstreetmap.org">OpenStreetMap</a>';
L.tileLayer(
'http://s.tile.openstreetmap.org/z/x/y.png',
attribution: '&copy; ' + mapLink + ' Contributors',
maxZoom: 18,
).addTo(map);












share|improve this question






















  • any error or warning in the console?

    – glls
    2 hours ago











  • TypeError: Cannot read property 'message' of undefined at leafletInitialized.Promise.all.then.catch.a (leaflet.js:4),Uncaught (in promise) TypeError: Cannot read property 'message' of undefined at leafletInitialized.Promise.all.then.catch.a (leaflet.js:4)

    – Vidhyasagaran Muralidharan
    2 hours ago












  • also, where are you trying to use your component? LEX, communities?

    – glls
    2 hours ago











  • lightning home page

    – Vidhyasagaran Muralidharan
    2 hours ago















3















When I am trying to load the lightning web component map is not loading.



<template>
<div id="map" lwc:dom="manual"></div>
</template>

import LightningElement,api from 'lwc';
import ShowToastEvent from 'lightning/platformShowToastEvent';
import loadScript, loadStyle from 'lightning/platformResourceLoader';
import leaflet from '@salesforce/resourceUrl/leaflet';


export default class Leaflet extends LightningElement
@api leafletInitialized = false;
@api recordId;
renderedCallback()
if (this.leafletInitialized)
return;

this.leafletInitialized = true;

Promise.all([
loadScript(this, leaflet + 'leaflet/leaflet.js'),
loadStyle(this, leaflet + '/leaflet/leaflet.css')
])
.then(() =>
this.initializeleaflet();
)
.catch(error =>
this.dispatchEvent(
new ShowToastEvent(
title: 'Error loading D3',
message: error.message,
variant: 'error'
)
);
);


initializeleaflet()
var map = L.map('map').setView([39.7392, -104.991531], 14);
mapLink =
'<a href="http://openstreetmap.org">OpenStreetMap</a>';
L.tileLayer(
'http://s.tile.openstreetmap.org/z/x/y.png',
attribution: '&copy; ' + mapLink + ' Contributors',
maxZoom: 18,
).addTo(map);












share|improve this question






















  • any error or warning in the console?

    – glls
    2 hours ago











  • TypeError: Cannot read property 'message' of undefined at leafletInitialized.Promise.all.then.catch.a (leaflet.js:4),Uncaught (in promise) TypeError: Cannot read property 'message' of undefined at leafletInitialized.Promise.all.then.catch.a (leaflet.js:4)

    – Vidhyasagaran Muralidharan
    2 hours ago












  • also, where are you trying to use your component? LEX, communities?

    – glls
    2 hours ago











  • lightning home page

    – Vidhyasagaran Muralidharan
    2 hours ago













3












3








3


1






When I am trying to load the lightning web component map is not loading.



<template>
<div id="map" lwc:dom="manual"></div>
</template>

import LightningElement,api from 'lwc';
import ShowToastEvent from 'lightning/platformShowToastEvent';
import loadScript, loadStyle from 'lightning/platformResourceLoader';
import leaflet from '@salesforce/resourceUrl/leaflet';


export default class Leaflet extends LightningElement
@api leafletInitialized = false;
@api recordId;
renderedCallback()
if (this.leafletInitialized)
return;

this.leafletInitialized = true;

Promise.all([
loadScript(this, leaflet + 'leaflet/leaflet.js'),
loadStyle(this, leaflet + '/leaflet/leaflet.css')
])
.then(() =>
this.initializeleaflet();
)
.catch(error =>
this.dispatchEvent(
new ShowToastEvent(
title: 'Error loading D3',
message: error.message,
variant: 'error'
)
);
);


initializeleaflet()
var map = L.map('map').setView([39.7392, -104.991531], 14);
mapLink =
'<a href="http://openstreetmap.org">OpenStreetMap</a>';
L.tileLayer(
'http://s.tile.openstreetmap.org/z/x/y.png',
attribution: '&copy; ' + mapLink + ' Contributors',
maxZoom: 18,
).addTo(map);












share|improve this question














When I am trying to load the lightning web component map is not loading.



<template>
<div id="map" lwc:dom="manual"></div>
</template>

import LightningElement,api from 'lwc';
import ShowToastEvent from 'lightning/platformShowToastEvent';
import loadScript, loadStyle from 'lightning/platformResourceLoader';
import leaflet from '@salesforce/resourceUrl/leaflet';


export default class Leaflet extends LightningElement
@api leafletInitialized = false;
@api recordId;
renderedCallback()
if (this.leafletInitialized)
return;

this.leafletInitialized = true;

Promise.all([
loadScript(this, leaflet + 'leaflet/leaflet.js'),
loadStyle(this, leaflet + '/leaflet/leaflet.css')
])
.then(() =>
this.initializeleaflet();
)
.catch(error =>
this.dispatchEvent(
new ShowToastEvent(
title: 'Error loading D3',
message: error.message,
variant: 'error'
)
);
);


initializeleaflet()
var map = L.map('map').setView([39.7392, -104.991531], 14);
mapLink =
'<a href="http://openstreetmap.org">OpenStreetMap</a>';
L.tileLayer(
'http://s.tile.openstreetmap.org/z/x/y.png',
attribution: '&copy; ' + mapLink + ' Contributors',
maxZoom: 18,
).addTo(map);









lightning lightning-web-components






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked 3 hours ago









Vidhyasagaran MuralidharanVidhyasagaran Muralidharan

390316




390316












  • any error or warning in the console?

    – glls
    2 hours ago











  • TypeError: Cannot read property 'message' of undefined at leafletInitialized.Promise.all.then.catch.a (leaflet.js:4),Uncaught (in promise) TypeError: Cannot read property 'message' of undefined at leafletInitialized.Promise.all.then.catch.a (leaflet.js:4)

    – Vidhyasagaran Muralidharan
    2 hours ago












  • also, where are you trying to use your component? LEX, communities?

    – glls
    2 hours ago











  • lightning home page

    – Vidhyasagaran Muralidharan
    2 hours ago

















  • any error or warning in the console?

    – glls
    2 hours ago











  • TypeError: Cannot read property 'message' of undefined at leafletInitialized.Promise.all.then.catch.a (leaflet.js:4),Uncaught (in promise) TypeError: Cannot read property 'message' of undefined at leafletInitialized.Promise.all.then.catch.a (leaflet.js:4)

    – Vidhyasagaran Muralidharan
    2 hours ago












  • also, where are you trying to use your component? LEX, communities?

    – glls
    2 hours ago











  • lightning home page

    – Vidhyasagaran Muralidharan
    2 hours ago
















any error or warning in the console?

– glls
2 hours ago





any error or warning in the console?

– glls
2 hours ago













TypeError: Cannot read property 'message' of undefined at leafletInitialized.Promise.all.then.catch.a (leaflet.js:4),Uncaught (in promise) TypeError: Cannot read property 'message' of undefined at leafletInitialized.Promise.all.then.catch.a (leaflet.js:4)

– Vidhyasagaran Muralidharan
2 hours ago






TypeError: Cannot read property 'message' of undefined at leafletInitialized.Promise.all.then.catch.a (leaflet.js:4),Uncaught (in promise) TypeError: Cannot read property 'message' of undefined at leafletInitialized.Promise.all.then.catch.a (leaflet.js:4)

– Vidhyasagaran Muralidharan
2 hours ago














also, where are you trying to use your component? LEX, communities?

– glls
2 hours ago





also, where are you trying to use your component? LEX, communities?

– glls
2 hours ago













lightning home page

– Vidhyasagaran Muralidharan
2 hours ago





lightning home page

– Vidhyasagaran Muralidharan
2 hours ago










2 Answers
2






active

oldest

votes


















1














L.map(<String> id, <Map options> options?) is the initialization factory, in which you provide the ID of your element for the component to initialize, LWC doesn't seem to support passing in the id for leaflet to init since (from the doc):




Don’t use ID selectors with querySelector. The IDs that you define in HTML templates may be transformed into globally unique values when the template is rendered. If you use an ID selector in JavaScript, it won’t match the transformed ID.




leaflet also supports passign in the ELEMENT, so, if you pass the element rather than the string id, you should be fine (for the most part):



L.map(<HTMLElement> el, <Map options> options?)


if you change your code to



const mapRoot = this.template.querySelector(".map-root")
var map = L.map(mapRoot).setView([39.7392, -104.991531], 14);


you will be able to pass the instantiated HTML element to the factory.
You will need to add a class name to your div in order to use it as a query selector, since id's are not supported. Ex:



<template>
<div class="map-root" lwc:dom="manual"></div>
</template>


and one last thing, dont forget your css file, if you dont add a component height, the component will load but will appear with a height of 0px:



.map-root
height: 180px;



enter image description here
Leaflet Documentation



LWC Documentation - Access Elements the Component Owns






share|improve this answer
































    0














    The other answer about using the css class instead of id is great . I will add few more things that could be cause for this.



    Check that the zip file you have for leaflet in the static resource is properly zipped and you are using the proper path .



    I downloaded from the site and uploaded to static resource and named the static resource as leaflet .



    I had to change the path as below



    renderedCallback() 
    if (this.leafletInitialized)
    return;

    this.leafletInitialized = true;

    Promise.all([
    loadScript(this, leaflet + '/leaflet.js'),
    loadStyle(this, leaflet + '/leaflet.css')
    ])
    .then(() =>
    this.initializeleaflet();
    )
    .catch(error =>
    console.log(error);
    this.dispatchEvent(
    new ShowToastEvent(
    title: 'Error loadingLeaflet',
    message: error,
    variant: 'error'
    )
    );
    );



    Also to see the exceptions of promise reject just log the error that will tell you true error .



    Also just a thought what makes you use leaflet . There is a lightning-map lwc component provided by salesforce and why not just use it .






    share|improve this answer
























      Your Answer








      StackExchange.ready(function()
      var channelOptions =
      tags: "".split(" "),
      id: "459"
      ;
      initTagRenderer("".split(" "), "".split(" "), channelOptions);

      StackExchange.using("externalEditor", function()
      // Have to fire editor after snippets, if snippets enabled
      if (StackExchange.settings.snippets.snippetsEnabled)
      StackExchange.using("snippets", function()
      createEditor();
      );

      else
      createEditor();

      );

      function createEditor()
      StackExchange.prepareEditor(
      heartbeatType: 'answer',
      autoActivateHeartbeat: false,
      convertImagesToLinks: false,
      noModals: true,
      showLowRepImageUploadWarning: true,
      reputationToPostImages: null,
      bindNavPrevention: true,
      postfix: "",
      imageUploader:
      brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
      contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
      allowUrls: true
      ,
      onDemand: true,
      discardSelector: ".discard-answer"
      ,immediatelyShowMarkdownHelp:true
      );



      );













      draft saved

      draft discarded


















      StackExchange.ready(
      function ()
      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsalesforce.stackexchange.com%2fquestions%2f254214%2floading-the-leaflet-map-in-lightning-web-component%23new-answer', 'question_page');

      );

      Post as a guest















      Required, but never shown

























      2 Answers
      2






      active

      oldest

      votes








      2 Answers
      2






      active

      oldest

      votes









      active

      oldest

      votes






      active

      oldest

      votes









      1














      L.map(<String> id, <Map options> options?) is the initialization factory, in which you provide the ID of your element for the component to initialize, LWC doesn't seem to support passing in the id for leaflet to init since (from the doc):




      Don’t use ID selectors with querySelector. The IDs that you define in HTML templates may be transformed into globally unique values when the template is rendered. If you use an ID selector in JavaScript, it won’t match the transformed ID.




      leaflet also supports passign in the ELEMENT, so, if you pass the element rather than the string id, you should be fine (for the most part):



      L.map(<HTMLElement> el, <Map options> options?)


      if you change your code to



      const mapRoot = this.template.querySelector(".map-root")
      var map = L.map(mapRoot).setView([39.7392, -104.991531], 14);


      you will be able to pass the instantiated HTML element to the factory.
      You will need to add a class name to your div in order to use it as a query selector, since id's are not supported. Ex:



      <template>
      <div class="map-root" lwc:dom="manual"></div>
      </template>


      and one last thing, dont forget your css file, if you dont add a component height, the component will load but will appear with a height of 0px:



      .map-root
      height: 180px;



      enter image description here
      Leaflet Documentation



      LWC Documentation - Access Elements the Component Owns






      share|improve this answer





























        1














        L.map(<String> id, <Map options> options?) is the initialization factory, in which you provide the ID of your element for the component to initialize, LWC doesn't seem to support passing in the id for leaflet to init since (from the doc):




        Don’t use ID selectors with querySelector. The IDs that you define in HTML templates may be transformed into globally unique values when the template is rendered. If you use an ID selector in JavaScript, it won’t match the transformed ID.




        leaflet also supports passign in the ELEMENT, so, if you pass the element rather than the string id, you should be fine (for the most part):



        L.map(<HTMLElement> el, <Map options> options?)


        if you change your code to



        const mapRoot = this.template.querySelector(".map-root")
        var map = L.map(mapRoot).setView([39.7392, -104.991531], 14);


        you will be able to pass the instantiated HTML element to the factory.
        You will need to add a class name to your div in order to use it as a query selector, since id's are not supported. Ex:



        <template>
        <div class="map-root" lwc:dom="manual"></div>
        </template>


        and one last thing, dont forget your css file, if you dont add a component height, the component will load but will appear with a height of 0px:



        .map-root
        height: 180px;



        enter image description here
        Leaflet Documentation



        LWC Documentation - Access Elements the Component Owns






        share|improve this answer



























          1












          1








          1







          L.map(<String> id, <Map options> options?) is the initialization factory, in which you provide the ID of your element for the component to initialize, LWC doesn't seem to support passing in the id for leaflet to init since (from the doc):




          Don’t use ID selectors with querySelector. The IDs that you define in HTML templates may be transformed into globally unique values when the template is rendered. If you use an ID selector in JavaScript, it won’t match the transformed ID.




          leaflet also supports passign in the ELEMENT, so, if you pass the element rather than the string id, you should be fine (for the most part):



          L.map(<HTMLElement> el, <Map options> options?)


          if you change your code to



          const mapRoot = this.template.querySelector(".map-root")
          var map = L.map(mapRoot).setView([39.7392, -104.991531], 14);


          you will be able to pass the instantiated HTML element to the factory.
          You will need to add a class name to your div in order to use it as a query selector, since id's are not supported. Ex:



          <template>
          <div class="map-root" lwc:dom="manual"></div>
          </template>


          and one last thing, dont forget your css file, if you dont add a component height, the component will load but will appear with a height of 0px:



          .map-root
          height: 180px;



          enter image description here
          Leaflet Documentation



          LWC Documentation - Access Elements the Component Owns






          share|improve this answer















          L.map(<String> id, <Map options> options?) is the initialization factory, in which you provide the ID of your element for the component to initialize, LWC doesn't seem to support passing in the id for leaflet to init since (from the doc):




          Don’t use ID selectors with querySelector. The IDs that you define in HTML templates may be transformed into globally unique values when the template is rendered. If you use an ID selector in JavaScript, it won’t match the transformed ID.




          leaflet also supports passign in the ELEMENT, so, if you pass the element rather than the string id, you should be fine (for the most part):



          L.map(<HTMLElement> el, <Map options> options?)


          if you change your code to



          const mapRoot = this.template.querySelector(".map-root")
          var map = L.map(mapRoot).setView([39.7392, -104.991531], 14);


          you will be able to pass the instantiated HTML element to the factory.
          You will need to add a class name to your div in order to use it as a query selector, since id's are not supported. Ex:



          <template>
          <div class="map-root" lwc:dom="manual"></div>
          </template>


          and one last thing, dont forget your css file, if you dont add a component height, the component will load but will appear with a height of 0px:



          .map-root
          height: 180px;



          enter image description here
          Leaflet Documentation



          LWC Documentation - Access Elements the Component Owns







          share|improve this answer














          share|improve this answer



          share|improve this answer








          edited 55 mins ago

























          answered 1 hour ago









          gllsglls

          11.1k72150




          11.1k72150























              0














              The other answer about using the css class instead of id is great . I will add few more things that could be cause for this.



              Check that the zip file you have for leaflet in the static resource is properly zipped and you are using the proper path .



              I downloaded from the site and uploaded to static resource and named the static resource as leaflet .



              I had to change the path as below



              renderedCallback() 
              if (this.leafletInitialized)
              return;

              this.leafletInitialized = true;

              Promise.all([
              loadScript(this, leaflet + '/leaflet.js'),
              loadStyle(this, leaflet + '/leaflet.css')
              ])
              .then(() =>
              this.initializeleaflet();
              )
              .catch(error =>
              console.log(error);
              this.dispatchEvent(
              new ShowToastEvent(
              title: 'Error loadingLeaflet',
              message: error,
              variant: 'error'
              )
              );
              );



              Also to see the exceptions of promise reject just log the error that will tell you true error .



              Also just a thought what makes you use leaflet . There is a lightning-map lwc component provided by salesforce and why not just use it .






              share|improve this answer





























                0














                The other answer about using the css class instead of id is great . I will add few more things that could be cause for this.



                Check that the zip file you have for leaflet in the static resource is properly zipped and you are using the proper path .



                I downloaded from the site and uploaded to static resource and named the static resource as leaflet .



                I had to change the path as below



                renderedCallback() 
                if (this.leafletInitialized)
                return;

                this.leafletInitialized = true;

                Promise.all([
                loadScript(this, leaflet + '/leaflet.js'),
                loadStyle(this, leaflet + '/leaflet.css')
                ])
                .then(() =>
                this.initializeleaflet();
                )
                .catch(error =>
                console.log(error);
                this.dispatchEvent(
                new ShowToastEvent(
                title: 'Error loadingLeaflet',
                message: error,
                variant: 'error'
                )
                );
                );



                Also to see the exceptions of promise reject just log the error that will tell you true error .



                Also just a thought what makes you use leaflet . There is a lightning-map lwc component provided by salesforce and why not just use it .






                share|improve this answer



























                  0












                  0








                  0







                  The other answer about using the css class instead of id is great . I will add few more things that could be cause for this.



                  Check that the zip file you have for leaflet in the static resource is properly zipped and you are using the proper path .



                  I downloaded from the site and uploaded to static resource and named the static resource as leaflet .



                  I had to change the path as below



                  renderedCallback() 
                  if (this.leafletInitialized)
                  return;

                  this.leafletInitialized = true;

                  Promise.all([
                  loadScript(this, leaflet + '/leaflet.js'),
                  loadStyle(this, leaflet + '/leaflet.css')
                  ])
                  .then(() =>
                  this.initializeleaflet();
                  )
                  .catch(error =>
                  console.log(error);
                  this.dispatchEvent(
                  new ShowToastEvent(
                  title: 'Error loadingLeaflet',
                  message: error,
                  variant: 'error'
                  )
                  );
                  );



                  Also to see the exceptions of promise reject just log the error that will tell you true error .



                  Also just a thought what makes you use leaflet . There is a lightning-map lwc component provided by salesforce and why not just use it .






                  share|improve this answer















                  The other answer about using the css class instead of id is great . I will add few more things that could be cause for this.



                  Check that the zip file you have for leaflet in the static resource is properly zipped and you are using the proper path .



                  I downloaded from the site and uploaded to static resource and named the static resource as leaflet .



                  I had to change the path as below



                  renderedCallback() 
                  if (this.leafletInitialized)
                  return;

                  this.leafletInitialized = true;

                  Promise.all([
                  loadScript(this, leaflet + '/leaflet.js'),
                  loadStyle(this, leaflet + '/leaflet.css')
                  ])
                  .then(() =>
                  this.initializeleaflet();
                  )
                  .catch(error =>
                  console.log(error);
                  this.dispatchEvent(
                  new ShowToastEvent(
                  title: 'Error loadingLeaflet',
                  message: error,
                  variant: 'error'
                  )
                  );
                  );



                  Also to see the exceptions of promise reject just log the error that will tell you true error .



                  Also just a thought what makes you use leaflet . There is a lightning-map lwc component provided by salesforce and why not just use it .







                  share|improve this answer














                  share|improve this answer



                  share|improve this answer








                  edited 19 mins ago

























                  answered 38 mins ago









                  Mohith ShrivastavaMohith Shrivastava

                  61.3k7102145




                  61.3k7102145



























                      draft saved

                      draft discarded
















































                      Thanks for contributing an answer to Salesforce Stack Exchange!


                      • Please be sure to answer the question. Provide details and share your research!

                      But avoid


                      • Asking for help, clarification, or responding to other answers.

                      • Making statements based on opinion; back them up with references or personal experience.

                      To learn more, see our tips on writing great answers.




                      draft saved


                      draft discarded














                      StackExchange.ready(
                      function ()
                      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsalesforce.stackexchange.com%2fquestions%2f254214%2floading-the-leaflet-map-in-lightning-web-component%23new-answer', 'question_page');

                      );

                      Post as a guest















                      Required, but never shown





















































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown

































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown







                      Popular posts from this blog

                      Dapidodigma demeter Subspecies | Notae | Tabula navigationisDapidodigmaAfrotropical Butterflies: Lycaenidae - Subtribe IolainaAmplifica

                      Constantinus Vanšenkin Nexus externi | Tabula navigationisБольшая российская энциклопедияAmplifica

                      Gaius Norbanus Flaccus (consul 38 a.C.n.) Index De gente | De cursu honorum | Notae | Fontes | Si vis plura legere | Tabula navigationisHic legere potes