« get me outta code hell

data: remove lots of boilerplate {expose: true, compose: true} - hsmusic-wiki - HSMusic - static wiki software cataloguing collaborative creation
about summary refs log tree commit diff
path: root/src/data/things/thing.js
diff options
context:
space:
mode:
author(quasar) nebula <qznebula@protonmail.com>2023-08-31 16:06:58 -0300
committer(quasar) nebula <qznebula@protonmail.com>2023-09-05 21:02:56 -0300
commit56a8e47f0e5ad276baef9d27c16960e3ea2c583b (patch)
tree5b9c97213893ff0a2e1418b1c102e984e12147c9 /src/data/things/thing.js
parentf3162203ef1f758d500e065804f9dbe478d0481d (diff)
data: remove lots of boilerplate {expose: true, compose: true}
Diffstat (limited to 'src/data/things/thing.js')
-rw-r--r--src/data/things/thing.js133
1 files changed, 50 insertions, 83 deletions
diff --git a/src/data/things/thing.js b/src/data/things/thing.js
index d4d7c850..15ec62c3 100644
--- a/src/data/things/thing.js
+++ b/src/data/things/thing.js
@@ -1333,23 +1333,17 @@ export default class Thing extends CacheableObject {
         }),
 
         {
-          flags: {expose: true, compose: true},
-          expose: {
-            dependencies: ['#availability'],
-            compute: ({'#availability': availability}, continuation) =>
-              (availability
-                ? continuation()
-                : continuation.raise()),
-          },
+          dependencies: ['#availability'],
+          compute: ({'#availability': availability}, continuation) =>
+            (availability
+              ? continuation()
+              : continuation.raise()),
         },
 
         {
-          flags: {expose: true, compose: true},
-          expose: {
-            mapDependencies: {dependency},
-            compute: ({dependency}, continuation) =>
-              continuation.exit(dependency),
-          },
+          mapDependencies: {dependency},
+          compute: ({dependency}, continuation) =>
+            continuation.exit(dependency),
         },
       ]);
     },
@@ -1367,22 +1361,16 @@ export default class Thing extends CacheableObject {
         }),
 
         {
-          flags: {expose: true, compose: true},
-          expose: {
-            dependencies: ['#availability'],
-            compute: ({'#availability': availability}, continuation) =>
-              (availability
-                ? continuation()
-                : continuation.raise()),
-          },
+          dependencies: ['#availability'],
+          compute: ({'#availability': availability}, continuation) =>
+            (availability
+              ? continuation()
+              : continuation.raise()),
         },
 
         {
-          flags: {expose: true, compose: true},
-          expose: {
-            transform: (value, {}, continuation) =>
-              continuation.exit(value),
-          },
+          transform: (value, {}, continuation) =>
+            continuation.exit(value),
         },
       ]);
     },
@@ -1396,23 +1384,17 @@ export default class Thing extends CacheableObject {
     }) {
       return Thing.composite.from(`Thing.composite.earlyExitIfAvailabilityCheckFailed`, [
         {
-          flags: {expose: true, compose: true},
-          expose: {
-            mapDependencies: {availability},
-            compute: ({availability}, continuation) =>
-              (availability
-                ? continuation.raise()
-                : continuation()),
-          },
+          mapDependencies: {availability},
+          compute: ({availability}, continuation) =>
+            (availability
+              ? continuation.raise()
+              : continuation()),
         },
 
         {
-          flags: {expose: true, compose: true},
-          expose: {
-            options: {value},
-            compute: ({'#options': {value}}, continuation) =>
-              continuation.exit(value),
-          },
+          options: {value},
+          compute: ({'#options': {value}}, continuation) =>
+            continuation.exit(value),
         },
       ]);
     },
@@ -1452,24 +1434,18 @@ export default class Thing extends CacheableObject {
         Thing.composite.withResultOfAvailabilityCheck({fromDependency: dependency, mode}),
 
         {
-          flags: {expose: true, compose: true},
-          expose: {
-            dependencies: ['#availability'],
-            compute: ({'#availability': availability}, continuation) =>
-              (availability
-                ? continuation.raise()
-                : continuation()),
-          },
+          dependencies: ['#availability'],
+          compute: ({'#availability': availability}, continuation) =>
+            (availability
+              ? continuation.raise()
+              : continuation()),
         },
 
         {
-          flags: {expose: true, compose: true},
-          expose: {
-            options: {raise},
-            mapContinuation: map,
-            compute: ({'#options': {raise}}, continuation) =>
-              continuation.raiseAbove(raise),
-          },
+          options: {raise},
+          mapContinuation: map,
+          compute: ({'#options': {raise}}, continuation) =>
+            continuation.raiseAbove(raise),
         },
       ]);
     },
@@ -1485,24 +1461,18 @@ export default class Thing extends CacheableObject {
         Thing.composite.withResultOfAvailabilityCheck({fromUpdateValue: true, mode}),
 
         {
-          flags: {expose: true, compose: true},
-          expose: {
-            mapDependencies: {availability},
-            compute: ({availability}, continuation) =>
-              (availability
-                ? continuation.raise()
-                : continuation()),
-          },
+          mapDependencies: {availability},
+          compute: ({availability}, continuation) =>
+            (availability
+              ? continuation.raise()
+              : continuation()),
         },
 
         {
-          flags: {expose: true, compose: true},
-          expose: {
-            options: {raise},
-            mapContinuation: map,
-            compute: ({'#options': {raise}}, continuation) =>
-              continuation.raiseAbove(raise),
-          },
+          options: {raise},
+          mapContinuation: map,
+          compute: ({'#options': {raise}}, continuation) =>
+            continuation.raiseAbove(raise),
         },
       ]);
     },
@@ -1549,21 +1519,18 @@ export default class Thing extends CacheableObject {
         Thing.composite.earlyExitWithoutDependency(data),
 
         {
-          flags: {expose: true, compose: true},
-          expose: {
-            options: {findFunction, earlyExitIfNotFound},
-            mapDependencies: {ref, data},
-            mapContinuation: {match: to},
+          options: {findFunction, earlyExitIfNotFound},
+          mapDependencies: {ref, data},
+          mapContinuation: {match: to},
 
-            compute({ref, data, '#options': {findFunction, earlyExitIfNotFound}}, continuation) {
-              const match = findFunction(ref, data, {mode: 'quiet'});
+          compute({ref, data, '#options': {findFunction, earlyExitIfNotFound}}, continuation) {
+            const match = findFunction(ref, data, {mode: 'quiet'});
 
-              if (match === null && earlyExitIfNotFound) {
-                return continuation.exit(null);
-              }
+            if (match === null && earlyExitIfNotFound) {
+              return continuation.exit(null);
+            }
 
-              return continuation.raise({match});
-            },
+            return continuation.raise({match});
           },
         },
       ]);