From 18d005aa9284e1da2b7fbd9fe40d09392cb58c5f Mon Sep 17 00:00:00 2001 From: rowan Date: Thu, 17 Apr 2025 11:59:33 -0500 Subject: [PATCH] update imports --- package-lock.json | 6 ++++++ package.json | 1 + src/algebra/free.js | 8 +++++--- src/algebra/index.js | 12 ++++++------ src/algebra/option.js | 4 +--- src/algebra/reader.js | 2 +- src/algebra/result.js | 2 +- vendor/izuna | 1 - 8 files changed, 21 insertions(+), 15 deletions(-) delete mode 160000 vendor/izuna diff --git a/package-lock.json b/package-lock.json index 41907ad..edc9d0d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,6 +9,7 @@ "version": "1.0.0", "license": "GPL-3.0-or-later", "dependencies": { + "izuna": "git+https://git.kitsu.cafe/rowan/izuna.git", "typescript": "^5.8.2" }, "devDependencies": { @@ -21,6 +22,11 @@ "dev": true, "license": "GPL-3.0-or-later" }, + "node_modules/izuna": { + "version": "1.0.0", + "resolved": "git+https://git.kitsu.cafe/rowan/izuna.git#e11a0870c27eeb5ea1a4ae3fedccca008eda15c2", + "license": "GPL-3.0-or-later" + }, "node_modules/typescript": { "version": "5.8.3", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz", diff --git a/package.json b/package.json index 8c1e88b..f2e25d0 100644 --- a/package.json +++ b/package.json @@ -19,6 +19,7 @@ "folktest": "git+https://git.kitsu.cafe/rowan/folktest.git" }, "dependencies": { + "izuna": "git+https://git.kitsu.cafe/rowan/izuna.git", "typescript": "^5.8.2" } } diff --git a/src/algebra/free.js b/src/algebra/free.js index ef01f5d..4add4e8 100644 --- a/src/algebra/free.js +++ b/src/algebra/free.js @@ -13,7 +13,7 @@ const Interfaces = Algebra(Monad) * @template T * @implements {Applicative} */ -class Pure extends Interfaces { +export class Pure extends Interfaces { #value /** @@ -75,7 +75,7 @@ class Pure extends Interfaces { * @template T * @implements {Applicative} */ -class Impure extends Interfaces { +export class Impure extends Interfaces { #value #next @@ -171,5 +171,7 @@ export const liftF = value => impure(value, pure) * @template T * @type {ApplicativeTypeRef>} */ -export const Free = Pure +export const TypeRef = Pure +TypeRef.constructor['of'] = Pure + diff --git a/src/algebra/index.js b/src/algebra/index.js index 0939c76..100f4ea 100644 --- a/src/algebra/index.js +++ b/src/algebra/index.js @@ -1,7 +1,7 @@ -export * from './option.js' -export * from './result.js' -export * from './list.js' -export * from './free.js' -export * from './io.js' -export * from './reader.js' +export { TypeRef as Option, Some, None, some, none } from './option.js' +export { TypeRef as Result, Ok, Err, ok, err } from './result.js' +export { TypeRef as Free, liftF } from './free.js' +export { List, list } from './list.js' +export { IO } from './io.js' +export { Reader } from './reader.js' diff --git a/src/algebra/option.js b/src/algebra/option.js index ffb6b58..dafabf9 100644 --- a/src/algebra/option.js +++ b/src/algebra/option.js @@ -168,9 +168,7 @@ export class None extends Interfaces { export const some = value => new Some(value) export const none = new None() -const TypeRef = some +export const TypeRef = some TypeRef.constructor['of'] = some TypeRef.constructor['zero'] = none -export const Option = TypeRef - diff --git a/src/algebra/reader.js b/src/algebra/reader.js index 66ba5ba..39f5bf5 100644 --- a/src/algebra/reader.js +++ b/src/algebra/reader.js @@ -1,4 +1,4 @@ -import { id } from '../../vendor/izuna/src/index.js' +import { id } from 'izuna' import { Algebra, Monad } from './interfaces.js' /** @import { ApplicativeTypeRef, Apply, Chain, Functor, InferredMorphism, Morphism } from './types.js' */ diff --git a/src/algebra/result.js b/src/algebra/result.js index f9fcfc2..65f95a4 100644 --- a/src/algebra/result.js +++ b/src/algebra/result.js @@ -281,7 +281,7 @@ export const ok = v => new Ok(v) */ export const err = e => new Err(e) -const TypeRef = ok +export const TypeRef = ok TypeRef.constructor['of'] = ok TypeRef.constructor['zero'] = err diff --git a/vendor/izuna b/vendor/izuna deleted file mode 160000 index aa70427..0000000 --- a/vendor/izuna +++ /dev/null @@ -1 +0,0 @@ -Subproject commit aa70427c8c349bbfe4576cba878f5b44859007d4