@@ -81,10 +81,10 @@ extension MiscExtensionsNonNullable on String {
8181 if (this .isBlank) {
8282 return '' ;
8383 }
84- if (s? .isBlank == true ) {
84+ if (s == null || s.isBlank ) {
8585 return this ;
8686 }
87- return this .replaceAll (s! , '' );
87+ return this .replaceAll (s, '' );
8888 }
8989
9090 /// Returns the average read time duration of the given `String` in seconds.
@@ -1804,14 +1804,20 @@ extension MiscExtensionsNonNullable on String {
18041804 /// String s = "esentis".wrap("AA", after: "BB"); // returns "AAesentisBB";
18051805 /// ```
18061806 String wrap (String ? before, {String ? after}) {
1807- before = before? .ifBlank ("" );
1808- if (after? .isBlank == true ) {
1809- if (before? .isCloseWrapChar () == true ) {
1810- before = before? .getOppositeChar ();
1807+ var resolvedBefore = before? .ifBlank ("" ) ?? "" ;
1808+ var resolvedAfter = after? .ifBlank ("" );
1809+
1810+ if (resolvedAfter == null ) {
1811+ if (resolvedBefore.isEmpty) {
1812+ return "$this " ;
1813+ }
1814+ if (resolvedBefore.isCloseWrapChar ()) {
1815+ resolvedBefore = resolvedBefore.getOppositeChar ();
18111816 }
1812- after = before ? .getOppositeChar ();
1817+ resolvedAfter = resolvedBefore .getOppositeChar ();
18131818 }
1814- return "$before ${this }${after ?.ifBlank (before ?? "" ) ?? before }" ;
1819+
1820+ return "$resolvedBefore ${this }${resolvedAfter }" ;
18151821 }
18161822
18171823 /// Returns the opposite wrap char of the `String` if possible, otherwise returns the same `String` .
0 commit comments