/// <inheritdoc/>
        public IList <IBaseShape> Convert(string path)
        {
            var document = SKSvg.Open(path);

            if (document == null)
            {
                return(null);
            }

            using var drawable = SKSvg.ToDrawable(document);
            if (drawable == null)
            {
                return(null);
            }

            var shapes  = new List <IBaseShape>();
            var factory = _serviceProvider.GetService <IFactory>();

            ToShape(drawable, shapes, factory);

            return(shapes);
        }