aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorLouis Pilfold <louis@lpil.uk>2023-12-02 22:17:41 +0000
committerLouis Pilfold <louis@lpil.uk>2023-12-02 22:20:38 +0000
commitfe9535c8f7d8eb8c80d573fd688bd02812acb6f0 (patch)
treee28f399bd1aead83d4356a67c033bc3b2e583745 /src
parenta785f86f408ae4ef70baef80f68750309c54f806 (diff)
downloadgleam_stdlib-fe9535c8f7d8eb8c80d573fd688bd02812acb6f0.tar.gz
gleam_stdlib-fe9535c8f7d8eb8c80d573fd688bd02812acb6f0.zip
Fix to_graphemes on JS when Intl.Segmenter not available
Diffstat (limited to 'src')
-rw-r--r--src/gleam_stdlib.mjs9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/gleam_stdlib.mjs b/src/gleam_stdlib.mjs
index a908b23..45c28cf 100644
--- a/src/gleam_stdlib.mjs
+++ b/src/gleam_stdlib.mjs
@@ -147,9 +147,12 @@ export function string_length(string) {
}
export function graphemes(string) {
- return List.fromArray(
- Array.from(graphemes_iterator(string)).map((item) => item.segment)
- );
+ const iterator = graphemes_iterator(string);
+ if (iterator) {
+ return List.fromArray(Array.from(iterator).map((item) => item.segment));
+ } else {
+ return List.fromArray(string.match(/./gsu));
+ }
}
function graphemes_iterator(string) {