Skip to content

Commit f7b9071

Browse files
committed
v1.2.0
1 parent 48807ff commit f7b9071

8 files changed

+202
-466
lines changed

.gitignore

+24-2
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,25 @@
1-
# https://dart.dev/guides/libraries/private-files
2-
# Created by `dart pub`
1+
# Miscellaneous
2+
*.class
3+
*.log
4+
*.pyc
5+
*.swp
6+
.DS_Store
7+
.atom/
8+
.buildlog/
9+
.history
10+
.svn/
11+
12+
# IntelliJ & VSCode related
13+
*.iml
14+
*.ipr
15+
*.iws
16+
.idea/
17+
#.vscode/
18+
19+
# Flutter/Dart/Pub related
20+
**/doc/
321
.dart_tool/
22+
.packages
23+
.pub-cache/
24+
.pub/
25+
pubspec.lock

CHANGELOG.md

+11-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,18 @@
11
# Changelog
22

3-
## 1.0.1
3+
## [1.2.0] - 2025/01/09
4+
5+
- Added `triangulateFromPointsAndHolePoints` entry point
6+
- Improvements to internal model representation
7+
8+
## [1.1.0]
9+
10+
- Added ported fix from [mapbox/earcut#91](https://github.com/mapbox/earcut/pull/91)
11+
12+
## [1.0.1]
413

514
- Improved 'pana' score
615

7-
## 1.0.0
16+
## [1.0.0]
817

918
- Initial version

LICENSE

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
MIT License
22

3-
Copyright (c) 2023 Luka Stillingfleet (JaffaKetchup)
3+
Copyright (c) 2025 Luka Stillingfleet (JaffaKetchup)
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy
66
of this software and associated documentation files (the "Software"), to deal

README.md

+2
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,8 @@ Ear-clipping (earcutting) triangulation algorithm, ported (with minor API differ
2222
// Returns [3,0,4, 5,4,0, 3,4,7, 5,0,1, 2,3,7, 6,5,1, 2,7,6, 6,1,2]
2323
```
2424

25+
* `triangulateFromPointsAndHolePoints` performs the logic to generate `holeIndices` when the outline of a polygon and the outline of its holes are available as points seperately.
26+
2527
* More dimensions
2628
Expected to be in the format `[x0, y0, z0, x1, y1, z1, x2, y2, z2, ...]`
2729

jaffa_lints.yaml

+36-8
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,21 @@
11
linter:
22
rules:
33
- always_declare_return_types
4-
- always_require_non_null_named_parameters
54
- annotate_overrides
5+
- annotate_redeclares
66
- avoid_annotating_with_dynamic
7+
- avoid_bool_literals_in_conditional_expressions
8+
- avoid_catches_without_on_clauses
79
- avoid_catching_errors
810
- avoid_double_and_int_checks
911
- avoid_dynamic_calls
1012
- avoid_empty_else
13+
- avoid_equals_and_hash_code_on_mutable_classes
1114
- avoid_escaping_inner_quotes
1215
- avoid_field_initializers_in_const_classes
1316
- avoid_final_parameters
1417
- avoid_function_literals_in_foreach_calls
18+
- avoid_futureor_void
1519
- avoid_implementing_value_types
1620
- avoid_init_to_null
1721
- avoid_js_rounded_ints
@@ -24,8 +28,6 @@ linter:
2428
- avoid_relative_lib_imports
2529
- avoid_renaming_method_parameters
2630
- avoid_return_types_on_setters
27-
- avoid_returning_null
28-
- avoid_returning_null_for_future
2931
- avoid_returning_null_for_void
3032
- avoid_returning_this
3133
- avoid_setters_without_getters
@@ -34,6 +36,7 @@ linter:
3436
- avoid_slow_async_io
3537
- avoid_type_to_string
3638
- avoid_types_as_parameter_names
39+
- avoid_types_on_closure_parameters
3740
- avoid_unnecessary_containers
3841
- avoid_unused_constructor_parameters
3942
- avoid_void_async
@@ -45,15 +48,20 @@ linter:
4548
- cascade_invocations
4649
- cast_nullable_to_non_nullable
4750
- close_sinks
51+
- collection_methods_unrelated_type
52+
- combinators_ordering
4853
- comment_references
4954
- conditional_uri_does_not_exist
5055
- constant_identifier_names
5156
- control_flow_in_finally
5257
- curly_braces_in_flow_control_structures
58+
- dangling_library_doc_comments
5359
- depend_on_referenced_packages
5460
- deprecated_consistency
61+
- deprecated_member_use_from_same_package
5562
- directives_ordering
5663
- do_not_use_environment
64+
- document_ignores
5765
- empty_catches
5866
- empty_constructor_bodies
5967
- empty_statements
@@ -62,22 +70,31 @@ linter:
6270
- file_names
6371
- hash_and_equals
6472
- implementation_imports
65-
- iterable_contains_unrelated_type
73+
- implicit_call_tearoffs
74+
- implicit_reopen
75+
- invalid_case_patterns
76+
- invalid_runtime_check_with_js_interop_types
6677
- join_return_with_assignment
6778
- leading_newlines_in_multiline_strings
79+
- library_annotations
6880
- library_names
6981
- library_prefixes
7082
- library_private_types_in_public_api
71-
- list_remove_unrelated_type
83+
- lines_longer_than_80_chars
7284
- literal_only_boolean_expressions
85+
- matching_super_parameters
86+
- missing_code_block_language_in_doc_comment
7387
- missing_whitespace_between_adjacent_strings
7488
- no_adjacent_strings_in_list
7589
- no_default_cases
7690
- no_duplicate_case_values
7791
- no_leading_underscores_for_library_prefixes
7892
- no_leading_underscores_for_local_identifiers
93+
- no_literal_bool_comparisons
7994
- no_logic_in_create_state
8095
- no_runtimeType_toString
96+
- no_self_assignments
97+
- no_wildcard_variable_uses
8198
- non_constant_identifier_names
8299
- noop_primitive_operations
83100
- null_check_on_nullable_type_parameter
@@ -100,7 +117,6 @@ linter:
100117
- prefer_const_literals_to_create_immutables
101118
- prefer_constructors_over_static_methods
102119
- prefer_contains
103-
- prefer_equal_for_default_values
104120
- prefer_expression_function_bodies
105121
- prefer_final_fields
106122
- prefer_final_in_for_each
@@ -109,6 +125,7 @@ linter:
109125
- prefer_foreach
110126
- prefer_function_declarations_over_variables
111127
- prefer_generic_function_type_aliases
128+
- prefer_if_elements_to_conditional_expressions
112129
- prefer_if_null_operators
113130
- prefer_initializing_formals
114131
- prefer_inlined_adds
@@ -127,30 +144,38 @@ linter:
127144
- prefer_typing_uninitialized_variables
128145
- prefer_void_to_null
129146
- provide_deprecation_message
147+
- public_member_api_docs
130148
- recursive_getters
131149
- require_trailing_commas
132150
- secure_pubspec_urls
133151
- sized_box_for_whitespace
134152
- sized_box_shrink_expand
135153
- slash_for_doc_comments
136154
- sort_child_properties_last
155+
- sort_constructors_first
137156
- sort_pub_dependencies
138157
- sort_unnamed_constructors_first
139158
- test_types_in_equals
140159
- throw_in_finally
141160
- tighten_type_of_initializing_formals
142161
- type_annotate_public_apis
143162
- type_init_formals
163+
- type_literal_in_constant_pattern
144164
- unawaited_futures
165+
- unintended_html_in_doc_comment
145166
- unnecessary_await_in_return
146167
- unnecessary_brace_in_string_interps
168+
- unnecessary_breaks
147169
- unnecessary_const
148170
- unnecessary_constructor_name
149171
- unnecessary_getters_setters
150172
- unnecessary_lambdas
151173
- unnecessary_late
174+
- unnecessary_library_directive
175+
- unnecessary_library_name
152176
- unnecessary_new
153177
- unnecessary_null_aware_assignments
178+
- unnecessary_null_aware_operator_on_extension_on_nullable
154179
- unnecessary_null_checks
155180
- unnecessary_null_in_if_null_operators
156181
- unnecessary_nullable_for_final_variable_declarations
@@ -161,8 +186,9 @@ linter:
161186
- unnecessary_string_escapes
162187
- unnecessary_string_interpolations
163188
- unnecessary_this
189+
- unnecessary_to_list_in_spreads
190+
- unreachable_from_main
164191
- unrelated_type_equality_checks
165-
- unsafe_html
166192
- use_build_context_synchronously
167193
- use_colored_box
168194
- use_decorated_box
@@ -178,8 +204,10 @@ linter:
178204
- use_rethrow_when_possible
179205
- use_setters_to_change_properties
180206
- use_string_buffers
207+
- use_string_in_part_of_directives
181208
- use_super_parameters
182209
- use_test_throws_matchers
183210
- use_to_and_as_if_applicable
211+
- use_truncating_division
184212
- valid_regexps
185-
- void_checks
213+
- void_checks

0 commit comments

Comments
 (0)