classNameFromUrl static method
Implementation
static String classNameFromUrl(String url) {
final uri = Uri.tryParse(url);
if (uri == null) {
return "Model";
}
final segments =
uri.pathSegments.where((segment) => segment.isNotEmpty).toList();
if (segments.isEmpty) {
return "Model";
}
// Find the last meaningful resource.
//
// /users
// /users/1
// /users/123/posts
//
// We want:
// users
// users
// posts
String resource;
final last = segments.last;
if (_isId(last)) {
if (segments.length < 2) {
return "Model";
}
resource = segments[segments.length - 2];
} else {
resource = last;
}
resource = _removeQueryOrExtension(resource);
resource = _singularize(resource);
return _toPascalCase(resource);
}