@welshman/app 0.12.5 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/app/src/index.d.ts +1 -0
- package/dist/app/src/index.d.ts.map +1 -1
- package/dist/app/src/index.js +1 -0
- package/dist/app/src/index.js.map +1 -1
- package/dist/app/src/plugins/base.d.ts +18 -41
- package/dist/app/src/plugins/base.d.ts.map +1 -1
- package/dist/app/src/plugins/base.js +25 -51
- package/dist/app/src/plugins/base.js.map +1 -1
- package/dist/app/src/plugins/blockedRelayLists.d.ts +1 -1
- package/dist/app/src/plugins/blockedRelayLists.d.ts.map +1 -1
- package/dist/app/src/plugins/blossomServerLists.d.ts +1 -1
- package/dist/app/src/plugins/blossomServerLists.d.ts.map +1 -1
- package/dist/app/src/plugins/events.d.ts +5 -6
- package/dist/app/src/plugins/events.d.ts.map +1 -1
- package/dist/app/src/plugins/events.js +24 -38
- package/dist/app/src/plugins/events.js.map +1 -1
- package/dist/app/src/plugins/feedLists.d.ts +1 -1
- package/dist/app/src/plugins/feedLists.d.ts.map +1 -1
- package/dist/app/src/plugins/feeds.d.ts +1 -1
- package/dist/app/src/plugins/feeds.d.ts.map +1 -1
- package/dist/app/src/plugins/feeds.js +2 -1
- package/dist/app/src/plugins/feeds.js.map +1 -1
- package/dist/app/src/plugins/handles.d.ts +1 -1
- package/dist/app/src/plugins/handles.d.ts.map +1 -1
- package/dist/app/src/plugins/handles.js +2 -2
- package/dist/app/src/plugins/handles.js.map +1 -1
- package/dist/app/src/plugins/logger.d.ts +1 -1
- package/dist/app/src/plugins/logger.d.ts.map +1 -1
- package/dist/app/src/plugins/logger.js +1 -1
- package/dist/app/src/plugins/logger.js.map +1 -1
- package/dist/app/src/plugins/messagingRelayLists.d.ts +1 -1
- package/dist/app/src/plugins/messagingRelayLists.d.ts.map +1 -1
- package/dist/app/src/plugins/notify.d.ts +23 -0
- package/dist/app/src/plugins/notify.d.ts.map +1 -0
- package/dist/app/src/plugins/notify.js +28 -0
- package/dist/app/src/plugins/notify.js.map +1 -0
- package/dist/app/src/plugins/pinboards.d.ts +1 -1
- package/dist/app/src/plugins/pinboards.d.ts.map +1 -1
- package/dist/app/src/plugins/pinboards.js +2 -1
- package/dist/app/src/plugins/pinboards.js.map +1 -1
- package/dist/app/src/plugins/plaintext.d.ts +6 -2
- package/dist/app/src/plugins/plaintext.d.ts.map +1 -1
- package/dist/app/src/plugins/plaintext.js +34 -14
- package/dist/app/src/plugins/plaintext.js.map +1 -1
- package/dist/app/src/plugins/profiles.d.ts +2 -1
- package/dist/app/src/plugins/profiles.d.ts.map +1 -1
- package/dist/app/src/plugins/profiles.js +2 -2
- package/dist/app/src/plugins/profiles.js.map +1 -1
- package/dist/app/src/plugins/publisher.d.ts +9 -5
- package/dist/app/src/plugins/publisher.d.ts.map +1 -1
- package/dist/app/src/plugins/publisher.js +108 -75
- package/dist/app/src/plugins/publisher.js.map +1 -1
- package/dist/app/src/plugins/relayLists.d.ts +1 -1
- package/dist/app/src/plugins/relayLists.d.ts.map +1 -1
- package/dist/app/src/plugins/relayLists.js +1 -1
- package/dist/app/src/plugins/relayLists.js.map +1 -1
- package/dist/app/src/plugins/relayRoles.d.ts +1 -1
- package/dist/app/src/plugins/relayRoles.d.ts.map +1 -1
- package/dist/app/src/plugins/relayRoles.js +1 -1
- package/dist/app/src/plugins/relayRoles.js.map +1 -1
- package/dist/app/src/plugins/relays.d.ts +2 -1
- package/dist/app/src/plugins/relays.d.ts.map +1 -1
- package/dist/app/src/plugins/relays.js.map +1 -1
- package/dist/app/src/plugins/roomLists.d.ts +1 -1
- package/dist/app/src/plugins/roomLists.d.ts.map +1 -1
- package/dist/app/src/plugins/roomLists.js +2 -1
- package/dist/app/src/plugins/roomLists.js.map +1 -1
- package/dist/app/src/plugins/roomPins.d.ts +1 -1
- package/dist/app/src/plugins/roomPins.d.ts.map +1 -1
- package/dist/app/src/plugins/roomPins.js +1 -1
- package/dist/app/src/plugins/roomPins.js.map +1 -1
- package/dist/app/src/plugins/rooms.d.ts +1 -2
- package/dist/app/src/plugins/rooms.d.ts.map +1 -1
- package/dist/app/src/plugins/rooms.js +1 -2
- package/dist/app/src/plugins/rooms.js.map +1 -1
- package/dist/app/src/plugins/searchRelayLists.d.ts +1 -1
- package/dist/app/src/plugins/searchRelayLists.d.ts.map +1 -1
- package/dist/app/src/plugins/topics.d.ts +2 -1
- package/dist/app/src/plugins/topics.d.ts.map +1 -1
- package/dist/app/src/plugins/topics.js +2 -2
- package/dist/app/src/plugins/topics.js.map +1 -1
- package/dist/app/src/plugins/wot.d.ts +1 -1
- package/dist/app/src/plugins/wot.d.ts.map +1 -1
- package/dist/app/src/plugins/wot.js +1 -2
- package/dist/app/src/plugins/wot.js.map +1 -1
- package/dist/app/src/plugins/wraps.d.ts +5 -1
- package/dist/app/src/plugins/wraps.d.ts.map +1 -1
- package/dist/app/src/plugins/wraps.js +6 -10
- package/dist/app/src/plugins/wraps.js.map +1 -1
- package/dist/app/src/plugins/zapGoals.d.ts +1 -1
- package/dist/app/src/plugins/zapGoals.d.ts.map +1 -1
- package/dist/app/src/plugins/zapGoals.js +1 -1
- package/dist/app/src/plugins/zapGoals.js.map +1 -1
- package/dist/app/src/plugins/zappers.d.ts +1 -1
- package/dist/app/src/plugins/zappers.d.ts.map +1 -1
- package/dist/app/src/plugins/zappers.js +2 -2
- package/dist/app/src/plugins/zappers.js.map +1 -1
- package/dist/app/src/policy.d.ts +4 -0
- package/dist/app/src/policy.d.ts.map +1 -1
- package/dist/app/src/policy.js +12 -1
- package/dist/app/src/policy.js.map +1 -1
- package/dist/app/src/user.d.ts +2 -2
- package/dist/app/src/user.d.ts.map +1 -1
- package/dist/app/src/user.js.map +1 -1
- package/dist/domain/src/core/ListWriter.d.ts +6 -6
- package/dist/domain/src/kinds/Bolt12Offer.d.ts.map +1 -1
- package/dist/domain/src/kinds/Bolt12Offer.js +10 -9
- package/dist/domain/src/kinds/Bolt12Offer.js.map +1 -1
- package/dist/domain/src/kinds/Bolt12Zap.d.ts +6 -11
- package/dist/domain/src/kinds/Bolt12Zap.d.ts.map +1 -1
- package/dist/domain/src/kinds/Bolt12Zap.js +77 -105
- package/dist/domain/src/kinds/Bolt12Zap.js.map +1 -1
- package/dist/domain/src/kinds/Bolt12ZapIntent.d.ts +2 -0
- package/dist/domain/src/kinds/Bolt12ZapIntent.d.ts.map +1 -1
- package/dist/domain/src/kinds/Bolt12ZapIntent.js +31 -20
- package/dist/domain/src/kinds/Bolt12ZapIntent.js.map +1 -1
- package/dist/domain/src/other/Relay.d.ts +21 -0
- package/dist/domain/src/other/Relay.d.ts.map +1 -1
- package/dist/domain/src/other/Relay.js +6 -0
- package/dist/domain/src/other/Relay.js.map +1 -1
- package/dist/feeds/src/request.d.ts.map +1 -1
- package/dist/feeds/src/request.js +14 -5
- package/dist/feeds/src/request.js.map +1 -1
- package/dist/lib/src/TaskQueue.d.ts.map +1 -1
- package/dist/lib/src/TaskQueue.js +8 -2
- package/dist/lib/src/TaskQueue.js.map +1 -1
- package/dist/net/src/message.d.ts +4 -0
- package/dist/net/src/message.d.ts.map +1 -1
- package/dist/net/src/message.js +2 -0
- package/dist/net/src/message.js.map +1 -1
- package/dist/net/src/policy.d.ts.map +1 -1
- package/dist/net/src/policy.js +11 -3
- package/dist/net/src/policy.js.map +1 -1
- package/dist/net/src/repository.d.ts +24 -12
- package/dist/net/src/repository.d.ts.map +1 -1
- package/dist/net/src/repository.js +79 -70
- package/dist/net/src/repository.js.map +1 -1
- package/dist/net/src/util.d.ts +2 -1
- package/dist/net/src/util.d.ts.map +1 -1
- package/dist/net/src/util.js +6 -5
- package/dist/net/src/util.js.map +1 -1
- package/dist/net/src/wrapManager.d.ts +0 -2
- package/dist/net/src/wrapManager.d.ts.map +1 -1
- package/dist/net/src/wrapManager.js +8 -23
- package/dist/net/src/wrapManager.js.map +1 -1
- package/dist/signer/src/index.d.ts +1 -0
- package/dist/signer/src/index.d.ts.map +1 -1
- package/dist/signer/src/index.js +1 -0
- package/dist/signer/src/index.js.map +1 -1
- package/dist/signer/src/nip59.d.ts +13 -6
- package/dist/signer/src/nip59.d.ts.map +1 -1
- package/dist/signer/src/nip59.js +38 -19
- package/dist/signer/src/nip59.js.map +1 -1
- package/dist/signer/src/queue.d.ts +21 -0
- package/dist/signer/src/queue.d.ts.map +1 -0
- package/dist/signer/src/queue.js +40 -0
- package/dist/signer/src/queue.js.map +1 -0
- package/dist/signer/src/signers/nip01.d.ts +14 -2
- package/dist/signer/src/signers/nip01.d.ts.map +1 -1
- package/dist/signer/src/signers/nip01.js +6 -2
- package/dist/signer/src/signers/nip01.js.map +1 -1
- package/dist/signer/src/signers/nip07.d.ts +9 -9
- package/dist/signer/src/signers/nip07.d.ts.map +1 -1
- package/dist/signer/src/signers/nip07.js +15 -27
- package/dist/signer/src/signers/nip07.js.map +1 -1
- package/dist/signer/src/signers/nip46.d.ts +7 -3
- package/dist/signer/src/signers/nip46.d.ts.map +1 -1
- package/dist/signer/src/signers/nip46.js +12 -8
- package/dist/signer/src/signers/nip46.js.map +1 -1
- package/dist/signer/src/signers/nip55.d.ts +7 -7
- package/dist/signer/src/signers/nip55.d.ts.map +1 -1
- package/dist/signer/src/signers/nip55.js +33 -40
- package/dist/signer/src/signers/nip55.js.map +1 -1
- package/dist/signer/src/util.d.ts +27 -15
- package/dist/signer/src/util.d.ts.map +1 -1
- package/dist/signer/src/util.js +47 -14
- package/dist/signer/src/util.js.map +1 -1
- package/dist/store/src/misc.d.ts +18 -0
- package/dist/store/src/misc.d.ts.map +1 -1
- package/dist/store/src/misc.js +14 -0
- package/dist/store/src/misc.js.map +1 -1
- package/dist/store/src/repository.d.ts +29 -12
- package/dist/store/src/repository.d.ts.map +1 -1
- package/dist/store/src/repository.js +270 -206
- package/dist/store/src/repository.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/util/src/Bolt12.d.ts.map +1 -1
- package/dist/util/src/Bolt12.js +11 -8
- package/dist/util/src/Bolt12.js.map +1 -1
- package/dist/util/src/Events.d.ts +1 -0
- package/dist/util/src/Events.d.ts.map +1 -1
- package/dist/util/src/Events.js +10 -1
- package/dist/util/src/Events.js.map +1 -1
- package/dist/util/src/Lightning.d.ts +1 -0
- package/dist/util/src/Lightning.d.ts.map +1 -1
- package/dist/util/src/Lightning.js +1 -0
- package/dist/util/src/Lightning.js.map +1 -1
- package/package.json +15 -15
package/dist/app/src/index.d.ts
CHANGED
|
@@ -10,6 +10,7 @@ export * from "./plugins/router.js";
|
|
|
10
10
|
export * from "./plugins/domain.js";
|
|
11
11
|
export * from "./plugins/relays.js";
|
|
12
12
|
export * from "./plugins/relayStats.js";
|
|
13
|
+
export * from "./plugins/notify.js";
|
|
13
14
|
export * from "./plugins/relayLists.js";
|
|
14
15
|
export * from "./plugins/blockedRelayLists.js";
|
|
15
16
|
export * from "./plugins/logger.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA;AACzB,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,mBAAmB,CAAA;AACjC,cAAc,sBAAsB,CAAA;AACpC,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,cAAc,yBAAyB,CAAA;AACvC,cAAc,yBAAyB,CAAA;AACvC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,qBAAqB,CAAA;AACnC,cAAc,wBAAwB,CAAA;AACtC,cAAc,uBAAuB,CAAA;AACrC,cAAc,0BAA0B,CAAA;AACxC,cAAc,wBAAwB,CAAA;AACtC,cAAc,mBAAmB,CAAA;AACjC,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,sBAAsB,CAAA;AACpC,cAAc,iCAAiC,CAAA;AAC/C,cAAc,kCAAkC,CAAA;AAChD,cAAc,+BAA+B,CAAA;AAC7C,cAAc,sBAAsB,CAAA;AACpC,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,qBAAqB,CAAA;AACnC,cAAc,kBAAkB,CAAA;AAChC,cAAc,qBAAqB,CAAA;AACnC,cAAc,oBAAoB,CAAA;AAClC,cAAc,wBAAwB,CAAA;AACtC,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA;AAClC,cAAc,uBAAuB,CAAA;AACrC,cAAc,oBAAoB,CAAA;AAClC,cAAc,yBAAyB,CAAA;AACvC,cAAc,2BAA2B,CAAA;AACzC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,wBAAwB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA;AACzB,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,mBAAmB,CAAA;AACjC,cAAc,sBAAsB,CAAA;AACpC,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,cAAc,yBAAyB,CAAA;AACvC,cAAc,qBAAqB,CAAA;AACnC,cAAc,yBAAyB,CAAA;AACvC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,qBAAqB,CAAA;AACnC,cAAc,wBAAwB,CAAA;AACtC,cAAc,uBAAuB,CAAA;AACrC,cAAc,0BAA0B,CAAA;AACxC,cAAc,wBAAwB,CAAA;AACtC,cAAc,mBAAmB,CAAA;AACjC,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,sBAAsB,CAAA;AACpC,cAAc,iCAAiC,CAAA;AAC/C,cAAc,kCAAkC,CAAA;AAChD,cAAc,+BAA+B,CAAA;AAC7C,cAAc,sBAAsB,CAAA;AACpC,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,qBAAqB,CAAA;AACnC,cAAc,kBAAkB,CAAA;AAChC,cAAc,qBAAqB,CAAA;AACnC,cAAc,oBAAoB,CAAA;AAClC,cAAc,wBAAwB,CAAA;AACtC,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA;AAClC,cAAc,uBAAuB,CAAA;AACrC,cAAc,oBAAoB,CAAA;AAClC,cAAc,yBAAyB,CAAA;AACvC,cAAc,2BAA2B,CAAA;AACzC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,wBAAwB,CAAA"}
|
package/dist/app/src/index.js
CHANGED
|
@@ -10,6 +10,7 @@ export * from "./plugins/router.js";
|
|
|
10
10
|
export * from "./plugins/domain.js";
|
|
11
11
|
export * from "./plugins/relays.js";
|
|
12
12
|
export * from "./plugins/relayStats.js";
|
|
13
|
+
export * from "./plugins/notify.js";
|
|
13
14
|
export * from "./plugins/relayLists.js";
|
|
14
15
|
export * from "./plugins/blockedRelayLists.js";
|
|
15
16
|
export * from "./plugins/logger.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA;AACzB,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,mBAAmB,CAAA;AACjC,cAAc,sBAAsB,CAAA;AACpC,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,cAAc,yBAAyB,CAAA;AACvC,cAAc,yBAAyB,CAAA;AACvC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,qBAAqB,CAAA;AACnC,cAAc,wBAAwB,CAAA;AACtC,cAAc,uBAAuB,CAAA;AACrC,cAAc,0BAA0B,CAAA;AACxC,cAAc,wBAAwB,CAAA;AACtC,cAAc,mBAAmB,CAAA;AACjC,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,sBAAsB,CAAA;AACpC,cAAc,iCAAiC,CAAA;AAC/C,cAAc,kCAAkC,CAAA;AAChD,cAAc,+BAA+B,CAAA;AAC7C,cAAc,sBAAsB,CAAA;AACpC,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,qBAAqB,CAAA;AACnC,cAAc,kBAAkB,CAAA;AAChC,cAAc,qBAAqB,CAAA;AACnC,cAAc,oBAAoB,CAAA;AAClC,cAAc,wBAAwB,CAAA;AACtC,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA;AAClC,cAAc,uBAAuB,CAAA;AACrC,cAAc,oBAAoB,CAAA;AAClC,cAAc,yBAAyB,CAAA;AACvC,cAAc,2BAA2B,CAAA;AACzC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,wBAAwB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,cAAc,CAAA;AAC5B,cAAc,aAAa,CAAA;AAC3B,cAAc,WAAW,CAAA;AACzB,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,mBAAmB,CAAA;AACjC,cAAc,sBAAsB,CAAA;AACpC,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,cAAc,yBAAyB,CAAA;AACvC,cAAc,qBAAqB,CAAA;AACnC,cAAc,yBAAyB,CAAA;AACvC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,qBAAqB,CAAA;AACnC,cAAc,wBAAwB,CAAA;AACtC,cAAc,uBAAuB,CAAA;AACrC,cAAc,0BAA0B,CAAA;AACxC,cAAc,wBAAwB,CAAA;AACtC,cAAc,mBAAmB,CAAA;AACjC,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,sBAAsB,CAAA;AACpC,cAAc,iCAAiC,CAAA;AAC/C,cAAc,kCAAkC,CAAA;AAChD,cAAc,+BAA+B,CAAA;AAC7C,cAAc,sBAAsB,CAAA;AACpC,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,qBAAqB,CAAA;AACnC,cAAc,kBAAkB,CAAA;AAChC,cAAc,qBAAqB,CAAA;AACnC,cAAc,oBAAoB,CAAA;AAClC,cAAc,wBAAwB,CAAA;AACtC,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA;AAClC,cAAc,uBAAuB,CAAA;AACrC,cAAc,oBAAoB,CAAA;AAClC,cAAc,yBAAyB,CAAA;AACvC,cAAc,2BAA2B,CAAA;AACzC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,wBAAwB,CAAA"}
|
|
@@ -2,15 +2,8 @@ import type { IFuseOptions, FuseResult } from "fuse.js";
|
|
|
2
2
|
import type { Readable, Unsubscriber } from "svelte/store";
|
|
3
3
|
import type { Maybe } from "@welshman/lib";
|
|
4
4
|
import type { Filter } from "@welshman/util";
|
|
5
|
-
import type { EventToItem, ItemsByKey, MakeLoadItemOptions } from "@welshman/store";
|
|
5
|
+
import type { EventToItem, ItemCollection, ItemsByKey, MakeLoadItemOptions, Projection } from "@welshman/store";
|
|
6
6
|
import type { IApp } from "../app.js";
|
|
7
|
-
/**
|
|
8
|
-
* Utility type which allows for using the same value both for hot gets and derived subscriptions
|
|
9
|
-
*/
|
|
10
|
-
export type Projection<T> = {
|
|
11
|
-
get: () => T;
|
|
12
|
-
$: Readable<T>;
|
|
13
|
-
};
|
|
14
7
|
export type SearchOptions<V, T> = {
|
|
15
8
|
getValue: (item: T) => V;
|
|
16
9
|
fuseOptions?: IFuseOptions<T>;
|
|
@@ -30,16 +23,6 @@ export type Search<V, T> = {
|
|
|
30
23
|
* their collection. Blends fuse scoring with an optional `sortFn`.
|
|
31
24
|
*/
|
|
32
25
|
export declare const createSearch: <V, T>(options: T[], opts: SearchOptions<V, T>) => Search<V, T>;
|
|
33
|
-
/**
|
|
34
|
-
* Build a `Projection` from a readable store and an optional `read` function, which falls
|
|
35
|
-
* back to `get($)`. On hot paths, the store value is cached, and read is skipped.
|
|
36
|
-
*/
|
|
37
|
-
export declare const projection: <T>($: Readable<T>, read?: () => T) => Projection<T>;
|
|
38
|
-
/**
|
|
39
|
-
* Build a `Projection` derived from another `Projection`: re-read `src`
|
|
40
|
-
* reactively via `.$` or synchronously via `.get()`.
|
|
41
|
-
*/
|
|
42
|
-
export declare const projectFrom: <S, U>(src: Projection<S>, read: ($: S) => U) => Projection<U>;
|
|
43
26
|
/**
|
|
44
27
|
* Base class for a reactive, keyed collection of "local" (non-event) data —
|
|
45
28
|
* things like relay stats or NIP-11 profiles that aren't backed by the
|
|
@@ -76,34 +59,37 @@ export declare abstract class LoadableMapPlugin<T> extends MapPlugin<T> {
|
|
|
76
59
|
abstract fetch(key: string, ...args: any[]): Promise<unknown>;
|
|
77
60
|
constructor(app: IApp, options?: MakeLoadItemOptions);
|
|
78
61
|
}
|
|
79
|
-
export type DerivedPluginOptions<T> = {
|
|
80
|
-
filters: Filter[];
|
|
81
|
-
eventToItem: EventToItem<T>;
|
|
82
|
-
getKey: (item: T) => string;
|
|
83
|
-
loadOptions?: MakeLoadItemOptions;
|
|
84
|
-
};
|
|
85
62
|
/**
|
|
86
63
|
* Base class for a reactive, keyed collection of data derived from nostr events.
|
|
87
64
|
* The repository is the single source of truth — the collection is a live view
|
|
88
|
-
* over
|
|
89
|
-
* (how to load an item by key from the network)
|
|
90
|
-
* `super`.
|
|
65
|
+
* over it, never a duplicated map. Subclasses supply the `index` and implement
|
|
66
|
+
* `fetch` (how to load an item by key from the network).
|
|
91
67
|
*
|
|
92
68
|
* `index` (map) and `all` (values) are `Projection`s — subscribe via `.$`,
|
|
93
69
|
* snapshot via `.get()`. Per-key access is `one(key)`, a plain on-demand store.
|
|
94
70
|
*/
|
|
95
|
-
export declare abstract class
|
|
71
|
+
export declare abstract class CollectionPlugin<T> {
|
|
96
72
|
protected readonly app: IApp;
|
|
97
|
-
index:
|
|
73
|
+
readonly index: ItemCollection<T>;
|
|
98
74
|
all: Projection<T[]>;
|
|
99
75
|
one: (key?: string, ...args: any[]) => Readable<Maybe<T>>;
|
|
100
76
|
load: (key: string, ...args: any[]) => Promise<Maybe<T>>;
|
|
101
77
|
forceLoad: (key: string, ...args: any[]) => Promise<Maybe<T>>;
|
|
102
78
|
abstract fetch(key: string, ...args: any[]): Promise<unknown>;
|
|
103
|
-
constructor(app: IApp,
|
|
79
|
+
constructor(app: IApp, index: ItemCollection<T>, loadOptions?: MakeLoadItemOptions);
|
|
104
80
|
get: (key: string) => T | undefined;
|
|
105
81
|
project: <U>(key: string, read: (item: Maybe<T>) => U) => Projection<U>;
|
|
106
82
|
}
|
|
83
|
+
export type DerivedPluginOptions<T> = {
|
|
84
|
+
filters: Filter[];
|
|
85
|
+
eventToItem: EventToItem<T>;
|
|
86
|
+
getKey: (item: T) => string;
|
|
87
|
+
loadOptions?: MakeLoadItemOptions;
|
|
88
|
+
};
|
|
89
|
+
/** A `CollectionPlugin` over `deriveItemsByKey`: one item per key across all relays. */
|
|
90
|
+
export declare abstract class DerivedPlugin<T> extends CollectionPlugin<T> {
|
|
91
|
+
constructor(app: IApp, options: DerivedPluginOptions<T>);
|
|
92
|
+
}
|
|
107
93
|
export type RelayScopedDerivedPluginOptions<T> = {
|
|
108
94
|
filters: Filter[];
|
|
109
95
|
eventToItem: EventToItem<T>;
|
|
@@ -112,23 +98,14 @@ export type RelayScopedDerivedPluginOptions<T> = {
|
|
|
112
98
|
revalidateOn?: Readable<unknown>;
|
|
113
99
|
};
|
|
114
100
|
/**
|
|
115
|
-
* A `
|
|
101
|
+
* A `CollectionPlugin` for relay-dependent data: each item is keyed by
|
|
116
102
|
* `getKey(item, url)` once per relay it was seen on (via the tracker), so the
|
|
117
103
|
* same addressable coordinate on two relays stays two distinct entries. Use it
|
|
118
104
|
* for collections that only make sense relative to a relay — NIP-29 rooms
|
|
119
105
|
* (`${url}'${room}`), relay roles (`${url}|${d}`), per-relay replaceables
|
|
120
106
|
* (`${url}`). Subclasses implement `fetch` (loading from the relevant relay).
|
|
121
107
|
*/
|
|
122
|
-
export declare abstract class RelayScopedDerivedPlugin<T> {
|
|
123
|
-
protected readonly app: IApp;
|
|
124
|
-
index: Projection<ItemsByKey<T>>;
|
|
125
|
-
all: Projection<T[]>;
|
|
126
|
-
one: (key?: string, ...args: any[]) => Readable<Maybe<T>>;
|
|
127
|
-
load: (key: string, ...args: any[]) => Promise<Maybe<T>>;
|
|
128
|
-
forceLoad: (key: string, ...args: any[]) => Promise<Maybe<T>>;
|
|
129
|
-
abstract fetch(key: string, ...args: any[]): Promise<unknown>;
|
|
108
|
+
export declare abstract class RelayScopedDerivedPlugin<T> extends CollectionPlugin<T> {
|
|
130
109
|
constructor(app: IApp, options: RelayScopedDerivedPluginOptions<T>);
|
|
131
|
-
get: (key: string) => T | undefined;
|
|
132
|
-
project: <U>(key: string, read: (item: Maybe<T>) => U) => Projection<U>;
|
|
133
110
|
}
|
|
134
111
|
//# sourceMappingURL=base.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../src/plugins/base.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,YAAY,EAAE,UAAU,EAAC,MAAM,SAAS,CAAA;AAErD,OAAO,KAAK,EAAC,QAAQ,EAAE,YAAY,EAAC,MAAM,cAAc,CAAA;AAExD,OAAO,KAAK,EAAC,KAAK,EAAC,MAAM,eAAe,CAAA;AACxC,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,gBAAgB,CAAA;AAU1C,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../src/plugins/base.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import Fuse from "fuse.js";
|
|
2
2
|
import { writable, derived } from "svelte/store";
|
|
3
3
|
import { sortBy } from "@welshman/lib";
|
|
4
|
-
import {
|
|
4
|
+
import { deriveArray, deriveItemsByKey, deriveItemsByKeyByUrl, makeDeriveItem, makeLoadItem, makeForceLoadItem, projection, } from "@welshman/store";
|
|
5
5
|
/**
|
|
6
6
|
* A reusable fuzzy-search primitive over a fixed list of `options`. Plugins that
|
|
7
7
|
* expose a search (profiles, topics, relays) build one of these reactively from
|
|
@@ -26,19 +26,6 @@ export const createSearch = (options, opts) => {
|
|
|
26
26
|
searchValues: (term) => search(term).map(opts.getValue),
|
|
27
27
|
};
|
|
28
28
|
};
|
|
29
|
-
/**
|
|
30
|
-
* Build a `Projection` from a readable store and an optional `read` function, which falls
|
|
31
|
-
* back to `get($)`. On hot paths, the store value is cached, and read is skipped.
|
|
32
|
-
*/
|
|
33
|
-
export const projection = ($, read) => ({
|
|
34
|
-
$,
|
|
35
|
-
get: getter($, { read }),
|
|
36
|
-
});
|
|
37
|
-
/**
|
|
38
|
-
* Build a `Projection` derived from another `Projection`: re-read `src`
|
|
39
|
-
* reactively via `.$` or synchronously via `.get()`.
|
|
40
|
-
*/
|
|
41
|
-
export const projectFrom = (src, read) => projection(derived(src.$, read), () => read(src.get()));
|
|
42
29
|
/**
|
|
43
30
|
* Base class for a reactive, keyed collection of "local" (non-event) data —
|
|
44
31
|
* things like relay stats or NIP-11 profiles that aren't backed by the
|
|
@@ -58,7 +45,7 @@ export class MapPlugin {
|
|
|
58
45
|
constructor(app) {
|
|
59
46
|
this.app = app;
|
|
60
47
|
this.index = projection(this.store);
|
|
61
|
-
this.all =
|
|
48
|
+
this.all = deriveArray(this.index);
|
|
62
49
|
this.one = makeDeriveItem(this.store);
|
|
63
50
|
}
|
|
64
51
|
get = (key) => this.index.get().get(key);
|
|
@@ -121,73 +108,60 @@ export class LoadableMapPlugin extends MapPlugin {
|
|
|
121
108
|
/**
|
|
122
109
|
* Base class for a reactive, keyed collection of data derived from nostr events.
|
|
123
110
|
* The repository is the single source of truth — the collection is a live view
|
|
124
|
-
* over
|
|
125
|
-
* (how to load an item by key from the network)
|
|
126
|
-
* `super`.
|
|
111
|
+
* over it, never a duplicated map. Subclasses supply the `index` and implement
|
|
112
|
+
* `fetch` (how to load an item by key from the network).
|
|
127
113
|
*
|
|
128
114
|
* `index` (map) and `all` (values) are `Projection`s — subscribe via `.$`,
|
|
129
115
|
* snapshot via `.get()`. Per-key access is `one(key)`, a plain on-demand store.
|
|
130
116
|
*/
|
|
131
|
-
export class
|
|
117
|
+
export class CollectionPlugin {
|
|
132
118
|
app;
|
|
133
119
|
index;
|
|
134
120
|
all;
|
|
135
121
|
one;
|
|
136
122
|
load;
|
|
137
123
|
forceLoad;
|
|
138
|
-
constructor(app,
|
|
124
|
+
constructor(app, index, loadOptions) {
|
|
139
125
|
this.app = app;
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
eventToItem: options.eventToItem,
|
|
143
|
-
getKey: options.getKey,
|
|
144
|
-
repository: app.repository,
|
|
145
|
-
});
|
|
146
|
-
this.index = projection(index);
|
|
147
|
-
this.all = projection(deriveItems(index));
|
|
126
|
+
this.index = index;
|
|
127
|
+
this.all = deriveArray(index);
|
|
148
128
|
const fetch = (key, ...args) => this.fetch(key, ...args);
|
|
149
|
-
|
|
150
|
-
this.
|
|
151
|
-
this.forceLoad = makeForceLoadItem(fetch, read);
|
|
129
|
+
this.load = makeLoadItem(fetch, index.read, loadOptions);
|
|
130
|
+
this.forceLoad = makeForceLoadItem(fetch, index.read);
|
|
152
131
|
this.one = makeDeriveItem(index, this.load);
|
|
153
132
|
}
|
|
154
133
|
get = (key) => this.index.get().get(key);
|
|
155
134
|
project = (key, read) => projection(derived(this.one(key), read), () => read(this.get(key)));
|
|
156
135
|
}
|
|
136
|
+
/** A `CollectionPlugin` over `deriveItemsByKey`: one item per key across all relays. */
|
|
137
|
+
export class DerivedPlugin extends CollectionPlugin {
|
|
138
|
+
constructor(app, options) {
|
|
139
|
+
super(app, deriveItemsByKey({
|
|
140
|
+
filters: options.filters,
|
|
141
|
+
eventToItem: options.eventToItem,
|
|
142
|
+
getKey: options.getKey,
|
|
143
|
+
repository: app.repository,
|
|
144
|
+
}), options.loadOptions);
|
|
145
|
+
}
|
|
146
|
+
}
|
|
157
147
|
/**
|
|
158
|
-
* A `
|
|
148
|
+
* A `CollectionPlugin` for relay-dependent data: each item is keyed by
|
|
159
149
|
* `getKey(item, url)` once per relay it was seen on (via the tracker), so the
|
|
160
150
|
* same addressable coordinate on two relays stays two distinct entries. Use it
|
|
161
151
|
* for collections that only make sense relative to a relay — NIP-29 rooms
|
|
162
152
|
* (`${url}'${room}`), relay roles (`${url}|${d}`), per-relay replaceables
|
|
163
153
|
* (`${url}`). Subclasses implement `fetch` (loading from the relevant relay).
|
|
164
154
|
*/
|
|
165
|
-
export class RelayScopedDerivedPlugin {
|
|
166
|
-
app;
|
|
167
|
-
index;
|
|
168
|
-
all;
|
|
169
|
-
one;
|
|
170
|
-
load;
|
|
171
|
-
forceLoad;
|
|
155
|
+
export class RelayScopedDerivedPlugin extends CollectionPlugin {
|
|
172
156
|
constructor(app, options) {
|
|
173
|
-
|
|
174
|
-
const index = deriveItemsByKeyByUrl({
|
|
157
|
+
super(app, deriveItemsByKeyByUrl({
|
|
175
158
|
filters: options.filters,
|
|
176
159
|
eventToItem: options.eventToItem,
|
|
177
160
|
getKey: options.getKey,
|
|
178
161
|
revalidateOn: options.revalidateOn,
|
|
179
162
|
tracker: app.tracker,
|
|
180
163
|
repository: app.repository,
|
|
181
|
-
});
|
|
182
|
-
this.index = projection(index);
|
|
183
|
-
this.all = projection(deriveItems(index));
|
|
184
|
-
const fetch = (key, ...args) => this.fetch(key, ...args);
|
|
185
|
-
const read = (key) => this.index.get().get(key);
|
|
186
|
-
this.load = makeLoadItem(fetch, read, options.loadOptions);
|
|
187
|
-
this.forceLoad = makeForceLoadItem(fetch, read);
|
|
188
|
-
this.one = makeDeriveItem(index, this.load);
|
|
164
|
+
}), options.loadOptions);
|
|
189
165
|
}
|
|
190
|
-
get = (key) => this.index.get().get(key);
|
|
191
|
-
project = (key, read) => projection(derived(this.one(key), read), () => read(this.get(key)));
|
|
192
166
|
}
|
|
193
167
|
//# sourceMappingURL=base.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../src/plugins/base.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,SAAS,CAAA;AAE1B,OAAO,EAAC,QAAQ,EAAE,OAAO,EAAC,MAAM,cAAc,CAAA;AAE9C,OAAO,EAAC,MAAM,EAAC,MAAM,eAAe,CAAA;AAGpC,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,qBAAqB,EACrB,
|
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../src/plugins/base.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { BlockedRelayListReader, BlockedRelayListWriter } from "@welshman/domain";
|
|
2
2
|
import { DerivedPlugin } from "./base.js";
|
|
3
|
-
import type { Projection } from "
|
|
3
|
+
import type { Projection } from "@welshman/store";
|
|
4
4
|
import type { IApp } from "../app.js";
|
|
5
5
|
/**
|
|
6
6
|
* Kind-10006 blocked-relay lists, keyed by pubkey. Loaded via the outbox model,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blockedRelayLists.d.ts","sourceRoot":"","sources":["../../../../src/plugins/blockedRelayLists.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,sBAAsB,EAAE,sBAAsB,EAAC,MAAM,kBAAkB,CAAA;AACjG,OAAO,EAAC,aAAa,EAAC,MAAM,WAAW,CAAA;AACvC,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"blockedRelayLists.d.ts","sourceRoot":"","sources":["../../../../src/plugins/blockedRelayLists.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,sBAAsB,EAAE,sBAAsB,EAAC,MAAM,kBAAkB,CAAA;AACjG,OAAO,EAAC,aAAa,EAAC,MAAM,WAAW,CAAA;AACvC,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAA;AAG/C,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,WAAW,CAAA;AAEnC;;;;GAIG;AACH,qBAAa,iBAAkB,SAAQ,aAAa,CAAC,sBAAsB,CAAC;gBAC9D,GAAG,EAAE,IAAI;IAQrB,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,GAAE,MAAM,EAAO;IAI/C,IAAI,GAAI,QAAQ,MAAM,KAAG,UAAU,CAAC,MAAM,EAAE,CAAC,CAAoD;IAEjG,MAAM,GAAI,IAAI,CAAC,MAAM,EAAE,sBAAsB,KAAK,IAAI,8CACa;IAEnE,MAAM,GAAI,KAAK,MAAM,8CAA8C;IAEnE,SAAS,GAAI,KAAK,MAAM,8CAAiD;IAEzE,OAAO,GAAI,MAAM,MAAM,EAAE,8CAAgD;CAC1E"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { BlossomServerListReader, BlossomServerListWriter } from "@welshman/domain";
|
|
2
2
|
import { DerivedPlugin } from "./base.js";
|
|
3
|
-
import type { Projection } from "
|
|
3
|
+
import type { Projection } from "@welshman/store";
|
|
4
4
|
import type { IApp } from "../app.js";
|
|
5
5
|
/**
|
|
6
6
|
* Blossom server lists (kind 10063), keyed by pubkey. Loaded via the outbox
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blossomServerLists.d.ts","sourceRoot":"","sources":["../../../../src/plugins/blossomServerLists.ts"],"names":[],"mappings":"AACA,OAAO,EAAoB,uBAAuB,EAAE,uBAAuB,EAAC,MAAM,kBAAkB,CAAA;AAEpG,OAAO,EAAC,aAAa,EAAC,MAAM,WAAW,CAAA;AACvC,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"blossomServerLists.d.ts","sourceRoot":"","sources":["../../../../src/plugins/blossomServerLists.ts"],"names":[],"mappings":"AACA,OAAO,EAAoB,uBAAuB,EAAE,uBAAuB,EAAC,MAAM,kBAAkB,CAAA;AAEpG,OAAO,EAAC,aAAa,EAAC,MAAM,WAAW,CAAA;AACvC,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAA;AAE/C,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,WAAW,CAAA;AAEnC;;;GAGG;AACH,qBAAa,kBAAmB,SAAQ,aAAa,CAAC,uBAAuB,CAAC;gBAChE,GAAG,EAAE,IAAI;IAQrB,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,GAAE,MAAM,EAAO;IAI/C,IAAI,GAAI,QAAQ,MAAM,KAAG,UAAU,CAAC,MAAM,EAAE,CAAC,CAAoD;IAEjG,MAAM,GAAI,IAAI,CAAC,MAAM,EAAE,uBAAuB,KAAK,IAAI,8CACa;IAEpE,MAAM,GAAI,KAAK,MAAM,8CAA8C;IAEnE,SAAS,GAAI,KAAK,MAAM,8CAAiD;IAEzE,OAAO,GAAI,MAAM,MAAM,EAAE,8CAAgD;CAC1E"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import type { Maybe } from "@welshman/lib";
|
|
2
2
|
import type { Filter, TrustedEvent } from "@welshman/util";
|
|
3
|
-
import type { EventsById, EventsByIdByUrl } from "@welshman/store";
|
|
4
|
-
import type { Projection } from "./base.js";
|
|
3
|
+
import type { EventsById, EventsByIdByUrl, Projection } from "@welshman/store";
|
|
5
4
|
import type { IApp } from "../app.js";
|
|
6
5
|
/**
|
|
7
6
|
* Reactive views over the app's repository. Every method binds this app's
|
|
@@ -9,10 +8,10 @@ import type { IApp } from "../app.js";
|
|
|
9
8
|
* with `.get()`, or subscribe to `.$` — so callers never build one from the
|
|
10
9
|
* other, and never construct `{repository, tracker}` by hand.
|
|
11
10
|
*
|
|
12
|
-
* Each
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
11
|
+
* Each view reads through a direct repository/tracker query rather than through
|
|
12
|
+
* its derived store. Those queries are index-backed; standing a derived store up
|
|
13
|
+
* and tearing it down just to read a value is not. `@welshman/store` pairs the
|
|
14
|
+
* two, so a view over a single store passes neither half.
|
|
16
15
|
*/
|
|
17
16
|
export declare class Events {
|
|
18
17
|
readonly app: IApp;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../../src/plugins/events.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,KAAK,EAAC,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../../src/plugins/events.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,KAAK,EAAC,MAAM,eAAe,CAAA;AACxC,OAAO,KAAK,EAAC,MAAM,EAAE,YAAY,EAAC,MAAM,gBAAgB,CAAA;AAaxD,OAAO,KAAK,EAAC,UAAU,EAAE,eAAe,EAAE,UAAU,EAAC,MAAM,iBAAiB,CAAA;AAK5E,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,WAAW,CAAA;AAEnC;;;;;;;;;;GAUG;AACH,qBAAa,MAAM;IACL,QAAQ,CAAC,GAAG,EAAE,IAAI;gBAAT,GAAG,EAAE,IAAI;IAE9B,IAAI,GAAI,UAAS,MAAM,EAAS,KAAG,UAAU,CAAC,UAAU,CAAC,CACK;IAE9D,GAAG,GAAI,UAAS,MAAM,EAAS,KAAG,UAAU,CAAC,YAAY,EAAE,CAAC,CACF;IAE1D,GAAG,GAAI,UAAS,MAAM,EAAS,KAAG,UAAU,CAAC,YAAY,EAAE,CAAC,CACvB;IAErC,IAAI,GAAI,UAAS,MAAM,EAAS,KAAG,UAAU,CAAC,YAAY,EAAE,CAAC,CACvB;IAEtC,GAAG,GAAI,aAAa,MAAM,EAAE,SAAQ,MAAM,EAAO,KAAG,UAAU,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAM1D;IAEzB,SAAS,GAAI,OAAO,YAAY,KAAG,UAAU,CAAC,OAAO,CAAC,CACT;IAI7C,UAAU,GAAI,KAAK,MAAM,EAAE,UAAS,MAAM,EAAS,KAAG,UAAU,CAAC,UAAU,CAAC,CAMxE;IAEJ,MAAM,GAAI,KAAK,MAAM,EAAE,UAAS,MAAM,EAAS,KAAG,UAAU,CAAC,YAAY,EAAE,CAAC,CAChC;IAE5C,SAAS,GAAI,UAAS,MAAM,EAAS,KAAG,UAAU,CAAC,eAAe,CAAC,CAK/D;IAEJ,iBAAiB,GAAI,KAAK,MAAM,EAAE,UAAS,MAAM,EAAS,KAAG,UAAU,CAAC,YAAY,EAAE,CAAC,CAWtF;CACF"}
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import { filter, spec } from "@welshman/lib";
|
|
2
|
-
import {
|
|
3
|
-
import { deriveArray, deriveEventsAsc, deriveEventsByIdByUrl, deriveEventsByIdForUrl, deriveEventsById, deriveEventsDesc, deriveIsDeleted, getEventsByIdByUrl, getEventsByIdForUrl, getEventsById, makeDeriveEvent, } from "@welshman/store";
|
|
2
|
+
import { deriveArray, deriveEvents, deriveEventsAsc, deriveEventsByIdByUrl, deriveEventsByIdForUrl, deriveEventsById, deriveEventsDesc, deriveIsDeleted, makeDeriveEvent, projection, } from "@welshman/store";
|
|
4
3
|
import { derived } from "svelte/store";
|
|
5
|
-
import { projection } from "./base.js";
|
|
6
4
|
import { Network } from "./network.js";
|
|
7
5
|
import { Relays } from "./relays.js";
|
|
8
6
|
/**
|
|
@@ -11,51 +9,39 @@ import { Relays } from "./relays.js";
|
|
|
11
9
|
* with `.get()`, or subscribe to `.$` — so callers never build one from the
|
|
12
10
|
* other, and never construct `{repository, tracker}` by hand.
|
|
13
11
|
*
|
|
14
|
-
* Each
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
12
|
+
* Each view reads through a direct repository/tracker query rather than through
|
|
13
|
+
* its derived store. Those queries are index-backed; standing a derived store up
|
|
14
|
+
* and tearing it down just to read a value is not. `@welshman/store` pairs the
|
|
15
|
+
* two, so a view over a single store passes neither half.
|
|
18
16
|
*/
|
|
19
17
|
export class Events {
|
|
20
18
|
app;
|
|
21
19
|
constructor(app) {
|
|
22
20
|
this.app = app;
|
|
23
21
|
}
|
|
24
|
-
byId = (filters = [{}]) => {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
};
|
|
28
|
-
|
|
29
|
-
const options = { repository: this.app.repository, filters };
|
|
30
|
-
return projection(deriveArray(deriveEventsById(options)), () => Array.from(getEventsById(options).values()));
|
|
31
|
-
};
|
|
32
|
-
asc = (filters = [{}]) => {
|
|
33
|
-
const options = { repository: this.app.repository, filters };
|
|
34
|
-
return projection(deriveEventsAsc(deriveEventsById(options)), () => sortEventsAsc(getEventsById(options).values()));
|
|
35
|
-
};
|
|
36
|
-
desc = (filters = [{}]) => {
|
|
37
|
-
const options = { repository: this.app.repository, filters };
|
|
38
|
-
return projection(deriveEventsDesc(deriveEventsById(options)), () => sortEventsDesc(getEventsById(options).values()));
|
|
39
|
-
};
|
|
40
|
-
one = (idOrAddress, relays = []) => projection(makeDeriveEvent({
|
|
22
|
+
byId = (filters = [{}]) => deriveEventsById({ repository: this.app.repository, filters });
|
|
23
|
+
all = (filters = [{}]) => deriveEvents({ repository: this.app.repository, filters });
|
|
24
|
+
asc = (filters = [{}]) => deriveEventsAsc(this.byId(filters));
|
|
25
|
+
desc = (filters = [{}]) => deriveEventsDesc(this.byId(filters));
|
|
26
|
+
one = (idOrAddress, relays = []) => makeDeriveEvent({
|
|
41
27
|
repository: this.app.repository,
|
|
42
28
|
includeDeleted: true,
|
|
43
29
|
onDerive: (filters, hints) => this.app.use(Network).loadLenient({ filters, relays: hints }),
|
|
44
|
-
})(idOrAddress, relays)
|
|
45
|
-
isDeleted = (event) =>
|
|
30
|
+
})(idOrAddress, relays);
|
|
31
|
+
isDeleted = (event) => deriveIsDeleted(this.app.repository, event);
|
|
46
32
|
// Scoped to one relay, via the tracker
|
|
47
|
-
byIdForUrl = (url, filters = [{}]) => {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
};
|
|
33
|
+
byIdForUrl = (url, filters = [{}]) => deriveEventsByIdForUrl({
|
|
34
|
+
url,
|
|
35
|
+
filters,
|
|
36
|
+
tracker: this.app.tracker,
|
|
37
|
+
repository: this.app.repository,
|
|
38
|
+
});
|
|
39
|
+
forUrl = (url, filters = [{}]) => deriveArray(this.byIdForUrl(url, filters));
|
|
40
|
+
byIdByUrl = (filters = [{}]) => deriveEventsByIdByUrl({
|
|
41
|
+
filters,
|
|
42
|
+
tracker: this.app.tracker,
|
|
43
|
+
repository: this.app.repository,
|
|
44
|
+
});
|
|
59
45
|
relaySignedForUrl = (url, filters = [{}]) => {
|
|
60
46
|
const forUrl = this.forUrl(url, filters);
|
|
61
47
|
return projection(derived([this.app.use(Relays).one(url), forUrl.$], ([$relay, $events]) => filter(spec({ pubkey: $relay?.self }), $events)), () => filter(spec({ pubkey: this.app.use(Relays).get(url)?.self }), forUrl.get()));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../../../src/plugins/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAE,IAAI,EAAC,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../../../src/plugins/events.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { FeedListReader, FeedListWriter } from "@welshman/domain";
|
|
2
2
|
import { DerivedPlugin } from "./base.js";
|
|
3
|
-
import type { Projection } from "
|
|
3
|
+
import type { Projection } from "@welshman/store";
|
|
4
4
|
import type { IApp } from "../app.js";
|
|
5
5
|
/**
|
|
6
6
|
* NIP-51 saved feeds lists (kind 10014), keyed by pubkey. Loaded via the outbox
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feedLists.d.ts","sourceRoot":"","sources":["../../../../src/plugins/feedLists.ts"],"names":[],"mappings":"AACA,OAAO,EAAW,cAAc,EAAE,cAAc,EAAC,MAAM,kBAAkB,CAAA;AACzE,OAAO,EAAC,aAAa,EAAC,MAAM,WAAW,CAAA;AACvC,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"feedLists.d.ts","sourceRoot":"","sources":["../../../../src/plugins/feedLists.ts"],"names":[],"mappings":"AACA,OAAO,EAAW,cAAc,EAAE,cAAc,EAAC,MAAM,kBAAkB,CAAA;AACzE,OAAO,EAAC,aAAa,EAAC,MAAM,WAAW,CAAA;AACvC,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAA;AAG/C,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,WAAW,CAAA;AAEnC;;;GAGG;AACH,qBAAa,SAAU,SAAQ,aAAa,CAAC,cAAc,CAAC;gBAC9C,GAAG,EAAE,IAAI;IAQrB,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,GAAE,MAAM,EAAO;IAI/C,SAAS,GAAI,QAAQ,MAAM,KAAG,UAAU,CAAC,MAAM,EAAE,CAAC,CACK;IAEvD,MAAM,GAAI,IAAI,CAAC,MAAM,EAAE,cAAc,KAAK,IAAI,8CACa;IAE3D,OAAO,GAAI,SAAS,MAAM,EAAE,YAAY,MAAM,8CACa;IAE3D,gBAAgB,GAAI,SAAS,MAAM,EAAE,YAAY,MAAM,8CACa;IAEpE,UAAU,GAAI,SAAS,MAAM,8CAAsD;CACpF"}
|
|
@@ -2,7 +2,7 @@ import { Scope, FeedController } from "@welshman/feeds";
|
|
|
2
2
|
import type { FeedControllerOptions, Feed as FeedDefinition } from "@welshman/feeds";
|
|
3
3
|
import { FeedReader, FeedWriter } from "@welshman/domain";
|
|
4
4
|
import { DerivedPlugin } from "./base.js";
|
|
5
|
-
import type { Projection } from "
|
|
5
|
+
import type { Projection } from "@welshman/store";
|
|
6
6
|
import type { IApp } from "../app.js";
|
|
7
7
|
export type MakeFeedControllerOptions = Partial<Omit<FeedControllerOptions, "feed">> & {
|
|
8
8
|
feed: FeedDefinition;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feeds.d.ts","sourceRoot":"","sources":["../../../../src/plugins/feeds.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAE,cAAc,EAAC,MAAM,iBAAiB,CAAA;AACrD,OAAO,KAAK,EAAC,qBAAqB,EAAE,IAAI,IAAI,cAAc,EAAC,MAAM,iBAAiB,CAAA;AAGlF,OAAO,EAAO,UAAU,EAAE,UAAU,EAAC,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"feeds.d.ts","sourceRoot":"","sources":["../../../../src/plugins/feeds.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAE,cAAc,EAAC,MAAM,iBAAiB,CAAA;AACrD,OAAO,KAAK,EAAC,qBAAqB,EAAE,IAAI,IAAI,cAAc,EAAC,MAAM,iBAAiB,CAAA;AAGlF,OAAO,EAAO,UAAU,EAAE,UAAU,EAAC,MAAM,kBAAkB,CAAA;AAE7D,OAAO,EAAC,aAAa,EAAC,MAAM,WAAW,CAAA;AACvC,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAA;AAK/C,OAAO,KAAK,EAAC,IAAI,EAAC,MAAM,WAAW,CAAA;AAEnC,MAAM,MAAM,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC,GAAG;IACrF,IAAI,EAAE,cAAc,CAAA;CACrB,CAAA;AAED,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,cAAc,CAAA;CAC3B,CAAA;AAED;;;;;GAKG;AACH,qBAAa,KAAM,SAAQ,aAAa,CAAC,UAAU,CAAC;gBACtC,GAAG,EAAE,IAAI;IAQrB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,GAAE,MAAM,EAAO;IAQhD,SAAS,GAAI,QAAQ,MAAM,KAAG,UAAU,CAAC,UAAU,EAAE,CAAC,CAC0B;IAEhF,aAAa,GAAI,QAAQ,MAAM,EAAE,aAAY,MAAM,EAAO,sDACqB;IAE/E,MAAM,GAAU,QAAQ,UAAU,8CAQjC;IAED,MAAM,GAAU,SAAS,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,8CAUhE;IAED,kBAAkB,GAAI,OAAO,KAAK,KAAG,MAAM,EAAE,CAmB5C;IAED,qBAAqB,GAAI,KAAK,MAAM,EAAE,KAAK,MAAM,KAAG,MAAM,EAAE,CAgB3D;IAED,kBAAkB,GAAI,SAAS,yBAAyB,oBAWpD;CACL"}
|
|
@@ -2,7 +2,8 @@ import { Scope, FeedController } from "@welshman/feeds";
|
|
|
2
2
|
import { max as maxValue } from "@welshman/lib";
|
|
3
3
|
import { Address, FEED } from "@welshman/util";
|
|
4
4
|
import { Feed } from "@welshman/domain";
|
|
5
|
-
import {
|
|
5
|
+
import { projectFrom } from "@welshman/store";
|
|
6
|
+
import { DerivedPlugin } from "./base.js";
|
|
6
7
|
import { Network } from "./network.js";
|
|
7
8
|
import { Router } from "./router.js";
|
|
8
9
|
import { Domain } from "./domain.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feeds.js","sourceRoot":"","sources":["../../../../src/plugins/feeds.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAE,cAAc,EAAC,MAAM,iBAAiB,CAAA;AAErD,OAAO,EAAC,GAAG,IAAI,QAAQ,EAAC,MAAM,eAAe,CAAA;AAC7C,OAAO,EAAC,OAAO,EAAE,IAAI,EAAC,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EAAC,IAAI,EAAyB,MAAM,kBAAkB,CAAA;AAC7D,OAAO,EAAC,
|
|
1
|
+
{"version":3,"file":"feeds.js","sourceRoot":"","sources":["../../../../src/plugins/feeds.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { Maybe } from "@welshman/lib";
|
|
2
2
|
import type { Handle } from "@welshman/util";
|
|
3
3
|
import { LoadableMapPlugin } from "./base.js";
|
|
4
|
-
import type { Projection } from "
|
|
4
|
+
import type { Projection } from "@welshman/store";
|
|
5
5
|
/**
|
|
6
6
|
* NIP-05 handles, keyed by nip05 identifier. A "local" loadable collection:
|
|
7
7
|
* items aren't nostr events, they're fetched over HTTP (either directly from
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handles.d.ts","sourceRoot":"","sources":["../../../../src/plugins/handles.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,KAAK,EAAC,MAAM,eAAe,CAAA;AAExC,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,gBAAgB,CAAA;AAG1C,OAAO,EAAC,iBAAiB,
|
|
1
|
+
{"version":3,"file":"handles.d.ts","sourceRoot":"","sources":["../../../../src/plugins/handles.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,KAAK,EAAC,MAAM,eAAe,CAAA;AAExC,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,gBAAgB,CAAA;AAG1C,OAAO,EAAC,iBAAiB,EAAC,MAAM,WAAW,CAAA;AAC3C,OAAO,KAAK,EAAC,UAAU,EAAC,MAAM,iBAAiB,CAAA;AAG/C;;;;;;GAMG;AACH,qBAAa,OAAQ,SAAQ,iBAAiB,CAAC,MAAM,CAAC;IACpD,KAAK,mDAmCH;IAEF,aAAa,GAAU,QAAQ,MAAM,EAAE,SAAQ,MAAM,EAAO,4BAM3D;IAED,SAAS,GAAI,QAAQ,MAAM,EAAE,SAAQ,MAAM,EAAO,KAAG,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAsB7E;IAED,OAAO,GAAI,OAAO,MAAM,YAAwB;CACjD"}
|