Giter Club home page Giter Club logo

flag_flutter's Introduction

Hi 🐱 . I'm Luna Gao.

Anurag's github stats

Top Langs

ReadMe Card

flag_flutter's People

Contributors

albert-jan avatar bounty1342 avatar chaturadilan avatar dluksza avatar idg76 avatar kaladron avatar lunagao avatar markusgeert avatar mdccxv avatar saifallak avatar simonpham avatar stefanschaller avatar thexxturboxx avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

flag_flutter's Issues

CAUGHT AN EXCEPTION WHILE USING THE FLAG PACKAGE FOR FLUTTER APP

while i was trying to show the flags of countries like brazil and afgansthan by using both the flagcodes and strings (flagcode.AF,"AF").
i got a svg realted exception. The exception is given below:-
----------------Exception-------------------------
#6 SvgParserState.parse
package:flutter_svg/…/svg/parser_state.dart:885

#7 SvgParser.parse
package:flutter_svg/parser.dart:27

#8 Svg.fromSvgString
package:flutter_svg/svg.dart:139

#9 Svg.svgPictureStringDecoder
package:flutter_svg/svg.dart:90

Picture provider: ExactAssetPicture(name: "packages/flag/res/4x3/af.svg", bundle: null, colorFilter: null)
Picture key: AssetBundlePictureKey(bundle: PlatformAssetBundle#3ea37(), name: "packages/flag/res/4x3/af.svg", colorFilter: null, theme: SvgTheme(currentColor: null, fontSize: 14.0, xHeight: 7.0))

Countries with missing flags

Please add these countries to your list:

South Africa
South Georgia and the South Sandwich Islands
Nepal
Oman
Sri Lanka
Isle of Man
Serbia
Cayman Islands
Dominica, Commonwealth of
Grenada
Haiti
American Samoa
Argentina
Brazil
Falkland Islands (Malvinas)
Peru

Thanks! :)

How to write tests with flag widgets

I am currently trying to write a test concerning a widget which includes
Flag.getFlags(...)

when running the test for the first time i receive the error copied below. When the same test runs a second time (chronologically after the first) it seems to run through. How should i write tests with flag-widgets?

══║ EXCEPTION CAUGHT BY SVG β•žβ•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•
The following assertion was thrown resolving a single-frame picture stream:
Unable to load asset: packages/flag/res/flag/de.svg

When the exception was thrown, this was the stack:
#0 PlatformAssetBundle.load (package:flutter/src/services/asset_bundle.dart:221:7)

#1 AssetBundle.loadString (package:flutter/src/services/asset_bundle.dart:67:33)
#2 CachingAssetBundle.loadString. (package:flutter/src/services/asset_bundle.dart:162:56)
#3 _LinkedHashMapMixin.putIfAbsent (dart:collection-patch/compact_hash.dart:293:23)
#4 CachingAssetBundle.loadString (package:flutter/src/services/asset_bundle.dart:162:27)
#5 AssetBundlePictureProvider._loadAsync (package:flutter_svg/src/picture_provider.dart:449:42)
#6 AssetBundlePictureProvider.load (package:flutter_svg/src/picture_provider.dart:435:43)
#7 PictureProvider.resolve.. (package:flutter_svg/src/picture_provider.dart:327:17)
#8 PictureCache.putIfAbsent (package:flutter_svg/src/picture_cache.dart:67:22)
#9 PictureProvider.resolve. (package:flutter_svg/src/picture_provider.dart:325:16)
#10 SynchronousFuture.then (package:flutter/src/foundation/synchronous_future.dart:38:29)
#11 PictureProvider.resolve (package:flutter_svg/src/picture_provider.dart:322:24)
#12 _SvgPictureState._resolveImage (package:flutter_svg/svg.dart:641:10)
#13 _SvgPictureState.didChangeDependencies (package:flutter_svg/svg.dart:615:5)
#14 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4376:12)
#15 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
#16 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#17 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#18 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5445:14)
#19 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#20 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#21 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
#22 Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
#23 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
#24 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
#25 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#26 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#27 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
#28 Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
#29 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
#30 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
#31 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#32 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#33 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
#34 Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
#35 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
#36 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4381:11)
#37 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
#38 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#39 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#40 _ListTileElement._mountChild (package:flutter/src/material/list_tile.dart:999:30)
#41 _ListTileElement.mount (package:flutter/src/material/list_tile.dart:1015:5)
#42 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#43 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#44 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
#45 Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
#46 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
#47 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
#48 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#49 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#50 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5445:14)
#51 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#52 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#53 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
#54 Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
#55 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
#56 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
#57 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#58 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#59 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5445:14)
#60 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#61 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#62 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5445:14)
#63 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#64 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#65 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
#66 Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
#67 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
#68 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
#69 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#70 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#71 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5445:14)
#72 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#73 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#74 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
#75 Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
#76 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
#77 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4381:11)
#78 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
#79 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#80 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#81 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
#82 Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
#83 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
#84 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
#85 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#86 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#87 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5445:14)
#88 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#89 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#90 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5445:14)
#91 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#92 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#93 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
#94 Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
#95 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
#96 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
#97 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#98 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#99 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
#100 Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
#101 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
#102 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4381:11)
#103 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
#104 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#105 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#106 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
#107 Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
#108 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
#109 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
#110 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#111 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#112 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
#113 Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
#114 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
#115 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4381:11)
#116 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
#117 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#118 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#119 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
#120 Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
#121 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
#122 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
#123 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#124 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5551:32)
#125 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#126 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#127 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5445:14)
#128 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#129 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#130 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
#131 Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
#132 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
#133 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
#134 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#135 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#136 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
#137 Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
#138 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
#139 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4381:11)
#140 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
#141 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#142 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#143 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5445:14)
#144 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#145 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#146 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
#147 Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
#148 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
#149 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
#150 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#151 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#152 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5445:14)
#153 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#154 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#155 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
#156 Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
#157 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
#158 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
#159 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#160 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#161 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5445:14)
#162 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#163 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#164 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
#165 Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
#166 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
#167 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4381:11)
#168 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
#169 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#170 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#171 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
#172 Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
#173 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
#174 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4381:11)
#175 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
#176 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#177 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#178 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5445:14)
#179 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#180 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#181 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
#182 Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
#183 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
#184 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
#185 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#186 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#187 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5445:14)
#188 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#189 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#190 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
#191 Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
#192 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
#193 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
#194 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#195 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#196 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
#197 Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
#198 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
#199 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4381:11)
#200 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
#201 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#202 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#203 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
#204 Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
#205 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
#206 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4381:11)
#207 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
#208 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#209 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#210 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5445:14)
#211 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#212 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#213 SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5445:14)
#214 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#215 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#216 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
#217 Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
#218 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
#219 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
#220 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#221 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#222 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
#223 Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
#224 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
#225 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
#226 ParentDataElement.mount (package:flutter/src/widgets/framework.dart:4617:11)
#227 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#228 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#229 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
#230 Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
#231 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
#232 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4381:11)
#233 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
#234 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#235 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#236 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4243:16)
#237 Element.rebuild (package:flutter/src/widgets/framework.dart:3947:5)
#238 ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:4206:5)
#239 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4201:5)
#240 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3194:14)
#241 Element.updateChild (package:flutter/src/widgets/framework.dart:2988:12)
#242 SliverMultiBoxAdaptorElement.updateChild (package:flutter/src/widgets/sliver.dart:1288:36)
#243 SliverMultiBoxAdaptorElement.createChild. (package:flutter/src/widgets/sliver.dart:1273:20)
#244 BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2412:19)
#245 SliverMultiBoxAdaptorElement.createChild (package:flutter/src/widgets/sliver.dart:1266:11)
#246 RenderSliverMultiBoxAdaptor._createOrObtainChild. (package:flutter/src/rendering/sliver_multi_box_adaptor.dart:354:23)
#247 RenderObject.invokeLayoutCallback. (package:flutter/src/rendering/object.dart:1823:58)
#248 PipelineOwner._enableMutationsToDirtySubtrees (package:flutter/src/rendering/object.dart:875:15)
#249 RenderObject.invokeLayoutCallback (package:flutter/src/rendering/object.dart:1823:13)
#250 RenderSliverMultiBoxAdaptor._createOrObtainChild (package:flutter/src/rendering/sliver_multi_box_adaptor.dart:343:5)
#251 RenderSliverMultiBoxAdaptor.addInitialChild (package:flutter/src/rendering/sliver_multi_box_adaptor.dart:427:5)
#252 RenderSliverList.performLayout (package:flutter/src/rendering/sliver_list.dart:78:12)
#253 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#254 RenderSliverEdgeInsetsPadding.performLayout (package:flutter/src/rendering/sliver_padding.dart:134:11)
#255 RenderSliverPadding.performLayout (package:flutter/src/rendering/sliver_padding.dart:373:11)
#256 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#257 RenderViewportBase.layoutChildSequence (package:flutter/src/rendering/viewport.dart:410:13)
#258 RenderViewport._attemptLayout (package:flutter/src/rendering/viewport.dart:1367:12)
#259 RenderViewport.performLayout (package:flutter/src/rendering/viewport.dart:1285:20)
#260 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#261 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
#262 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#263 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
#264 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#265 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
#266 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#267 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
#268 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#269 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
#270 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#271 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
#272 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#273 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
#274 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#275 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
#276 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#277 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
#278 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#279 MultiChildLayoutDelegate.layoutChild (package:flutter/src/rendering/custom_layout.dart:163:11)
#280 _ScaffoldLayout.performLayout (package:flutter/src/material/scaffold.dart:477:7)
#281 MultiChildLayoutDelegate._callPerformLayout (package:flutter/src/rendering/custom_layout.dart:232:7)
#282 RenderCustomMultiChildLayoutBox.performLayout (package:flutter/src/rendering/custom_layout.dart:391:14)
#283 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#284 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
#285 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#286 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
#287 _RenderCustomClip.performLayout (package:flutter/src/rendering/proxy_box.dart:1232:11)
#288 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#289 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
#290 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#291 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
#292 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#293 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
#294 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#295 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
#296 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#297 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
#298 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#299 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
#300 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#301 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
#302 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#303 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
#304 RenderOffstage.performLayout (package:flutter/src/rendering/proxy_box.dart:3168:13)
#305 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#306 RenderStack.performLayout (package:flutter/src/rendering/stack.dart:505:15)
#307 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#308 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
#309 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#310 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
#311 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#312 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
#313 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#314 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
#315 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#316 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
#317 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#318 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
#319 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7)
#320 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13)
#321 RenderObject._layoutWithoutResize (package:flutter/src/rendering/object.dart:1584:7)
#322 PipelineOwner.flushLayout (package:flutter/src/rendering/object.dart:844:18)
#323 AutomatedTestWidgetsFlutterBinding.drawFrame (package:flutter_test/src/binding.dart:977:23)
#324 RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:283:5)
#325 SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1102:15)
#326 SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:1041:9)
#327 AutomatedTestWidgetsFlutterBinding.pump. (package:flutter_test/src/binding.dart:872:9)
#330 TestAsyncUtils.guard (package:flutter_test/src/test_async_utils.dart:69:41)
#331 AutomatedTestWidgetsFlutterBinding.pump (package:flutter_test/src/binding.dart:859:27)
#332 WidgetTester.pump. (package:flutter_test/src/widget_tester.dart:343:53)
#335 TestAsyncUtils.guard (package:flutter_test/src/test_async_utils.dart:69:41)
#336 WidgetTester.pump (package:flutter_test/src/widget_tester.dart:343:27)
#337 main.. (file:///C:/Projekte/aphasia-flutter-app/test/widgets/word_trainer/deck_list_widget_test.dart:62:20)
#351 AutomatedTestWidgetsFlutterBinding.runTest. (package:flutter_test/src/binding.dart:1066:17)
#353 AutomatedTestWidgetsFlutterBinding.runTest. (package:flutter_test/src/binding.dart:1054:35)
(elided 33 frames from class _FakeAsync, package dart:async, package dart:async-patch, and package stack_trace)

