Loosen post source constraints (#8478)
* Loosen post source constraints * logger warn if failed to find source * Tweak assertion logic --------- Co-authored-by: Eric Bailey <git@esb.lol>
This commit is contained in:
@@ -34,7 +34,7 @@ const consumedSources = new Map<string, PostSource>()
|
|||||||
* Used for FeedFeedback and other ephemeral non-critical systems.
|
* Used for FeedFeedback and other ephemeral non-critical systems.
|
||||||
*/
|
*/
|
||||||
export function setUnstablePostSource(key: string, source: PostSource) {
|
export function setUnstablePostSource(key: string, source: PostSource) {
|
||||||
assertValid(
|
assertValidDevOnly(
|
||||||
key,
|
key,
|
||||||
`setUnstablePostSource key should be a URI containing a handle, received ${key} — use buildPostSourceKey`,
|
`setUnstablePostSource key should be a URI containing a handle, received ${key} — use buildPostSourceKey`,
|
||||||
)
|
)
|
||||||
@@ -51,9 +51,10 @@ export function setUnstablePostSource(key: string, source: PostSource) {
|
|||||||
export function useUnstablePostSource(key: string) {
|
export function useUnstablePostSource(key: string) {
|
||||||
const id = useId()
|
const id = useId()
|
||||||
const [source] = useState(() => {
|
const [source] = useState(() => {
|
||||||
assertValid(
|
assertValidDevOnly(
|
||||||
key,
|
key,
|
||||||
`consumeUnstablePostSource key should be a URI containing a handle, received ${key} — use buildPostSourceKey`,
|
`consumeUnstablePostSource key should be a URI containing a handle, received ${key} — be sure to use buildPostSourceKey when setting the source`,
|
||||||
|
true,
|
||||||
)
|
)
|
||||||
const source = consumedSources.get(id) || transientSources.get(key)
|
const source = consumedSources.get(id) || transientSources.get(key)
|
||||||
if (source) {
|
if (source) {
|
||||||
@@ -87,11 +88,15 @@ export function buildPostSourceKey(key: string, handle: string) {
|
|||||||
/**
|
/**
|
||||||
* Just a lil dev helper
|
* Just a lil dev helper
|
||||||
*/
|
*/
|
||||||
function assertValid(key: string, message: string) {
|
function assertValidDevOnly(key: string, message: string, beChill = false) {
|
||||||
if (__DEV__) {
|
if (__DEV__) {
|
||||||
const urip = new AtUri(key)
|
const urip = new AtUri(key)
|
||||||
if (urip.host.startsWith('did:')) {
|
if (urip.host.startsWith('did:')) {
|
||||||
throw new Error(message)
|
if (beChill) {
|
||||||
|
logger.warn(message)
|
||||||
|
} else {
|
||||||
|
throw new Error(message)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user