tag:github.com,2008:https://github.com/dhershman1/phone-fns/releasesRelease notes from phone-fns2024-10-18T03:30:18Ztag:github.com,2008:Repository/108922731/v4.1.22024-10-18T03:31:18Zv4.1.2<h2>Fixed</h2>
<ul>
<li>Documentation examples for <code>breakdownWithFormat</code> function</li>
</ul>
<h2>Changed</h2>
<ul>
<li>Updated <code>pinet</code> to v1.2.1</li>
</ul>dhershman1tag:github.com,2008:Repository/108922731/v4.1.12024-10-15T12:06:16Zv4.1.1<h3>💄 New</h3>
<ul>
<li>Deprecated <code>isValid</code> function in favor of <code>isValidWithFormat</code></li>
</ul>
<h3>🎊 Enhanced</h3>
<ul>
<li>Reset codecov coverage report using <code>c8</code> package</li>
<li>Updated unit tests for some more coverage</li>
<li>Cleaned up some round about logic in the codebase</li>
</ul>dhershman1tag:github.com,2008:Repository/108922731/v4.1.02024-10-13T16:06:01Zv4.1.0<h2>💅 New</h2>
<ul>
<li>Added <code>normalize</code> function
<ul>
<li>This function strips out special characters and trims the phone number, much like uglify but skips non-digit characters</li>
<li>Example: <code>normalize('555.444.3333 x 123') // => '5554443333x123'</code> vs <code>uglify('555.444.3333 x 123') // => 5554443333123</code></li>
</ul>
</li>
<li>Added <code>validate</code> function
<ul>
<li>This is a validation function, but works better for world wide phone numbers as well. Expects the full number</li>
<li>Example: <code>333-444-5555</code> comes back valid but <code>444-5555</code> is invalid to this function</li>
</ul>
</li>
<li>Added <code>isValidWithFormat</code> function
<ul>
<li>This takes a string phone number and a format string and validates the phone using the format</li>
<li>It's also passed through the <code>validate</code> function for an extra step of validation</li>
</ul>
</li>
<li>Added <code>findSeparators</code> function
<ul>
<li>A simple function that finds the separators in a phone number and returns them as an array</li>
</ul>
</li>
<li>Added <code>breakdownWithFormat</code> function
<ul>
<li>Works a lot like <code>breakdown</code> but follows a strict format provided by the user to breakdown the number into an object</li>
<li>This allows for a wider range of phone number support for breakdown</li>
</ul>
</li>
</ul>
<h2>🎊 Enhanced</h2>
<ul>
<li><code>Phone-fns</code> is no longer dependant on <code>Kyanite</code> and is dependency free!</li>
<li><code>isValid</code> description to explain that it mostly focused on NANP numbers</li>
<li><code>breakdown</code> description to better explain that it's main focus is NANP numbers and its gachas</li>
<li>We more than doubled our unit tests! Woo!</li>
</ul>
<h2>Chore</h2>
<ul>
<li>Renamed test files to <code>*.spec.js</code> instead of just <code>*.js</code></li>
</ul>dhershman1tag:github.com,2008:Repository/108922731/v4.0.22024-10-07T16:36:51Zv4.0.2<h2>Fixed</h2>
<ul>
<li>Typo for extension in types <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="2423009037" data-permission-text="Title is private" data-url="https://github.com/dhershman1/phone-fns/issues/14" data-hovercard-type="issue" data-hovercard-url="/dhershman1/phone-fns/issues/14/hovercard" href="https://github.com/dhershman1/phone-fns/issues/14">#14</a> @JonBee</li>
</ul>
<h2>Chore</h2>
<ul>
<li>Dependency Updates</li>
</ul>dhershman1tag:github.com,2008:Repository/108922731/v4.0.12024-01-28T05:00:05Zv4.0.1<h2>💅 New</h2>
<ul>
<li>Added more unit tests for <code>isValid</code> and <code>breakdown</code></li>
</ul>
<h2>🔧 Fixed</h2>
<ul>
<li>Added warning into README that currently phone-fns is focused on US based phone number styles</li>
<li>Updated github action to LTS of node</li>
</ul>
<h2>Chore</h2>
<ul>
<li>Updated dependencies</li>
</ul>dhershman1tag:github.com,2008:Repository/108922731/v4.0.02023-08-17T18:11:27Zv4.0.0<h2>🚨 Breaking Changes</h2>
<ul>
<li>Converted Phone-Fns to a standard ESM module
<ul>
<li>This means if you are using import statements in an ESM module for phone-fns this changes:
<ul>
<li><code>import phoneFns from 'phone-fns'</code> --> <code>import * as phoneFns from 'phone-fns'</code></li>
<li>You can also just destructure from here still like so: <code>import { isValid } from 'phone-fns'</code></li>
</ul>
</li>
<li>Phone fns should still support common js syntax out of the box as well</li>
</ul>
</li>
<li>Upgraded to <code>Kyanite v2.0.1</code></li>
</ul>
<h2>🎊 New</h2>
<ul>
<li>CDN support sould be working for phone-fns again
<ul>
<li>Updated README to reflect these changes</li>
</ul>
</li>
</ul>
<h2>🥇 Improved</h2>
<ul>
<li>Made typings less confusing</li>
</ul>dhershman1tag:github.com,2008:Repository/108922731/v3.2.32020-11-19T18:08:57Zv3.2.3<p><strong>What happened to v3.2.2?!</strong> - Well, uh funny story about that. I had work already in place on my development branch under the guise of v3.2.2, being me coming back to this after taking a break I thought it was already released... So... Turns out it wasn't! Now we're here.</p>
<h2>New</h2>
<ul>
<li>Switched over to <a href="https://github.com/dhershman1/pinet">pinet</a> jsdoc templating</li>
<li>Changed documentation hosting</li>
</ul>
<h2>Improved</h2>
<ul>
<li>All dependencies have been updated</li>
<li>Removed docs folder</li>
<li>Removed david-dm badge since it doesn't seem to be coming back</li>
<li>Documentation workflow now handled by circleci</li>
<li><code>format</code> can now take in <code>Number</code> type phone numbers</li>
</ul>dhershman1tag:github.com,2008:Repository/108922731/v3.2.12020-03-05T15:32:12Zv3.2.1<h2>Improved</h2>
<ul>
<li>Dependency updates</li>
<li>Unit tests</li>
<li>Optimization of some code pieces</li>
<li>Some documentation</li>
</ul>dhershman1tag:github.com,2008:Repository/108922731/v3.2.02019-07-01T15:33:00Zv3.2.0<h2>New</h2>
<ul>
<li>Added a placeholder style syntax for underscores <code>_</code></li>
</ul>dhershman1tag:github.com,2008:Repository/108922731/v3.1.02019-05-07T14:34:24Zv3.1.0<h2>Improved</h2>
<ul>
<li>Switched to internal currying</li>
<li>Improved <code>format</code>s performance and broke it down to a more intelligent function</li>
</ul>
<h2>Fixed</h2>
<ul>
<li>Typo in <code>format</code>s example</li>
<li>Remove unused code</li>
</ul>dhershman1