Picture provider: ExactAssetPicture(name: "packages/flag/res/flag/de.svg", bundle: null,
colorFilter: null)
Picture key: AssetBundlePictureKey(bundle: PlatformAssetBundle#06fc8(), name:
"packages/flag/res/flag/de.svg", colorFilter: null)

Slovakian flag is not displayed

When I try to display Slovakian flag using the Flag.getFlag(country: 'sk', height: 20, width: 20), I get the following error:

════════ Exception caught by SVG ════════════════════════════════════
The following UnimplementedError was thrown in parseSvgElement:
The <style> element is not implemented in this library.

Style elements are not supported by this library and the requested SVG may not render as intended.

If possible, ensure the SVG uses inline styles and/or attributes (which are supported), or use a preprocessing utility such as svgcleaner to inline the styles for you.

Picture key: AssetBundlePictureKey(bundle: PlatformAssetBundle#f676f(), name: "packages/flag/res/flag/sk.svg", colorFilter: null)
══════════════════════════════════════════════════════════════

Flutter: v1.17.0
Dart: v2.8.1
Device: OnePlus 7T Android 10
Package version: flag v2.0.3

Error: Flutter version 1.20.0

I have build errors on Flutter (Channel stable, 1.20.0)

Error: Type 'DiagnosticableMixin' not found.
Error: Type 'DiagnosticableMixin' not found
Error: The type 'DiagnosticableMixin' can't be mixed in
Error: Superclass has no method named 'debugFillProperties'
Error: Superclass has no method named 'debugFillProperties'

Those errors come from flutter_svg: ^0.17.4 when used with this version of Flutter

I am using the following to fix this:

dependency_overrides: flutter_svg: 0.18.0

Solution:

Upgrade flag package's flutter_svg dependency version to 0.18.0

Exception when drawing Peru flag

════════ Exception caught by SVG ═══════════════════════════════════════════════
The following StateError was thrown resolving a single-frame picture stream:
Bad state: Expected to find Drawable with id url(#c).
Have ids: (url(#flag-icons-pe), url(#g), url(#d), url(#a), url(#b), url(#e), url(#f))

When the exception was thrown, this was the stack
#0 DrawableDefinitionServer.getDrawable
package:flutter_svg/src/vector_drawable.dart:579
#1 _Elements.use
package:flutter_svg/…/svg/parser_state.dart:212
#2 SvgParserState.parse
package:flutter_svg/…/svg/parser_state.dart:885

#3 SvgParser.parse
package:flutter_svg/parser.dart:27

#4 Svg.fromSvgString
package:flutter_svg/svg.dart:139

#5 Svg.svgPictureStringDecoder
package:flutter_svg/svg.dart:90

Picture provider: ExactAssetPicture(name: "packages/flag/res/4x3/pe.svg", bundle: null, colorFilter: null)
Picture key: AssetBundlePictureKey(bundle: PlatformAssetBundle#d1b8c(), name: "packages/flag/res/4x3/pe.svg", colorFilter: null, theme: SvgTheme(currentColor: null, fontSize: 14.0, xHeight: 7.0))

Issue with JP flag rendering, along some others, in 6.0.0

Hi,

After switching from version 5.0.1 to 6.0.0 I am seeing some flags being incorrectly rendered in my app.

This is an example of Japan (the red spot should be centered):

Screenshot 2022-02-20 at 19 55 35

whereas others, like Mexico, work fine:

Screenshot 2022-02-20 at 19 55 24

The flag is being rendered inside a TabBar like this:

Tab(
  icon: Flag.fromString(
  UpdateService().getLocation(),
  width: SizeConfig.blockSizeHorizontal * 10,
  height: SizeConfig.blockSizeVertical * 5,
)),

Thanks in advance!

Exception when drawing Sri Lanka flag

════════ Exception caught by SVG ═══════════════════════════════════════════════════════════════════
The following StateError was thrown resolving a single-frame picture stream:
Bad state: Expected to find Drawable with id url(#lion).
Have ids: (url(#leaf))

When the exception was thrown, this was the stack:
#0 DrawableDefinitionServer.getDrawable (package:flutter_svg/src/vector_drawable.dart:577:7)
#1 _Elements.use (package:flutter_svg/src/svg/parser_state.dart:184:34)
#2 SvgParserState.parse (package:flutter_svg/src/svg/parser_state.dart:776:26)

#3 SvgParser.parse (package:flutter_svg/parser.dart:14:60)
...
Picture provider: ExactAssetPicture(name: "packages/flag/res/flag/lk.svg", bundle: null, colorFilter: null)
Picture key: AssetBundlePictureKey(bundle: PlatformAssetBundle#cae03(), name: "packages/flag/res/flag/lk.svg", colorFilter: null)
════════════════════════════════════════════════════════════════════════════════════════════════════

getMiniFlag for Malaysia flag returns the wrong flag

Hi,

getMiniFlag returns the wrong Malaysia flag.

Malaysia flag should've 14-pointed stars, 3red-3white long stripes beneath the blue section.

Attached below is the example of corrected Malaysia flag. However I'm not able to get the SVG format exported as in the svg2 folder.
my.zip

Need your help to fix this. Thank you!

Exception when drawing Argentinian flag

I/flutter (14497): ══║ EXCEPTION CAUGHT BY SVG β•žβ•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•
I/flutter (14497): The following StateError was thrown resolving a single-frame picture stream:
I/flutter (14497): Bad state: Expected to find Drawable with id url(#uppalpebra).
I/flutter (14497): Have ids: (url(#rays), url(#ray1), url(#ray2), url(#loweyecontour))
I/flutter (14497):
I/flutter (14497): When the exception was thrown, this was the stack:
I/flutter (14497): #0 DrawableDefinitionServer.getDrawable (package:flutter_svg/src/vector_drawable.dart:577:7)
I/flutter (14497): #1 _Elements.use (package:flutter_svg/src/svg/parser_state.dart:184:34)
I/flutter (14497): #2 SvgParserState.parse (package:flutter_svg/src/svg/parser_state.dart:776:26)
I/flutter (14497):
I/flutter (14497): #3 SvgParser.parse (package:flutter_svg/parser.dart:14:60)
I/flutter (14497): #4 Svg.fromSvgString (package:flutter_svg/svg.dart:110:25)
I/flutter (14497): #5 Svg.svgPictureStringDecoder (package:flutter_svg/svg.dart:72:36)
I/flutter (14497): #6 SvgPicture.svgStringDecoder. (package:flutter_svg/svg.dart:531:15)
I/flutter (14497): #7 AssetBundlePictureProvider._loadAsync (package:flutter_svg/src/picture_provider.dart:457:19)
I/flutter (14497):
I/flutter (14497): #8 AssetBundlePictureProvider.load (package:flutter_svg/src/picture_provider.dart:435:43)
I/flutter (14497): #9 PictureProvider.resolve.. (package:flutter_svg/src/picture_provider.dart:327:17)
I/flutter (14497): #10 PictureCache.putIfAbsent (package:flutter_svg/src/picture_cache.dart:67:22)
I/flutter (14497): #11 PictureProvider.resolve. (package:flutter_svg/src/picture_provider.dart:325:16)
I/flutter (14497): #12 SynchronousFuture.then (package:flutter/src/foundation/synchronous_future.dart:41:29)
I/flutter (14497): #13 PictureProvider.resolve (package:flutter_svg/src/picture_provider.dart:322:24)
I/flutter (14497): #14 _SvgPictureState._resolveImage (package:flutter_svg/svg.dart:641:10)
I/flutter (14497): #15 _SvgPictureState.didChangeDependencies (package:flutter_svg/svg.dart:615:5)
I/flutter (14497): #16 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4661:12)
I/flutter (14497): #17 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4476:5)
I/flutter (14497): ... Normal element mounting (28 frames)
I/flutter (14497): #45 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14)
I/flutter (14497): #46 Element.updateChild (package:flutter/src/widgets/framework.dart:3214:18)
I/flutter (14497): #47 _ListTileElement._mountChild (package:flutter/src/material/list_tile.dart:1000:30)
I/flutter (14497): #48 _ListTileElement.mount (package:flutter/src/material/list_tile.dart:1014:5)
I/flutter (14497): ... Normal element mounting (200 frames)
I/flutter (14497): #248 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14)
I/flutter (14497): #249 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5947:32)
I/flutter (14497): ... Normal element mounting (57 frames)
I/flutter (14497): #306 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14)
I/flutter (14497): #307 Element.updateChild (package:flutter/src/widgets/framework.dart:3214:18)
I/flutter (14497): #308 SliverMultiBoxAdaptorElement.updateChild (package:flutter/src/widgets/sliver.dart:1162:36)
I/flutter (14497): #309 SliverMultiBoxAdaptorElement.createChild. (package:flutter/src/widgets/sliver.dart:1147:20)
I/flutter (14497): #310 BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2607:19)
I/flutter (14497): #311 SliverMultiBoxAdaptorElement.createChild (package:flutter/src/widgets/sliver.dart:1140:11)
I/flutter (14497): #312 RenderSliverMultiBoxAdaptor._createOrObtainChild. (package:flutter/src/rendering/sliver_multi_box_adaptor.dart:354:23)
I/flutter (14497): #313 RenderObject.invokeLayoutCallback. (package:flutter/src/rendering/object.dart:1866:58)
I/flutter (14497): #314 PipelineOwner._enableMutationsToDirtySubtrees (package:flutter/src/rendering/object.dart:918:15)
I/flutter (14497): #315 RenderObject.invokeLayoutCallback (package:flutter/src/rendering/object.dart:1866:13)
I/flutter (14497): #316 RenderSliverMultiBoxAdaptor._createOrObtainChild (package:flutter/src/rendering/sliver_multi_box_adaptor.dart:343:5)
I/flutter (14497): #317 RenderSliverMultiBoxAdaptor.insertAndLayoutChild (package:flutter/src/rendering/sliver_multi_box_adaptor.dart:489:5)
I/flutter (14497): #318 RenderSliverList.performLayout.advance (package:flutter/src/rendering/sliver_list.dart:219:19)
I/flutter (14497): #319 RenderSliverList.performLayout (package:flutter/src/rendering/sliver_list.dart:262:19)
I/flutter (14497): #320 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #321 RenderSliverEdgeInsetsPadding.performLayout (package:flutter/src/rendering/sliver_padding.dart:135:11)
I/flutter (14497): #322 RenderSliverPadding.performLayout (package:flutter/src/rendering/sliver_padding.dart:375:11)
I/flutter (14497): #323 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #324 RenderViewportBase.layoutChildSequence (package:flutter/src/rendering/viewport.dart:452:13)
I/flutter (14497): #325 RenderViewport._attemptLayout (package:flutter/src/rendering/viewport.dart:1444:12)
I/flutter (14497): #326 RenderViewport.performLayout (package:flutter/src/rendering/viewport.dart:1353:20)
I/flutter (14497): #327 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #328 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
I/flutter (14497): #329 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #330 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
I/flutter (14497): #331 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #332 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
I/flutter (14497): #333 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #334 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
I/flutter (14497): #335 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #336 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
I/flutter (14497): #337 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #338 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
I/flutter (14497): #339 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #340 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
I/flutter (14497): #341 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #342 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
I/flutter (14497): #343 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #344 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
I/flutter (14497): #345 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #346 RenderFlex.performLayout (package:flutter/src/rendering/flex.dart:808:17)
I/flutter (14497): #347 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #348 MultiChildLayoutDelegate.layoutChild (package:flutter/src/rendering/custom_layout.dart:171:11)
I/flutter (14497): #349 _ScaffoldLayout.performLayout (package:flutter/src/material/scaffold.dart:484:7)
I/flutter (14497): #350 MultiChildLayoutDelegate._callPerformLayout (package:flutter/src/rendering/custom_layout.dart:240:7)
I/flutter (14497): #351 RenderCustomMultiChildLayoutBox.performLayout (package:flutter/src/rendering/custom_layout.dart:399:14)
I/flutter (14497): #352 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #353 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
I/flutter (14497): #354 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #355 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
I/flutter (14497): #356 _RenderCustomClip.performLayout (package:flutter/src/rendering/proxy_box.dart:1248:11)
I/flutter (14497): #357 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #358 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
I/flutter (14497): #359 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #360 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
I/flutter (14497): #361 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #362 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
I/flutter (14497): #363 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #364 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
I/flutter (14497): #365 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #366 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
I/flutter (14497): #367 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #368 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
I/flutter (14497): #369 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #370 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
I/flutter (14497): #371 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #372 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
I/flutter (14497): #373 RenderOffstage.performLayout (package:flutter/src/rendering/proxy_box.dart:3225:13)
I/flutter (14497): #374 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #375 _RenderTheatre.performLayout (package:flutter/src/widgets/overlay.dart:700:15)
I/flutter (14497): #376 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #377 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
I/flutter (14497): #378 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #379 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
I/flutter (14497): #380 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #381 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
I/flutter (14497): #382 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #383 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
I/flutter (14497): #384 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #385 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
I/flutter (14497): #386 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #387 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:111:13)
I/flutter (14497): #388 RenderObject.layout (package:flutter/src/rendering/object.dart:1767:7)
I/flutter (14497): #389 RenderView.performLayout (package:flutter/src/rendering/view.dart:167:13)
I/flutter (14497): #390 RenderObject._layoutWithoutResize (package:flutter/src/rendering/object.dart:1630:7)
I/flutter (14497): #391 PipelineOwner.flushLayout (package:flutter/src/rendering/object.dart:887:18)
I/flutter (14497): #392 RendererBinding.drawFrame (package:flutter/src/rendering/binding.dart:402:19)
I/flutter (14497): #393 WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:884:13)
I/flutter (14497): #394 RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:284:5)
I/flutter (14497): #395 SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1113:15)
I/flutter (14497): #396 SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:1052:9)
I/flutter (14497): #397 SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:968:5)
I/flutter (14497): #401 _invoke (dart:ui/hooks.dart:261:10)
I/flutter (14497): #402 _drawFrame (dart:ui/hooks.dart:219:3)
I/flutter (14497): (elided 3 frames from dart:async)
I/flutter (14497):
I/flutter (14497): Picture provider: ExactAssetPicture(name: "packages/flag/res/flag/ar.svg", bundle: null,
I/flutter (14497): colorFilter: null)
I/flutter (14497): Picture key: AssetBundlePictureKey(bundle: PlatformAssetBundle#0f783(), name:
I/flutter (14497): "packages/flag/res/flag/ar.svg", colorFilter: null)
I/flutter (14497): ════════════════════════════════════════════════════════════════════════════════════════════════════

Exception when drawing Belarus flag

════════ Exception caught by SVG ═══════════════════════════════════════════════════════════════════
The following FormatException was thrown resolving a single-frame picture stream:
Invalid double
100%

When the exception was thrown, this was the stack:
#0 double.parse (dart:core-patch/double_patch.dart:112:28)
#1 parseDouble (package:flutter_svg/src/utilities/numbers.dart:15:17)
#2 _Paths.rect (package:flutter_svg/src/svg/parser_state.dart:618:22)
#3 SvgParserState.addShape (package:flutter_svg/src/svg/parser_state.dart:839:31)
#4 SvgParserState.startElement (package:flutter_svg/src/svg/parser_state.dart:865:12)
...
Picture provider: ExactAssetPicture(name: "packages/flag/res/flag/by.svg", bundle: null, colorFilter: null)
Picture key: AssetBundlePictureKey(bundle: PlatformAssetBundle#3b028(), name: "packages/flag/res/flag/by.svg", colorFilter: null)
════════════════════════════════════════════════════════════════════════════════════════════════════

Exception when drawing Nepal flag

I/flutter ( 592): ══║ EXCEPTION CAUGHT BY SVG β•žβ•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•
I/flutter ( 592): The following StateError was thrown resolving a single-frame picture stream:
I/flutter ( 592): Bad state: Expected to find Drawable with id url(#a).
I/flutter ( 592): Have ids: ()
I/flutter ( 592):
I/flutter ( 592): When the exception was thrown, this was the stack:
I/flutter ( 592): #0 DrawableDefinitionServer.getDrawable (package:flutter_svg/src/vector_drawable.dart:577:7)
I/flutter ( 592): #1 _Elements.use (package:flutter_svg/src/svg/parser_state.dart:184:34)
I/flutter ( 592): #2 SvgParserState.parse (package:flutter_svg/src/svg/parser_state.dart:776:26)
I/flutter ( 592):
I/flutter ( 592): #3 SvgParser.parse (package:flutter_svg/parser.dart:14:60)
I/flutter ( 592): #4 Svg.fromSvgString (package:flutter_svg/svg.dart:110:25)
I/flutter ( 592): #5 Svg.svgPictureStringDecoder (package:flutter_svg/svg.dart:72:36)
I/flutter ( 592): #6 SvgPicture.svgStringDecoder. (package:flutter_svg/svg.dart:531:15)
I/flutter ( 592): #7 AssetBundlePictureProvider._loadAsync (package:flutter_svg/src/picture_provider.dart:457:19)
I/flutter ( 592):
I/flutter ( 592): #8 AssetBundlePictureProvider.load (package:flutter_svg/src/picture_provider.dart:435:43)
I/flutter ( 592): #9 PictureProvider.resolve.. (package:flutter_svg/src/picture_provider.dart:327:17)
I/flutter ( 592): #10 PictureCache.putIfAbsent (package:flutter_svg/src/picture_cache.dart:67:22)
I/flutter ( 592): #11 PictureProvider.resolve. (package:flutter_svg/src/picture_provider.dart:325:16)
I/flutter ( 592): #12 SynchronousFuture.then (package:flutter/src/foundation/synchronous_future.dart:41:29)
I/flutter ( 592): #13 PictureProvider.resolve (package:flutter_svg/src/picture_provider.dart:322:24)
I/flutter ( 592): #14 _SvgPictureState._resolveImage (package:flutter_svg/svg.dart:641:10)
I/flutter ( 592): #15 _SvgPictureState.didChangeDependencies (package:flutter_svg/svg.dart:615:5)
I/flutter ( 592): #16 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4661:12)
I/flutter ( 592): #17 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4476:5)
I/flutter ( 592): ... Normal element mounting (13 frames)
I/flutter ( 592): #30 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14)
I/flutter ( 592): #31 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5947:32)
I/flutter ( 592): ... Normal element mounting (19 frames)
I/flutter ( 592): #50 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14)
I/flutter ( 592): #51 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5947:32)
I/flutter ( 592): ... Normal element mounting (193 frames)
I/flutter ( 592): #244 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14)
I/flutter ( 592): #245 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5947:32)
I/flutter ( 592): ... Normal element mounting (253 frames)
I/flutter ( 592): #498 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14)
I/flutter ( 592): #499 Element.updateChild (package:flutter/src/widgets/framework.dart:3214:18)
I/flutter ( 592): #500 RenderObjectToWidgetElement._rebuild (package:flutter/src/widgets/binding.dart:1148:16)
I/flutter ( 592): #501 RenderObjectToWidgetElement.mount (package:flutter/src/widgets/binding.dart:1119:5)
I/flutter ( 592): #502 RenderObjectToWidgetAdapter.attachToRenderTree. (package:flutter/src/widgets/binding.dart:1061:17)
I/flutter ( 592): #503 BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2607:19)
I/flutter ( 592): #504 RenderObjectToWidgetAdapter.attachToRenderTree (package:flutter/src/widgets/binding.dart:1060:13)
I/flutter ( 592): #505 WidgetsBinding.attachRootWidget (package:flutter/src/widgets/binding.dart:941:7)
I/flutter ( 592): #506 WidgetsBinding.scheduleAttachRootWidget. (package:flutter/src/widgets/binding.dart:922:7)
I/flutter ( 592): (elided 11 frames from class _RawReceivePortImpl, class _Timer, dart:async, and dart:async-patch)
I/flutter ( 592):
I/flutter ( 592): Picture provider: ExactAssetPicture(name: "packages/flag/res/flag/np.svg", bundle: null,
I/flutter ( 592): colorFilter: null)
I/flutter ( 592): Picture key: AssetBundlePictureKey(bundle: PlatformAssetBundle#cae03(), name:
I/flutter ( 592): "packages/flag/res/flag/np.svg", colorFilter: null)
I/flutter ( 592): ════════════════════════════════════════════════════════════════════════════════════════════════════

No serbian flag?

can't see one? in general it's hard to find the right flag for each enum mapping. like mapping

'ad',
'ae',
'af',
'ag',
'al',
'am',
'ao',
'ar',
'at',
'au',
'az',
'ba',
'bb',
'bd',
'be',
'bf',
'bg',
'bh',
'bi',
'bj',
'bn',
'bo',
'br',
'bs',
'bt',
'bw',
'by',
'bz',
'ca',
'cd',
'cf',
'cg',
'ch',
'ci',
'cl',
'cm',
'cn',
'co',
'cr',
'cu',
'cv',
'cy',
'cz',
'de',
'dj',
'dk',
'dm',
'do',
'dz',
'ec',
'ee',
'eg',
'eh',
'er',
'es',
'et',
'eu',
'fi',
'fj',
'fm',
'fr',
'ga',
'gb',
'gd',
'ge',
'gh',
'gm',
'gn',
'gq',
'gr',
'gt',
'gw',
'gy',
'hk',
'hn',
'hr',
'ht',
'hu',
'id',
'ie',
'il',
'in',
'iq',
'ir',
'is',
'it',
'jm',
'jo',
'jp',
'ke',
'kg',
'kh',
'ki',
'km',
'kn',
'kp',
'kr',
'kw',
'kz',
'la',
'lb',
'lc',
'li',
'lk',
'lr',
'ls',
'lt',
'lu',
'lv',
'ly',
'ma',
'mc',
'md',
'me',
'mg',
'mh',
'mk',
'ml',
'mm',
'mn',
'mo',
'mr',
'mt',
'mu',
'mv',
'mw',
'mx',
'my',
'mz',
'na',
'ne',
'ng',
'ni',
'nl',
'no',
'np',
'nr',
'nz',
'om',
'pa',
'pe',
'pg',
'ph',
'pk',
'pl',
'ps',
'pt',
'pw',
'py',
'qa',
'ro',
'rs',
'ru',
'rw',
'sa',
'sb',
'sc',
'sd',
'se',
'sg',
'si',
'sk',
'sl',
'sm',
'sn',
'so',
'sr',
'ss',
'st',
'sv',
'sy',
'sz',
'td',
'tg',
'th',
'tj',
'tl',
'tm',
'tn',
'to',
'tr',
'tt',
'tv',
'tw',
'tz',
'ua',
'ug',
'us',
'uy',
'uz',
'va',
'vc',
've',
'vn',
'vu',
'ws',
'xk',
'ye',
'za',
'zm',
'zw'

to the country names

FormatException("Invalid double", source)

Greetings, I have an error of type FormatException("Invalid double", source) when I try to use the flag of Colombia code CO, it works for me with the one of Mexico and some others

image

image

Thank you for the package it has been very useful for me

Exception when drawing Dominica flag

I/flutter (23676): ══║ EXCEPTION CAUGHT BY SVG β•žβ•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•
I/flutter (23676): The following FormatException was thrown resolving a single-frame picture stream:
I/flutter (23676): Invalid double
I/flutter (23676): 1pt
I/flutter (23676):
I/flutter (23676): When the exception was thrown, this was the stack:
I/flutter (23676): #0 double.parse (dart:core-patch/double_patch.dart:112:28)
I/flutter (23676): #1 parseDouble (package:flutter_svg/src/utilities/numbers.dart:15:17)
I/flutter (23676): #2 parseStroke (package:flutter_svg/src/svg/xml_parsers.dart:231:11)
I/flutter (23676): #3 parseStyle (package:flutter_svg/src/svg/xml_parsers.dart:401:13)
I/flutter (23676): #4 SvgParserState.addShape (package:flutter_svg/src/svg/parser_state.dart:842:7)
I/flutter (23676): #5 SvgParserState.startElement (package:flutter_svg/src/svg/parser_state.dart:865:12)
I/flutter (23676): #6 SvgParserState.parse (package:flutter_svg/src/svg/parser_state.dart:772:13)
I/flutter (23676):
I/flutter (23676): #7 SvgParser.parse (package:flutter_svg/parser.dart:14:60)
I/flutter (23676): #8 Svg.fromSvgString (package:flutter_svg/svg.dart:110:25)
I/flutter (23676): #9 Svg.svgPictureStringDecoder (package:flutter_svg/svg.dart:72:36)
I/flutter (23676): #10 SvgPicture.svgStringDecoder. (package:flutter_svg/svg.dart:531:15)
I/flutter (23676): #11 AssetBundlePictureProvider._loadAsync (package:flutter_svg/src/picture_provider.dart:457:19)
I/flutter (23676):
I/flutter (23676): #12 AssetBundlePictureProvider.load (package:flutter_svg/src/picture_provider.dart:435:43)
I/flutter (23676): #13 PictureProvider.resolve.. (package:flutter_svg/src/picture_provider.dart:327:17)
I/flutter (23676): #14 PictureCache.putIfAbsent (package:flutter_svg/src/picture_cache.dart:67:22)
I/flutter (23676): #15 PictureProvider.resolve. (package:flutter_svg/src/picture_provider.dart:325:16)
I/flutter (23676): #16 SynchronousFuture.then (package:flutter/src/foundation/synchronous_future.dart:41:29)
I/flutter (23676): #17 PictureProvider.resolve (package:flutter_svg/src/picture_provider.dart:322:24)
I/flutter (23676): #18 _SvgPictureState._resolveImage (package:flutter_svg/svg.dart:641:10)
I/flutter (23676): #19 _SvgPictureState.didChangeDependencies (package:flutter_svg/svg.dart:615:5)
I/flutter (23676): #20 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4661:12)
I/flutter (23676): #21 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4476:5)
I/flutter (23676): ... Normal element mounting (13 frames)
I/flutter (23676): #34 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14)
I/flutter (23676): #35 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5947:32)
I/flutter (23676): ... Normal element mounting (19 frames)
I/flutter (23676): #54 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14)
I/flutter (23676): #55 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5947:32)
I/flutter (23676): ... Normal element mounting (193 frames)
I/flutter (23676): #248 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14)
I/flutter (23676): #249 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5947:32)
I/flutter (23676): ... Normal element mounting (253 frames)
I/flutter (23676): #502 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14)
I/flutter (23676): #503 Element.updateChild (package:flutter/src/widgets/framework.dart:3214:18)
I/flutter (23676): #504 RenderObjectToWidgetElement._rebuild (package:flutter/src/widgets/binding.dart:1148:16)
I/flutter (23676): #505 RenderObjectToWidgetElement.mount (package:flutter/src/widgets/binding.dart:1119:5)
I/flutter (23676): #506 RenderObjectToWidgetAdapter.attachToRenderTree. (package:flutter/src/widgets/binding.dart:1061:17)
I/flutter (23676): #507 BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2607:19)
I/flutter (23676): #508 RenderObjectToWidgetAdapter.attachToRenderTree (package:flutter/src/widgets/binding.dart:1060:13)
I/flutter (23676): #509 WidgetsBinding.attachRootWidget (package:flutter/src/widgets/binding.dart:941:7)
I/flutter (23676): #510 WidgetsBinding.scheduleAttachRootWidget. (package:flutter/src/widgets/binding.dart:922:7)
I/flutter (23676): (elided 11 frames from class _RawReceivePortImpl, class _Timer, dart:async, and dart:async-patch)
I/flutter (23676):
I/flutter (23676): Picture provider: ExactAssetPicture(name: "packages/flag/res/flag/dm.svg", bundle: null,
I/flutter (23676): colorFilter: null)
I/flutter (23676): Picture key: AssetBundlePictureKey(bundle: PlatformAssetBundle#547f1(), name:
I/flutter (23676): "packages/flag/res/flag/dm.svg", colorFilter: null)
I/flutter (23676): ════════════════════════════════════════════════════════════════════════════════════════════════════

FormatException with Malta 4x3 svg

Out of ~25 or so flags I use, one is cousing trouble - Malta:

Web:

======== Exception caught by SVG ===================================================================
The following FormatException was thrown resolving a single-frame picture stream:
Invalid double
1pt

When the exception was thrown, this was the stack: 
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/errors.dart 251:49  throw_
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/_internal/js_dev_runtime/patch/core_patch.dart 214:5             parse
packages/flutter_svg/src/utilities/numbers.dart 23:17                                                                      parseDouble
packages/flutter_svg/src/svg/parser_state.dart 1065:27                                                                     parseDoubleWithUnits
packages/flutter_svg/src/svg/parser_state.dart 1357:13                                                                     parseStroke
packages/flutter_svg/src/svg/parser_state.dart 1590:15                                                                     parseStyle
packages/flutter_svg/src/svg/parser_state.dart 955:7                                                                       addShape
packages/flutter_svg/src/svg/parser_state.dart 985:12                                                                      startElement
packages/flutter_svg/src/svg/parser_state.dart 881:13                                                                      parse
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 45:50            <fn>
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/async/zone.dart 1685:54                                          runUnary
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/async/future_impl.dart 159:18                                    handleValue
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/async/future_impl.dart 766:44                                    handleValueCallback
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/async/future_impl.dart 795:13                                    _propagateToListeners
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/async/future_impl.dart 465:9                                     callback
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/async/schedule_microtask.dart 40:11                              _microtaskLoop
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/async/schedule_microtask.dart 49:5                               _startMicrotaskLoop
C:/b/s/w/ir/cache/builder/src/out/host_debug/dart-sdk/lib/_internal/js_dev_runtime/patch/async_patch.dart 166:15           <fn>
Picture provider: ExactAssetPicture(name: "packages/flag/res/4x3/mt.svg", bundle: null, colorFilter: null)
Picture key: AssetBundlePictureKey(bundle: PlatformAssetBundle#6e2bc(), name: "packages/flag/res/4x3/mt.svg", colorFilter: null, theme: SvgTheme(currentColor: null, fontSize: 14, xHeight: 7))
====================================================================================================

Android:

======== Exception caught by SVG ===================================================================
The following FormatException was thrown resolving a single-frame picture stream:
Invalid double
1pt

When the exception was thrown, this was the stack: 
#0      double.parse (dart:core-patch/double_patch.dart:111:28)
#1      parseDouble (package:flutter_svg/src/utilities/numbers.dart:23:17)
#2      SvgParserState.parseDoubleWithUnits (package:flutter_svg/src/svg/parser_state.dart:1065:27)
#3      SvgParserState.parseStroke (package:flutter_svg/src/svg/parser_state.dart:1357:13)
#4      SvgParserState.parseStyle (package:flutter_svg/src/svg/parser_state.dart:1590:15)
#5      SvgParserState.addShape (package:flutter_svg/src/svg/parser_state.dart:955:7)
#6      SvgParserState.startElement (package:flutter_svg/src/svg/parser_state.dart:985:12)
#7      SvgParserState.parse (package:flutter_svg/src/svg/parser_state.dart:881:13)
<asynchronous suspension>
#8      SvgParser.parse (package:flutter_svg/parser.dart:27:12)
<asynchronous suspension>
#9      Svg.fromSvgString (package:flutter_svg/svg.dart:139:12)
<asynchronous suspension>
#10     Svg.svgPictureStringDecoder (package:flutter_svg/svg.dart:90:34)
<asynchronous suspension>
Picture provider: ExactAssetPicture(name: "packages/flag/res/4x3/mt.svg", bundle: null, colorFilter: null)
Picture key: AssetBundlePictureKey(bundle: PlatformAssetBundle#7afac(), name: "packages/flag/res/4x3/mt.svg", colorFilter: null, theme: SvgTheme(currentColor: null, fontSize: 14.0, xHeight: 7.0))
====================================================================================================

Exception when drawing Grenada flag

I/flutter (27623): ══║ EXCEPTION CAUGHT BY SVG β•žβ•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•
I/flutter (27623): The following StateError was thrown resolving a single-frame picture stream:
I/flutter (27623): Bad state: Expected to find Drawable with id url(#s2).
I/flutter (27623): Have ids: (url(#s), url(#c), url(#t))
I/flutter (27623):
I/flutter (27623): When the exception was thrown, this was the stack:
I/flutter (27623): #0 DrawableDefinitionServer.getDrawable (package:flutter_svg/src/vector_drawable.dart:577:7)
I/flutter (27623): #1 _Elements.use (package:flutter_svg/src/svg/parser_state.dart:184:34)
I/flutter (27623): #2 SvgParserState.parse (package:flutter_svg/src/svg/parser_state.dart:776:26)
I/flutter (27623):
I/flutter (27623): #3 SvgParser.parse (package:flutter_svg/parser.dart:14:60)
I/flutter (27623): #4 Svg.fromSvgString (package:flutter_svg/svg.dart:110:25)
I/flutter (27623): #5 Svg.svgPictureStringDecoder (package:flutter_svg/svg.dart:72:36)
I/flutter (27623): #6 SvgPicture.svgStringDecoder. (package:flutter_svg/svg.dart:531:15)
I/flutter (27623): #7 AssetBundlePictureProvider._loadAsync (package:flutter_svg/src/picture_provider.dart:457:19)
I/flutter (27623):
I/flutter (27623): #8 AssetBundlePictureProvider.load (package:flutter_svg/src/picture_provider.dart:435:43)
I/flutter (27623): #9 PictureProvider.resolve.. (package:flutter_svg/src/picture_provider.dart:327:17)
I/flutter (27623): #10 PictureCache.putIfAbsent (package:flutter_svg/src/picture_cache.dart:67:22)
I/flutter (27623): #11 PictureProvider.resolve. (package:flutter_svg/src/picture_provider.dart:325:16)
I/flutter (27623): #12 SynchronousFuture.then (package:flutter/src/foundation/synchronous_future.dart:41:29)
I/flutter (27623): #13 PictureProvider.resolve (package:flutter_svg/src/picture_provider.dart:322:24)
I/flutter (27623): #14 _SvgPictureState._resolveImage (package:flutter_svg/svg.dart:641:10)
I/flutter (27623): #15 _SvgPictureState.didChangeDependencies (package:flutter_svg/svg.dart:615:5)
I/flutter (27623): #16 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4661:12)
I/flutter (27623): #17 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4476:5)
I/flutter (27623): ... Normal element mounting (13 frames)
I/flutter (27623): #30 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14)
I/flutter (27623): #31 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5947:32)
I/flutter (27623): ... Normal element mounting (19 frames)
I/flutter (27623): #50 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14)
I/flutter (27623): #51 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5947:32)
I/flutter (27623): ... Normal element mounting (193 frames)
I/flutter (27623): #244 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14)
I/flutter (27623): #245 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5947:32)
I/flutter (27623): ... Normal element mounting (253 frames)
I/flutter (27623): #498 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14)
I/flutter (27623): #499 Element.updateChild (package:flutter/src/widgets/framework.dart:3214:18)
I/flutter (27623): #500 RenderObjectToWidgetElement._rebuild (package:flutter/src/widgets/binding.dart:1148:16)
I/flutter (27623): #501 RenderObjectToWidgetElement.mount (package:flutter/src/widgets/binding.dart:1119:5)
I/flutter (27623): #502 RenderObjectToWidgetAdapter.attachToRenderTree. (package:flutter/src/widgets/binding.dart:1061:17)
I/flutter (27623): #503 BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2607:19)
I/flutter (27623): #504 RenderObjectToWidgetAdapter.attachToRenderTree (package:flutter/src/widgets/binding.dart:1060:13)
I/flutter (27623): #505 WidgetsBinding.attachRootWidget (package:flutter/src/widgets/binding.dart:941:7)
I/flutter (27623): #506 WidgetsBinding.scheduleAttachRootWidget. (package:flutter/src/widgets/binding.dart:922:7)
I/flutter (27623): (elided 11 frames from class _RawReceivePortImpl, class _Timer, dart:async, and dart:async-patch)
I/flutter (27623):
I/flutter (27623): Picture provider: ExactAssetPicture(name: "packages/flag/res/flag/gd.svg", bundle: null,
I/flutter (27623): colorFilter: null)
I/flutter (27623): Picture key: AssetBundlePictureKey(bundle: PlatformAssetBundle#69e5d(), name:
I/flutter (27623): "packages/flag/res/flag/gd.svg", colorFilter: null)
I/flutter (27623): ════════════════════════════════════════════════════════════════════════════════════════════════════

Proposal: Use the ISO 3166-1 alpha-2 specification for the list of flags

Currently, this library contains flags of states that are UN members, complemented by a couple of other flags which belong to disputed or undisputed territories. However, at this point, the addition of these territories seem arbitrary.

To prevent any discussion that may arise in the future about the addition of a certain flag, and to add around 50 territories which are currently missing from this library, I propose the list of ISO 3166-1 alpha-2 country codes to be used to define the body of countries and territories included in this library.

The ISO 3166-1 alpha-2 specification seems to be the de facto standard that defines countries and territories. It comprises all the countries which are currently included in the library and will add around 50 more, although some of them will not have associated flags.

Cannot push to repo some small changes

Hi, I wanted to push a fix because I've noticed that there are some problems with the countries like Scotland gb-sct, Wales gb-wls etc. there are not mapped and cannot address it with enum.
Also, the files should be renamed with an underscore to list them in enum GB_SCT.

When I want to push I'm getting:

ERROR: Permission to LunaGao/flag_flutter.git denied to philiposD.
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

List web as supported platform

Currently the page at pub.dev lists Android, iOS, Linux, MacOS and Windows as supported platforms. However the issue #41 suggests that web works as well. Can you list it as a supported platform?

I am adding web for my app and I try to sort out packages that do not support it to replace them. This should be achievable by looking at tops of pub.dev pages alone.

[Version: 6.0.0] Failed to find definition for #a

Following exceptions are coming after upgrading to new version: 6.0.0

════════ Exception caught by SVG ═══════════════════════════════════════════════
The following assertion was thrown while parsing AssetBundlePictureKey(bundle: PlatformAssetBundle#0d224(), name: "packages/flag/res/4x3/mx.svg", colorFilter: null, theme: SvgTheme(currentColor: null, fontSize: 16, xHeight: 8)) in radialGradient:
Failed to find definition for #a

This library only supports and xlink:href references that are defined ahead of their references.

This error can be caused when the desired definition is defined after the element referring to it (e.g. at the end of the file), or defined in another file.

This error is treated as non-fatal, but your SVG file will likely not render as intended

Still getting problems similar to those described by issue #44.

Issue #44 was reported as fixed on Feb 19, but I still get very similar messages:

======== Exception caught by SVG ===================================================================
The following UnimplementedError was thrown in parseSvgElement:
The <style> element is not implemented in this library.

Style elements are not supported by this library and the requested SVG may not render as intended.

If possible, ensure the SVG uses inline styles and/or attributes (which are supported), or use a preprocessing utility such as svgcleaner to inline the styles for you.

Picture key: AssetBundlePictureKey(bundle: PlatformAssetBundle#f8196(), name: "packages/flag/res/flag/ki.svg", colorFilter: null)

======== Exception caught by SVG ===================================================================
The following UnimplementedError was thrown in parseSvgElement:
The <style> element is not implemented in this library.

Style elements are not supported by this library and the requested SVG may not render as intended.

If possible, ensure the SVG uses inline styles and/or attributes (which are supported), or use a preprocessing utility such as svgcleaner to inline the styles for you.

Picture key: AssetBundlePictureKey(bundle: PlatformAssetBundle#f8196(), name: "packages/flag/res/flag/mo.svg", colorFilter: null)

I/flutter ( 9950): unhandled element metadata; Picture key: AssetBundlePictureKey(bundle: PlatformAssetBundle#f8196(), name: "packages/flag/res/flag/xk.svg", colorFilter: null)
I/flutter ( 9950): unhandled element sodipodi:namedview; Picture key: AssetBundlePictureKey(bundle: PlatformAssetBundle#f8196(), name: "packages/flag/res/flag/xk.svg", colorFilter: null)
I/flutter ( 9950): Warning: Flutter SVG only supports the following formats for width and height on the SVG root:
I/flutter ( 9950): width="100%"
I/flutter ( 9950): width="100px"
I/flutter ( 9950): width="100" (where the number will be treated as pixels).
I/flutter ( 9950): The supplied value (756.13pt) will be discarded and treated as if it had not been specified.
I/flutter ( 9950): Warning: Flutter SVG only supports the following formats for width and height on the SVG root:
I/flutter ( 9950): width="100%"
I/flutter ( 9950): width="100px"
I/flutter ( 9950): width="100" (where the number will be treated as pixels).
I/flutter ( 9950): The supplied value (504.09pt) will be discarded and treated as if it had not been specified.

[Svg] decoding error and warning

I/flutter ( 7714): ht
I/flutter ( 7714): unhandled element metadata; Picture key: AssetBundlePictureKey(bundle: PlatformAssetBundle#5b0e9(), name: "packages/flag/res/flag/ht.svg", colorFilter: null)
I/flutter ( 7714): unhandled element inkscape:path-effect; Picture key: AssetBundlePictureKey(bundle: PlatformAssetBundle#5b0e9(), name: "packages/flag/res/flag/ht.svg", colorFilter: null)
I/flutter ( 7714): unhandled element sodipodi:namedview; Picture key: AssetBundlePictureKey(bundle: PlatformAssetBundle#5b0e9(), name: "packages/flag/res/flag/ht.svg", colorFilter: null)
I/flutter ( 7714): ki
I/flutter ( 7714): ══║ EXCEPTION CAUGHT BY SVG β•žβ•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•
I/flutter ( 7714): The following UnimplementedError was thrown in parseSvgElement:
I/flutter ( 7714): The <style> element is not implemented in this library.
I/flutter ( 7714): 
I/flutter ( 7714): Style elements are not supported by this library and the requested SVG may not render as intended.
I/flutter ( 7714): If possible, ensure the SVG uses inline styles and/or attributes (which are supported), or use a
I/flutter ( 7714): preprocessing utility such as svgcleaner to inline the styles for you.
I/flutter ( 7714): 
I/flutter ( 7714): Picture key: AssetBundlePictureKey(bundle: PlatformAssetBundle#5b0e9(), name:
I/flutter ( 7714):   "packages/flag/res/flag/ki.svg", colorFilter: null)
I/flutter ( 7714): ════════════════════════════════════════════════════════════════════════════════════════════════════
I/flutter ( 7714): rs
I/flutter ( 7714): Warning: Flutter SVG only supports the following formats for `width` and `height` on the SVG root:
I/flutter ( 7714):   width="100%"
I/flutter ( 7714):   width="100px"
I/flutter ( 7714):   width="100" (where the number will be treated as pixels).
I/flutter ( 7714): The supplied value (756.13pt) will be discarded and treated as if it had not been specified.
I/flutter ( 7714): Warning: Flutter SVG only supports the following formats for `width` and `height` on the SVG root:
I/flutter ( 7714):   width="100%"
I/flutter ( 7714):   width="100px"
I/flutter ( 7714):   width="100" (where the number will be treated as pixels).
I/flutter ( 7714): The supplied value (504.09pt) will be discarded and treated as if it had not been specified.

Conflict with new version of flutter_svg

Hi,
Thanks for providing this package, here is my issue with the latest version of flutter:

"Because flag 3.0.1 depends on flutter_svg ^0.17.4 and no versions of flag match >3.0.1 <4.0.0, flag ^3.0.1 requires flutter_svg ^0.17.4."

Const

How i can do it with const for more perfomance my system?

child: const Flag.fromCode(
  FlagsCode.KI,
  height: 100,
),

flags have different sizes

Flags are returned with different sizes

ListTile(
                    leading: Flags.getFullFlag('it', 20, null),
                    title:
                        Text(AppLocalizations.of(context).translate('italian')),
                  ),
                  ListTile(
                    leading: Flags.getFullFlag('gb', 20, null),
                    title:
                        Text(AppLocalizations.of(context).translate('english')),
                  ),

image

Web not working - path not found

I'm trying to use this package for web app and I am getting an exception, that path doesn't exist:

The following ProgressEvent$ object was thrown resolving an image codec:
  [object ProgressEvent]

When the exception was thrown, this was the stack
Image provider: NetworkImage("packages/flag/res/flag/cz.svg", scale: 1)
Image key: NetworkImage("packages/flag/res/flag/cz.svg", scale: 1)

When I run it using flutter run -d chrome, I can find those icons in assets/packages/flag/res/flag/ - starting with assets.
However when I run it using VS Code debugging (F5), neither of those paths exist.

I am using Flutter beta version 1.25.0-8.1.pre.

Exception when drawing CΓ΄te d'Ivoire (Ivory Coast) flag

I/flutter (30856): ══║ EXCEPTION CAUGHT BY SVG β•žβ•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•
I/flutter (30856): The following assertion was thrown resolving a single-frame picture stream:
I/flutter (30856): Unable to load asset: packages/flag/res/flag/ci.svg
I/flutter (30856):
I/flutter (30856): When the exception was thrown, this was the stack:
I/flutter (30856): #0 PlatformAssetBundle.load (package:flutter/src/services/asset_bundle.dart:221:7)
I/flutter (30856):
I/flutter (30856): #1 AssetBundle.loadString (package:flutter/src/services/asset_bundle.dart:67:33)
I/flutter (30856): #2 CachingAssetBundle.loadString. (package:flutter/src/services/asset_bundle.dart:162:56)
I/flutter (30856): #3 _LinkedHashMapMixin.putIfAbsent (dart:collection-patch/compact_hash.dart:293:23)
I/flutter (30856): #4 CachingAssetBundle.loadString (package:flutter/src/services/asset_bundle.dart:162:27)
I/flutter (30856): #5 AssetBundlePictureProvider._loadAsync (package:flutter_svg/src/picture_provider.dart:449:42)
I/flutter (30856): #6 AssetBundlePictureProvider.load (package:flutter_svg/src/picture_provider.dart:435:43)
I/flutter (30856): #7 PictureProvider.resolve.. (package:flutter_svg/src/picture_provider.dart:327:17)
I/flutter (30856): #8 PictureCache.putIfAbsent (package:flutter_svg/src/picture_cache.dart:67:22)
I/flutter (30856): #9 PictureProvider.resolve. (package:flutter_svg/src/picture_provider.dart:325:16)
I/flutter (30856): #10 SynchronousFuture.then (package:flutter/src/foundation/synchronous_future.dart:41:29)
I/flutter (30856): #11 PictureProvider.resolve (package:flutter_svg/src/picture_provider.dart:322:24)
I/flutter (30856): #12 _SvgPictureState._resolveImage (package:flutter_svg/svg.dart:641:10)
I/flutter (30856): #13 _SvgPictureState.didChangeDependencies (package:flutter_svg/svg.dart:615:5)
I/flutter (30856): #14 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4661:12)
I/flutter (30856): #15 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4476:5)
I/flutter (30856): ... Normal element mounting (13 frames)
I/flutter (30856): #28 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14)
I/flutter (30856): #29 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5947:32)
I/flutter (30856): ... Normal element mounting (19 frames)
I/flutter (30856): #48 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14)
I/flutter (30856): #49 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5947:32)
I/flutter (30856): ... Normal element mounting (193 frames)
I/flutter (30856): #242 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14)
I/flutter (30856): #243 MultiChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:5947:32)
I/flutter (30856): ... Normal element mounting (253 frames)
I/flutter (30856): #496 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3446:14)
I/flutter (30856): #497 Element.updateChild (package:flutter/src/widgets/framework.dart:3214:18)
I/flutter (30856): #498 RenderObjectToWidgetElement._rebuild (package:flutter/src/widgets/binding.dart:1148:16)
I/flutter (30856): #499 RenderObjectToWidgetElement.mount (package:flutter/src/widgets/binding.dart:1119:5)
I/flutter (30856): #500 RenderObjectToWidgetAdapter.attachToRenderTree. (package:flutter/src/widgets/binding.dart:1061:17)
I/flutter (30856): #501 BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2607:19)
I/flutter (30856): #502 RenderObjectToWidgetAdapter.attachToRenderTree (package:flutter/src/widgets/binding.dart:1060:13)
I/flutter (30856): #503 WidgetsBinding.attachRootWidget (package:flutter/src/widgets/binding.dart:941:7)
I/flutter (30856): #504 WidgetsBinding.scheduleAttachRootWidget. (package:flutter/src/widgets/binding.dart:922:7)
I/flutter (30856): (elided 11 frames from class _RawReceivePortImpl, class _Timer, dart:async, and dart:async-patch)
I/flutter (30856):
I/flutter (30856): Picture provider: ExactAssetPicture(name: "packages/flag/res/flag/ci.svg", bundle: null,
I/flutter (30856): colorFilter: null)
I/flutter (30856): Picture key: AssetBundlePictureKey(bundle: PlatformAssetBundle#cd2b0(), name:
I/flutter (30856): "packages/flag/res/flag/ci.svg", colorFilter: null)
I/flutter (30856): ════════════════════════════════════════════════════════════════════════════════════════════════════

Error on trying to get brazilian flag

Error:

``════════ Exception caught by SVG ═══════════════════════════════════════════════
The following StateError was thrown resolving a single-frame picture stream:
Bad state: Expected to find Drawable with id url(#O).
Have ids: (url(#D), url(#E), url(#e), url(#G))

When the exception was thrown, this was the stack
#0 DrawableDefinitionServer.getDrawable
package:flutter_svg/src/vector_drawable.dart:577
#1 _Elements.use
package:flutter_svg/…/svg/parser_state.dart:184
#2 SvgParserState.parse
package:flutter_svg/…/svg/parser_state.dart:776

#3 SvgParser.parse
package:flutter_svg/parser.dart:14
...
Picture provider: ExactAssetPicture(name: "packages/flag/res/flag/br.svg", bundle: null, colorFilter: null)
Picture key: AssetBundlePictureKey(bundle: PlatformAssetBundle#12a7a(), name: "packages/flag/res/flag/br.svg", colorFilter: null)
════════════════════════════════════════════════════════════════════════════════´´

I tried to add other flags (AB and US) and they work perfectly, but the brazilian flag isn't working

Consider swapping strings for enum

So, I think enums are just safer because we are in a typed language so makes sense to use it. You could keep strings as is and mark them as deprecated so that in near future they can be removed without breaking changes. For those who still prefer literals you could provide a Flag.fromString, but it wouldn't harm to get rid of the strings, but that's just my opinion. Would like to know what you guys think.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.