mirror of
https://github.com/dergigi/boris.git
synced 2025-12-17 14:44:26 +01:00
- Add project structure with TypeScript, React, and Vite - Implement nostr authentication using browser extension (NIP-07) - Add NIP-51 compliant bookmark fetching and display - Create minimal UI with login and bookmark components - Integrate applesauce-core and applesauce-react libraries - Add responsive styling with dark/light mode support - Include comprehensive README with setup instructions This is a minimal MVP for a nostr bookmark client that allows users to view their bookmarks according to NIP-51 specification.
36 lines
673 B
TypeScript
36 lines
673 B
TypeScript
/**
|
|
Check if a value is a plain object.
|
|
|
|
An object is plain if it's created by either `{}`, `new Object()`, or `Object.create(null)`.
|
|
|
|
@example
|
|
```
|
|
import isPlainObject from 'is-plain-obj';
|
|
import {runInNewContext} from 'node:vm';
|
|
|
|
isPlainObject({foo: 'bar'});
|
|
//=> true
|
|
|
|
isPlainObject(new Object());
|
|
//=> true
|
|
|
|
isPlainObject(Object.create(null));
|
|
//=> true
|
|
|
|
// This works across realms
|
|
isPlainObject(runInNewContext('({})'));
|
|
//=> true
|
|
|
|
isPlainObject([1, 2, 3]);
|
|
//=> false
|
|
|
|
class Unicorn {}
|
|
isPlainObject(new Unicorn());
|
|
//=> false
|
|
|
|
isPlainObject(Math);
|
|
//=> false
|
|
```
|
|
*/
|
|
export default function isPlainObject<Value>(value: unknown): value is Record<PropertyKey, Value>;
|