MapComplete/assets/layers/charging_station
2024-09-02 12:48:15 +02:00
..
as3112.svg
as3112.svg.license
bosch-3pin.svg
bosch-3pin.svg.license
bosch-5pin.svg
bosch-5pin.svg.license
bs1363.svg
bs1363.svg.license
CEE7_4F.svg
CEE7_4F.svg.license
Chademo_type4.svg
Chademo_type4.svg.license
charging_station.json chore: automated housekeeping... 2024-09-02 12:48:15 +02:00
charging_station.proto.json
csvToJson.ts
license_info.json
nema-5-15.svg
nema-5-15.svg.license
nema-5-20.svg
nema-5-20.svg.license
README.md
Tesla-hpwc-model-s.svg
Tesla-hpwc-model-s.svg.license
Type1-ccs.svg
Type1-ccs.svg.license
Type1_J1772.svg
Type1_J1772.svg.license
Type2_CCS.svg
Type2_CCS.svg.license
Type2_socket.svg
Type2_socket.svg.license
Type2_tethered.svg
Type2_tethered.svg.license
Type3c.svg
Type3c.svg.license
TypeE.svg
TypeE.svg.license
typej.svg
typej.svg.license
types.csv
under_construction.svg
under_construction.svg.license
usb_port.svg
usb_port.svg.license

The charging station theme

As you might have noticed, the charging station theme is complicated and large.

There are a ton of repititive questions. Luckily, we can generate those.

If you want to add a missing socket type, then:

  • Add all the properties in 'types.csv'
  • Add an icon. (Note: icons are way better as pictures as they are perceived more abstractly)
  • Update 'license_info.json' with the copyright info of the new icon. Note that we strive to have Creative Commons icons only (though there are exceptions)

At this point, most of the work should be done; feel free to send a PR. If you would like to test it locally first (which is recommended) and have a working dev environment, then run:

  • Run ts-node csvToJson.ts which will generate a new charging_station.json based on the protojson
  • Run npm run query:licenses to get an interactive program to add the license of your artwork, followed by npm run generate:licenses
  • Run npm run generate:layeroverview to generate the layer files
  • Run npm run start to run the instance

The CSV File

The columns in the CSV file are:

  • key: the key as described on the wiki, starts with socket:
  • image: The associated image (a .svg)
  • description:en A description in english
  • description:nl A description in english
  • countryWhiteList: Only show this plug type in these countries
  • countryBlackList: Don't show this plug type in these countries. NOt compatibel with the whiteList
  • commonVoltages, commonCurrents, commonOutputs: common values for these tags
  • associatedVehicleTypes and neverAssociatedWith: these work in tandem to hide options. If every associated vehicle type is no, then the option is hidden If at least one neverAssociatedVehicleType is yes and none of the associated types is yes, then the option is hidden too
  • extraVisualisationCondition: in some exceptional cases, a socket type is branded differently. This extra condition allows to hide these cases in the big multi-answer