diff --git a/documentation/docs/contact.md b/documentation/docs/contact.md index 8ca485ea42..ad8f82fa20 100644 --- a/documentation/docs/contact.md +++ b/documentation/docs/contact.md @@ -1,6 +1,12 @@ --- title: Contact sidebar_label: Contact +description: Get in touch with the project maintainers. +image: /img/Identity_icon.png +keywords: +- Contact +- GitHub +- Maintainers --- TODO: Add ways to contact the maintainers \ No newline at end of file diff --git a/documentation/docs/contribute.md b/documentation/docs/contribute.md index ab5ace28eb..710fc478b6 100644 --- a/documentation/docs/contribute.md +++ b/documentation/docs/contribute.md @@ -1,6 +1,14 @@ --- title: Contribute to the project sidebar_label: Contribute +description: Contribute to IOTA Identity by joining the Identity initiative, via the projects GitHub repository, documentation, or sharing your knowledge. +image: /img/Identity_icon.png +keywords: +- Contribute +- GitHub +- Identity Initiative +- Documentation +- Discord --- **Thanks for thinking about contributing to the project! We have the following ways that you can contribute.** diff --git a/documentation/docs/intro_ssi.md b/documentation/docs/decentralized_identity.md similarity index 78% rename from documentation/docs/intro_ssi.md rename to documentation/docs/decentralized_identity.md index 8e60c010a6..8bac03bd3b 100644 --- a/documentation/docs/intro_ssi.md +++ b/documentation/docs/decentralized_identity.md @@ -1,9 +1,15 @@ --- -title: Introduction to Decentralized Identity -sidebar_label: Decentralized Identity +description: Decentralized identity defines a new method for identity management and authentication by removing centralized aspects. +image: /img/Identity_icon.png +keywords: +- Self Sovereign Identity +- decentralized +- Permissionless +- authentication --- +# Introduction to Decentralized Identity -Decentralized Identity or Self Sovereign Identity (SSI) defines a new method for identity management and authentication. It removes the centralized aspects and puts the Identity subject in full control over its own identity. Decentralized identity provides a solution for the increasing amount of database breaches, the lack of trust in any digital setting and the increasingly difficult to comply to privacy legislation, such as GDPR. +Decentralized Identity or Self Sovereign Identity (SSI) defines a new method for identity management and authentication. It removes the centralized aspects and puts the Identity subject in full control over its own identity. Decentralized identity provides a solution for the increasing amount of database breaches, the lack of trust in any digital setting, and the increasingly difficult to comply to privacy legislation, such as GDPR. There are three levels of privacy when interacting on the internet: full privacy, verifiable identities and pseudonymity. With full privacy, neither parties, nor observers, can identify the interacting parties. With verifiable identities, parties can trust each other, because they can both provide proof about their identities. With pseudonymity, both parties recognize each other through a pseudonymous identifier. Pseudonymity is the default setting of the internet. However, data harvesting platforms, like Google and Facebook, can now link these “random” identifiers, though imprecisely, to identities in the real-world. The associated data and insights have become extremely valuable to advertising agencies, product developers, and numerous local and global businesses. @@ -14,9 +20,13 @@ With digital identity, the user can decide what information to share and with wh -### Identity for People +## Identity for People -> IOTA Identity builds a new internet, without usernames, passwords, endless repeated forums, or uncontrolled data harvesting. +:::info New internet + +IOTA Identity builds a new internet, without usernames, passwords, endless repeated forums, or uncontrolled data harvesting. + +::: Information about one’s life is spread across many locations. Most people have numerous unorganized important documents at home, hundreds of online accounts, and many more online footprints. Through statistical predictive analysis, computer programs can harvest unverified online information sources and create a reasonably accurate profile about our lives. These profiles are accurate enough for targeted advertising and personalized content, but lack the proof and trust for them to be used in business. This results in an antiquated customer experience where we have to submit our age and address for every purchase we make and every account we create. It also inhibits our ability to do many online tasks like requesting and extending licenses or taking out a mortgage. @@ -26,12 +36,12 @@ IOTA Identity allows a new internet without usernames, passwords, endless repeat Governmental mechanisms for building digital identities are currently being established throughout Europe and Asia, with demand increasing around the globe. However, they are managed by single entities, and restricted to the governments that created them. By decentralizing a framework for these standards to adapt to, we have a system for intergovernmental verification of individuals and devices. A person’s digital identification will be transferable across borders like a passport. However, it will no longer require the trust of the issuing government due to the digital trust established by the open and auditable system. -### Identity for Organizations - -> IOTA Identity allows organizations to comply with GDPR in a cost efficient and privacy-enabling manner +## Identity for Organizations -Many corporations are associated with greed and abuse of power. This reputation stems from the role some have chosen to take within society. Corporations are trusted with our data, but often do not act responsibly. Vulnerability, fix, patch, repeat. In software and systems we have seen this -cycle repeat. Headlines on data leaks are now an ever-present feature in the news. +:::info GDPR +IOTA Identity allows organizations to comply with GDPR in a cost efficient and privacy-enabling manner +::: +Many corporations are associated with greed and abuse of power. This reputation stems from the role some have chosen to take within society. Corporations are trusted with our data, but often do not act responsibly. Vulnerability, fix, patch, repeat. In software and systems we have seen this cycle repeat. Headlines on data leaks are now an ever-present feature in the news. IOTA Identity presents an opportunity for companies to embrace a new role in the ecosystem. Traditional approaches do not provide cost efficient solutions to new legislation like GDPR. IOTA Identity enables organizations to change their processes to comply with the new regulations in a cost efficient and privacy-enabling manner. Features of “Data Protection and Privacy by Design” shift responsibility over Personal Identifiable Information (PII) from organization to customer, and organizations no longer need to store that data. The relationship between customer and organization is also tightened as communication via a third party Identity provider like Google or Facebook is no longer needed. @@ -39,38 +49,51 @@ Due to Know-Your-Customer (KYC) and Anti-Money Laundering (AML) obligations, com Organizations that have their own decentralized identities can also combat fraud and increase control over their online brand. Companies can sign invoices and agreements using their decentralized identities. While interacting with the customers, they will also be able to reliably identify themselves. -### Identity for Things +## Identity for Things + +:::info TRUST + +IOTA Identity adds the missing key ingredient for the "Economy of Things": Trust. -> IOTA Identity adds the missing key ingredient for the "Economy of Things": Trust. +::: -With Identity of Things (IDoT) devices are provided with a unique global identity, able to prove many attributes including their capabilities, specifications and authenticity. People, organizations and other devices will only pay devices that can prove their ability to fulfill the required task. This basis of trust prevents fraudulent activity. In addition, by using the IOTA ledger, the progress of the task can be immutably logged. With the combination of the IOTA protocol and the IOTA Identity framework, we can automate the entire interaction between all parties, without requiring predefined trust. The [Industry Marketplace](https://industry.iota.org/) provides a perfect example of how this framework and level of autonomy work. +With Identity of Things (IDoT) devices are provided with a unique global identity, able to prove many attributes including their capabilities, specifications, and authenticity. People, organizations, and other devices will only pay devices that can prove their ability to fulfill the required task. This basis of trust prevents fraudulent activity. In addition, by using the IOTA ledger, the progress of the task can be immutably logged. With the combination of the IOTA protocol and the IOTA Identity framework, we can automate the entire interaction between all parties, without requiring predefined trust. The [Industry Marketplace](https://industry.iota.org/) provides a perfect example of how this framework and level of autonomy work. There is a growth in applications that generate Digital Twins for physical devices or objects, such as the Asset Administration Shell (AAS) developed for our Industry Marketplace. Digital twins are online profiles representing a device or object. They provide a virtual state that mirrors reality by emulating the device or object’s physical state through data input sources like sensors. A digital twin is often used to monitor state and execute actions based on the information. Digital twins are only rarely shared outside the associated application and organization due to complexity in sharing and matching profiles. However, empowered with a digital identity, digital twin sharing would become possible. Once data is verifiable and trusted, digital twins can form the basis for the digital representation of physical devices and objects. This allows other identities to interact with them automatically, and provide services such as predictive maintenance. Security is a major barrier in advancing technologies that use IoT. Whether it is the smart devices in our own homes, or at a larger scale, the critical infrastructure of organizations and cities, security must be at the core. It is central to any globally-unifying identity solution. By integrating advanced research in cryptography and digital ledgers, and combining it with a scalable access and management system, security will become a core functionality of the systems we build. By using scalable device DIDs, integrating verification and reputation schemes, and allowing for transparent tamper-proof accountability, we begin to understand how we can future-proof the security of our systems, allowing us to start trusting the process, and not the patch. -### One Framework. Any Identity. +## One Framework. Any Identity. -> The IOTA Identity framework serves as the invisible layer of trust for the internet. This framework must be open, scalable and free, so that everyone and everything can enjoy trust as a basic digital right. +:::info Framework -With multiple different types of actor requiring an identity protocol, it is a strong proposition to use the same underlying protocol for all of them. This IOTA Identity framework enables anyone or anything to create a digital identity, build an online profile of trust by collecting verifiable credentials, and share them with other actors they interact with. Interaction between people, companies, things and objects becomes seamless. And just as we can trust a person we will also be able to trust a car, or even a luxury coat. Different identities can also be linked together, creating trustworthy relationships, such as ownership of an object. IOTA already provides a protocol that enables these actors to transact value or data with one another. IOTA will now combine identity features into a single platform, creating the base protocol for the next generation of smart applications. + The IOTA Identity framework serves as the invisible layer of trust for the internet. This framework must be open, scalable and free, so that everyone and everything can enjoy trust as a basic digital right. -### Why IOTA? +::: -> IOTA is a neutral and free-to-use public infrastructure acting as a trustworthy public commons. +With multiple different types of actors requiring an identity protocol, it is a strong proposition to use the same underlying protocol for all of them. This IOTA Identity framework enables anyone or anything to create a digital identity, build an online profile of trust by collecting verifiable credentials, and share them with other actors they interact with. Interaction between people, companies, things and objects becomes seamless. And just as we can trust a person we will also be able to trust a car, or even a luxury coat. Different identities can also be linked together, creating trustworthy relationships, such as ownership of an object. IOTA already provides a protocol that enables these actors to transact value or data with one another. IOTA will now combine identity features into a single platform, creating the base protocol for the next generation of smart applications. + +## Why IOTA? + +:::info Neutral and Free + +IOTA is a neutral and free-to-use public infrastructure acting as a trustworthy public commons. + +::: IOTA is a scalable and feeless Distributed Ledger Technology (DLT). Similar to Blockchain technology, IOTA provides an immutable and decentralized ledger that can transact value through the IOTA token. Unlike Blockchain, IOTA uses a non-linear data structure called the Tangle which makes it feeless and vastly more scalable. The Tangle also facilitates feeless transactions of data, such as DID registrations and credential revocations. As a single source of truth and trust in data, the Tangle can provide the trust infrastructure in a highly networked world. IOTA is uniquely suited for the a single unifying identity implementation. The network is designed for both humans and devices, providing a platform for trusted communication between individuals, organizations and things. The IOTA Foundation’s principles of full transparency, openness and permissionless innovation provide an open and neutral environment: + 1. **Permissionless & Decentralized**: Unlike a permissioned network such as Hyperledger or Corda, everyone can participate in consensus without being granted access. No party incentivized by profit-making has collective control over the network (unlike all blockchains). This makes IOTA neutral and censorship-resistant. 2. **Public**: Everyone can observe (unless using optional encryption) the transactions in the network. The network is inherently transparent. 3. **Feeless**: All data and value transactions on the network are free. Unlike other DLTs such as Bitcoin or Ethereum, registration and communication of identities can be written to the network without a requirement to purchase a cryptocurrency token. 4. **Open Source**: Everyone can view and contribute to the code. -5. **Easy to use**: IOTA Identity is inheritantly easier to use due to the lack of fees or requirement to set up an entire private network. In addition, the framework is designed to have a easy to use high-level API, with accesibility to the low-level more complex and more flexible API. Through integration with the Stronghold project, we also provide out-of-the-box security for secrets. +5. **Easy to use**: IOTA Identity is inherently easier to use due to the lack of fees or requirement to set up an entire private network. In addition, the framework is designed to have a easy to use high-level API, with accessibility to the low-level more complex and more flexible API. Through integration with the Stronghold project, we also provide out-of-the-box security for secrets. -Data must be immutably stored on a distributed ledger to ensure the decentralized nature of the digital identity protocol. With the network’s continual uptime, credentials are always verifiable without a dependency on the servers of credential issuers. This system also increases individual privacy, because contact with the Issuer is removed from the interaction between Holder and Verifier. Issuers will not be able to track when and how often the Holder uses their credentials. The flexibility afforded of the Tangle means that the digital identity framework remains extendible in the future. +Data must be immutably stored on a distributed ledger to ensure the decentralized nature of the digital identity protocol. With the network’s continual uptime, credentials are always verifiable without a dependency on the servers of credential issuers. This system also increases individual privacy, because contact with the Issuer is removed from the interaction between Holder and Verifier. Issuers will not be able to track when and how often the Holder uses their credentials. The flexibility afforded of the Tangle means that the digital identity framework remains extendable in the future. Within the digital identity framework, the Tangle is used for the following functionalities: 1. **Public Key Registry**: The Tangle enables a decentralized public key infrastructure (DPKI) for Issuers using DID standards. This allows Verifiers to verify a signature without a reliance on a centralized server. The DID standard also adds service endpoints, extending the usability of Identities beyond a public key registry, to, for example, registering verifiable credential standards. -2. **Revocation**: A verifiable credential can be revoked, meaning it will no longer be able to pass verification. The revocation is immutably stored on the Tangle, making sure no Holder can attempt to use their revoked credentials. This is designed to be a simple public key deactivation to guarentee GDPR compliance. \ No newline at end of file +2. **Revocation**: A verifiable credential can be revoked, meaning it will no longer be able to pass verification. The revocation is immutably stored on the Tangle, making sure no Holder can attempt to use their revoked credentials. This is designed to be a simple public key deactivation to guarantee GDPR compliance. \ No newline at end of file diff --git a/documentation/docs/faq.md b/documentation/docs/faq.md index 589091f047..9276534b88 100644 --- a/documentation/docs/faq.md +++ b/documentation/docs/faq.md @@ -1,6 +1,13 @@ --- title: Frequently Asked Questions sidebar_label: FAQ +description: Frequently Asked Question regardging IOTA Identity. +image: /img/Identity_icon.png +keywords: +- FAQ +- Frequently Asked Question +- Troubleshooting +- IOTA Identity --- TODO: Add list of frequently asked questions and there answers \ No newline at end of file diff --git a/documentation/docs/getting-started/advanced/README.md b/documentation/docs/getting-started/advanced/README.md deleted file mode 100644 index a4ba87ea0d..0000000000 --- a/documentation/docs/getting-started/advanced/README.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -title: Advanced Concepts Overview -sidebar_label: Overview ---- - -TODO: Provide overview of the advanced concepts \ No newline at end of file diff --git a/documentation/docs/getting-started/advanced/client.md b/documentation/docs/getting-started/advanced/client.md index 8db8390e97..3d325dbaf2 100644 --- a/documentation/docs/getting-started/advanced/client.md +++ b/documentation/docs/getting-started/advanced/client.md @@ -1,6 +1,11 @@ --- title: IOTA Client sidebar_label: IOTA Client +description: Explain what the IOTA Client does and how the features such as ZMQ and promoting should be used. +image: /img/Identity_icon.png +keywords: +- IOTA Client +- ZMQ --- TODO: Explain what the IOTA Client does and how the features such as ZMQ and promoting should be used. \ No newline at end of file diff --git a/documentation/docs/getting-started/advanced/did_messages.md b/documentation/docs/getting-started/advanced/did_messages.md index 656c7923c0..c9a2cacc5e 100644 --- a/documentation/docs/getting-started/advanced/did_messages.md +++ b/documentation/docs/getting-started/advanced/did_messages.md @@ -1,6 +1,16 @@ --- title: DID Messages sidebar_label: DID Messages +description: Learn how IOTA Identity recreates and validates the state from it's origin to the current version using Integration and Differentiation Chains. +image: /img/Identity_icon.png +keywords: +- Diff Chain +- Differentiation Chain +- Integration Chain +- smart contracts +- Chronicle +- state +- stateless --- TODO: Explain the concept of DID Messages and how they can be used to optimize DID updates. @@ -9,7 +19,7 @@ TODO: Explain the concept of DID Messages and how they can be used to optimize D Most DID methods are implemented on a Distributed Ledger Technology (DLT), such as Bitcoin, Ethereum or IOTA. Most common DID implementation on DLTs are based on fit-for-purpose Blockchains that store the state of a DID Document in the ledger, or a general purpose Blockchain that utilize smart contracts to store the state. Updating a DID Document where the state is understood by the network is straightforward. The network can determine if an action is legal and if a cryptographic signature is provided correctly, as it understands the underlying data structure, and can update the state accordingly. The individual state updates, or transactions, can be forgotten. -The IOTA Tangle is unable to track state or the understand the data structure. Storing the state is neither possible in the ledger, nor via a Smart contract (yet). Therefore, IOTA Identity has to recreate and validate the state from the origin of the Identity to the current version. The process involves querying all the relevant transactions from the Tangle, ordering them, filtering out the transactions that perform illegal actions or have an incorrect signature and then recreate state. As this requires the full history of the Identity, we recommend utilizing [Chronicle](https://github.com/iotaledger/chronicle.rs), an IOTA permanode, which stores the entire history of the Tangle. Further research will be performed to reduce storage requirements for IOTA Identity based applications. +The IOTA Tangle is unable to track, state, or understand the data structure. Storing the state is neither possible in the ledger, nor via a Smart contract (yet). Therefore, IOTA Identity has to recreate and validate the state from the origin of the Identity to the current version. The process involves querying all the relevant transactions from the Tangle, ordering them, filtering out the transactions that perform illegal actions or have an incorrect signature and then recreate state. As this requires the full history of the Identity, we recommend utilizing [Chronicle](https://github.com/iotaledger/chronicle.rs), an IOTA permanode, which stores the entire history of the Tangle. Further research will be performed to reduce storage requirements for IOTA Identity based applications. ### DID Messages @@ -17,7 +27,7 @@ Due to this constant need for state recreating, unique performance improvements The Integration Chain is a chain of transactions that contain full DID Documents. They are unrestricted in what they can add or remove from the DID Document. Every Integration Chain transaction points to a separate new Diff Chain. These Diff Chain transactions only list the changes to a DID Document and are therefore more compact. It is, however, restricted in rotating the signing key, making it fast and easy to validate the transaction. -Once a new Integration chain transaction is created, it will take all Diff Chain updates and compress them into a new DID Document, essentially combining them all into a single transaction. This reduces the amount of updates that need to be queried and validated tremendously. For example, lets assume every Diff chain contains 100 updates. Then validating a DID that has done 1050 updates, only requires the validation of 10 Integration Chain updates and 40 Diff Chain updates (The latest Diff Chain). We skipped out on 10 Diff Chains each containing 100 updates, and only validated the 10 Integration Chain updates and the last Diff Chain containing 40 updates. If we estimate every update to be on average 1 Kb, we only have to download 50 kb of information and validate it, which is signficantly less then the otherwise 1.025 Mb of information. +Once a new Integration chain transaction is created, it will take all Diff Chain updates and compress them into a new DID Document, essentially combining them all into a single transaction. This reduces the amount of updates that need to be queried and validated tremendously. For example, lets assume every Diff chain contains 100 updates. Then validating a DID that has done 1050 updates, only requires the validation of 10 Integration Chain updates and 40 Diff Chain updates (The latest Diff Chain). We skipped out on 10 Diff Chains each containing 100 updates, and only validated the 10 Integration Chain updates and the last Diff Chain containing 40 updates. If we estimate every update to be on average 1 Kb, we only have to download 50 kb of information and validate it, which is significantly less than the otherwise 1.025 Mb of information. The improved performance and ability to handle frequently updated DID Documents is especially beneficial for Verifiable Credential Revocation, by utilizing revocation flags. These concepts will be explained in the Verifiable Credentials and Key Collections sections. diff --git a/documentation/docs/getting-started/advanced/overview.md b/documentation/docs/getting-started/advanced/overview.md new file mode 100644 index 0000000000..3ca0522125 --- /dev/null +++ b/documentation/docs/getting-started/advanced/overview.md @@ -0,0 +1,11 @@ +--- +title: Advanced Concepts Overview +sidebar_label: Overview +description: Provide overview of the advanced concepts +image: /img/Identity_icon.png +keywords: +- advanced +- concepts +--- + +TODO: Provide overview of the advanced concepts \ No newline at end of file diff --git a/documentation/docs/getting-started/advanced/signature_schemes.md b/documentation/docs/getting-started/advanced/signature_schemes.md index 9b2b60d3a5..15826a0ec4 100644 --- a/documentation/docs/getting-started/advanced/signature_schemes.md +++ b/documentation/docs/getting-started/advanced/signature_schemes.md @@ -1,6 +1,12 @@ --- title: Signature Schemes sidebar_label: Signature Schemes +description: Explain what signature schemes are available and how a new one can be added locally (and to the repo). +image: /img/Identity_icon.png +keywords: +- signature +- local +- schemes --- -TODO: Explain what signature schemes are avaliable and how a new one can be added locally (and to the repo). \ No newline at end of file +TODO: Explain what signature schemes are available and how a new one can be added locally (and to the repo). \ No newline at end of file diff --git a/documentation/docs/getting-started/advanced/storage_adapter.md b/documentation/docs/getting-started/advanced/storage_adapter.md index e8cfd8b3d9..adb06fe35f 100644 --- a/documentation/docs/getting-started/advanced/storage_adapter.md +++ b/documentation/docs/getting-started/advanced/storage_adapter.md @@ -1,6 +1,12 @@ --- title: Storage Adapter sidebar_label: Storage Adapter +description: Explain the need for the storage adapter and how it can used to store account data differently +image: /img/Identity_icon.png +keywords: +- storage adapter +- account +- data --- TODO: Explain the need for the storage adapter and how it can used to store account data differently \ No newline at end of file diff --git a/documentation/docs/getting-started/did/create.md b/documentation/docs/getting-started/decentralized_identifiers/create.mdx similarity index 73% rename from documentation/docs/getting-started/did/create.md rename to documentation/docs/getting-started/decentralized_identifiers/create.mdx index 1037f7028a..2ba44a6bf8 100644 --- a/documentation/docs/getting-started/did/create.md +++ b/documentation/docs/getting-started/decentralized_identifiers/create.mdx @@ -1,6 +1,13 @@ --- title: Creating a Decentralized Identity sidebar_label: Create and Publish +description: DID Documents and publishing them to the Tangle +image: /img/Identity_icon.png +keywords: +- Documents +- DID +- Tangle +- Publish --- TODO: Explain DID, DID Documents and publishing them to the Tangle. diff --git a/documentation/docs/getting-started/decentralized_identifiers/merkle_key_collection.md b/documentation/docs/getting-started/decentralized_identifiers/merkle_key_collection.md new file mode 100644 index 0000000000..edc0467a3e --- /dev/null +++ b/documentation/docs/getting-started/decentralized_identifiers/merkle_key_collection.md @@ -0,0 +1,11 @@ +--- +title: Merkle Key Collection +sidebar_label: Merkle Key Collection +description: Explain why, how to use and how merkle key collections work. +image: /img/Identity_icon.png +keywords: +- Merkle Key Collections +- DID +--- + +TODO: Explain why, how to use and how merkle key collections work. \ No newline at end of file diff --git a/documentation/docs/getting-started/did/README.md b/documentation/docs/getting-started/decentralized_identifiers/overview.md similarity index 81% rename from documentation/docs/getting-started/did/README.md rename to documentation/docs/getting-started/decentralized_identifiers/overview.md index 1aaa652f94..1e010b4682 100644 --- a/documentation/docs/getting-started/did/README.md +++ b/documentation/docs/getting-started/decentralized_identifiers/overview.md @@ -1,20 +1,28 @@ --- -title: Decentralized Identifiers (DID) -sidebar_label: Overview +description: The Decentralized Identifiers (DID) standard from W3C is the fundamental standard that supports the concept of a decentralized digital identity. Explore the basic aspects of the DID standard. +image: /img/Identity_icon.png +keywords: +- public keys +- Method Specification +- Decentralized Identifiers +- overview +- DLT --- -The Decentralized Identifiers (DID) standard from W3C is the fundamental standard that supports the concept of a decentralized digital identity. A DID is a unique identifier that contains information that can be resolved to a DID Document. This document contains data such as public keys, enabling the holder to prove ownership over their personal data, but also URIs that link to public information about the identity. This implementation complies to the [DID specifications v1.0 Working](https://www.w3.org/TR/did-core//). +# Decentralized Identifiers (DID) -In the IOTA Identity framework, we have implemented the DID standard according to the `iota` DID Method Specification, which can be viewed [here](./specs/iota_did_method_spec.md). We recommend to see the `iota` DID Method Specification as the golden standard for DID on IOTA. Other implementations of DID on IOTA is recommended to follow the `iota` DID Method Specification. However, it is not necassary to implement a novel Method implementation for every project, so feel free to utilize this framework directly. +The Decentralized Identifiers (DID) standard from W3C is the fundamental standard that supports the concept of a decentralized digital identity. A DID is a unique identifier that contains information that can be resolved to a DID Document. This document contains data such as public keys, enabling the holder to prove ownership over their personal data, but also URIs that link to public information about the identity. This implementation complies to the [DID specifications v1.0 Working](https://www.w3.org/TR/did-core//). + +In the IOTA Identity framework, we have implemented the DID standard according to the `iota` [DID Method Specification](./specs/iota_did_method_spec.md). We recommend seeing the `iota` DID Method Specification as the golden standard for DID on IOTA. Other implementations of DID on IOTA are recommended to follow the `iota` DID Method Specification. However, it is not necassary to implement a novel Method implementation for every project, so feel free to utilize this framework directly. An example of DID conforming to the `iota` method specification: `did:iota:8dQAzVbbf6FLW9ckwyCBnKmcMGcUV9LYJoXtgQkHcNQy` -### Chapter overview +## Chapter Overview In this chapter we will explain the basic aspects of the DID standard. We will explore the how and why of DID Documents and why IOTA is a very suitable technology to host the DID Documents and the rest of a Self Sovereign Identity Framework. -### Decentralized Identifiers +## Decentralized Identifiers A Decentralized Identifier, or DID, is a unique identifier that is tied to a subject. This subject can be anything, like a person, an organization, an IoT device or even an object. The identifier can be used by the subject to identify themselves through a digital format, providing a basis for online identification. The identifier looks like a set of random characters that includes some prefixes to determine which standard and implementation is used: @@ -22,7 +30,7 @@ A Decentralized Identifier, or DID, is a unique identifier that is tied to a sub The World Wide Web Consortium (W3C) is a well-known standardization body that has standardized how DIDs should look like and work. This provides a basis for different technologies that implement the DID standard to achieve interoperability. A full list of all implementations can be found [here.](https://www.w3.org/TR/did-spec-registries/#did-methods) Please keep in mind that unfortuanetly most of these methods are outdated and not maintained. -### DID Documents +## DID Documents The purpose of a DID is to help navigate to a DID Document, which is a document containing more information regarding the identity subject. This document contains data such as public keys, enabling the subject to prove ownership over their personal data, but also URIs that link to public information about the identity. @@ -44,25 +52,25 @@ Never share your private keys, seeds, passphrases with anyone. Not even IOTA Fou Services are URIs that point to more information about the identity. This could be something as simple as a website for a organizational identity. These services are publicly avaliable for all to read and should therefore not contain Personal Identifiable Information (PII) in the case of human identities. -### Why use DIDs? +## Why use DIDs? DIDs have some limited use cases. It allows any subject to have a unique identifier, that they can prove ownership off and at the same time provide a way to send them encrypted messages. The Identity is Self Sovereign, meaning the subject is control of when the identity is created, but also destroyed. DIDs become really interesting in combination with Verifiable Credentials, that will be covered in a later section. In essence, Verifiable Credentials (VCs) are signed statements by trusted third parties about a certain identity. The signer, or Issuer, is referenced by DID and so is the subject, often called the Holder. The Holder can control a copy of this statement and share this with other parties, the Verifiers, that can verify the statement and check which party gave out the statement, without having to ask the Issuer. Instead, they can verify the signature of the Issuer by checking the Issuers DID Document. This whole set up puts Holders back into control over their own data, but also makes the data much more trustworthy as it has become verifiable. -### Why use IOTA Identity over other implementations? +## Why use IOTA Identity over other implementations? -IOTA Identity is a framework to implement Self Sovereign Identities on IOTA. Inheritly, IOTA provides some unique features that have a major impact on the usability of the framework. +IOTA Identity is a framework to implement Self Sovereign Identities on IOTA. Inherently, IOTA provides some unique features that have a major impact on the usability of the framework. -#### Feeless +### Feeless IOTA is a feeless Distributed Ledger Technology, that means that messages can immutably be stored inside the Tangle at no-cost, nor a requirements of holding any cryptocurrency tokens. That means that SSI applications can directly deploy towards the main network without any problems, as compared to most other SSI solutions running on a test network or having cryptocurrency requirements. This doesn't just make IOTA Identity have predictable costs and prevent issues around cryptocurrency holding taxes and legislation, it also makes it a fair network as anyone would be able to create one or more identities at no costs. The wealth of someone is irrelevant, making it the most inclusive SSI solution. -#### Ease-of-use +### Ease-of-use Without the need for a token, IOTA Identity can directly be used on the main network without having to purchase and manage a cryptocurrency token. In addition, the framework provides easy-to-use APIs that allow both standardized behavior or flexible, yet more complex access. Lastly, IOTA Identity provides a Stronghold solution for managing secrets in a secure manner, without requiring developers to reinvent the security wheel. -#### General Purpose DLT +### General Purpose DLT IOTA is a general purpose DLT as compared to some for-purpose DLTs with restricted use cases. That means that SSI can easily be combined with other DLT features such as payments, data streams, smart contracts and access control. It will no longer be needed to utilize multiple DLT projects alongside each other. diff --git a/documentation/docs/getting-started/did/resolve.md b/documentation/docs/getting-started/decentralized_identifiers/resolve.md similarity index 51% rename from documentation/docs/getting-started/did/resolve.md rename to documentation/docs/getting-started/decentralized_identifiers/resolve.md index d62da244eb..5528f7fe5f 100644 --- a/documentation/docs/getting-started/did/resolve.md +++ b/documentation/docs/getting-started/decentralized_identifiers/resolve.md @@ -1,6 +1,9 @@ --- title: Resolve an IOTA Identity sidebar_label: Resolve +description: Explain how resolving works including arguments. +image: /img/Identity_icon.png +keywords: +- Resolve --- - TODO: Explain how resolving works including arguments. \ No newline at end of file diff --git a/documentation/docs/getting-started/decentralized_identifiers/update.md b/documentation/docs/getting-started/decentralized_identifiers/update.md new file mode 100644 index 0000000000..8ab76ce591 --- /dev/null +++ b/documentation/docs/getting-started/decentralized_identifiers/update.md @@ -0,0 +1,14 @@ +--- +title: Update DID Documents +sidebar_label: Update +description: How DID Documents can be manipulated and how updates should be published. +image: /img/Identity_icon.png +keywords: +- Documents +- DID +- Tangle +- Update +- Publish +--- + +TODO: Explain how DID Documents can be manipulated and how updates should be published. \ No newline at end of file diff --git a/documentation/docs/getting-started/did/merkle_key_collection.md b/documentation/docs/getting-started/did/merkle_key_collection.md deleted file mode 100644 index 651a815d8d..0000000000 --- a/documentation/docs/getting-started/did/merkle_key_collection.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -title: Merkle Key Collection -sidebar_label: Merkle Key Collection ---- - -TODO: Explain why, how to use and how merkle key collections work. \ No newline at end of file diff --git a/documentation/docs/getting-started/did/update.md b/documentation/docs/getting-started/did/update.md deleted file mode 100644 index 7ebf79654b..0000000000 --- a/documentation/docs/getting-started/did/update.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -title: Update DID Documents -sidebar_label: Update ---- - -TODO: Explain how DID Documents can be manipulated and how updates should be published. \ No newline at end of file diff --git a/documentation/docs/getting-started/did_communications/did_comm_messages.md b/documentation/docs/getting-started/did_communications/did_comm_messages.md new file mode 100644 index 0000000000..be2527532a --- /dev/null +++ b/documentation/docs/getting-started/did_communications/did_comm_messages.md @@ -0,0 +1,12 @@ +--- +title: DID Comm messages +sidebar_label: DID Comm messages +description: Explain how to create and verify DID Comm messages +image: /img/Identity_icon.png +keywords: +- communication +- message +- Create +--- + +TODO: Explain how to create and verify DID Comm messages \ No newline at end of file diff --git a/documentation/docs/getting-started/did_communications/overview.md b/documentation/docs/getting-started/did_communications/overview.md new file mode 100644 index 0000000000..3ce4e69454 --- /dev/null +++ b/documentation/docs/getting-started/did_communications/overview.md @@ -0,0 +1,12 @@ +--- +title: DID Communications Overview +sidebar_label: Overview +description: Explain the DID Communications standard and what it is useful for +image: /img/Identity_icon.png +keywords: +- communication +- message +- standard +--- + +TODO: Explain the DID Communications standard and what it is useful for \ No newline at end of file diff --git a/documentation/docs/getting-started/did_communications/protocols.md b/documentation/docs/getting-started/did_communications/protocols.md new file mode 100644 index 0000000000..77d0c88294 --- /dev/null +++ b/documentation/docs/getting-started/did_communications/protocols.md @@ -0,0 +1,12 @@ +--- +title: DID Comm Protocols +sidebar_label: Protocols +description: Provide an overview of the DID Comm protocols +image: /img/Identity_icon.png +keywords: +- communication +- communications +- protocols +- Create +--- +TODO: Provide an overview of the DID Comm protocols \ No newline at end of file diff --git a/documentation/docs/getting-started/didcomm/README.md b/documentation/docs/getting-started/didcomm/README.md deleted file mode 100644 index 1603c6d6d8..0000000000 --- a/documentation/docs/getting-started/didcomm/README.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -title: DID Communications Overview -sidebar_label: Overview ---- - -TODO: Explain the DID Communications standard and what it is useful for \ No newline at end of file diff --git a/documentation/docs/getting-started/didcomm/did_comm_messages.md b/documentation/docs/getting-started/didcomm/did_comm_messages.md deleted file mode 100644 index 7316a0d53d..0000000000 --- a/documentation/docs/getting-started/didcomm/did_comm_messages.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -title: DID Comm messages -sidebar_label: DID Comm messages ---- - -TODO: Explain how to create and verify DID Comm messages \ No newline at end of file diff --git a/documentation/docs/getting-started/didcomm/protocols.md b/documentation/docs/getting-started/didcomm/protocols.md deleted file mode 100644 index 20f0010f0a..0000000000 --- a/documentation/docs/getting-started/didcomm/protocols.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: DID Comm Protocols -sidebar_label: Protocols ---- -TODO: Provide an overview of the DID Comm protocols \ No newline at end of file diff --git a/documentation/docs/getting-started/overview.md b/documentation/docs/getting-started/overview.md index 22c1057beb..0b411f8e88 100644 --- a/documentation/docs/getting-started/overview.md +++ b/documentation/docs/getting-started/overview.md @@ -1,13 +1,18 @@ --- -sidebar_position: 2 -title: Overview +description: Using IOTA Identity, a new digital identity can be created by anyone or anything at any time by generating a Decentralized Identifier (DID) combined with Verifiable Credentials. +image: /img/Identity_icon.png +keywords: +- Identity +- verifiable +- credentials +- Rust +- WASM --- - # Overview Using the standards proposed by W3C, this chapter will explain the IOTA Identity implementation. Using this implementation, a new digital identity can be created by anyone or anything at any time. To do so, a Decentralized Identifier (DID) is generated, that serves as a reference to a DID Document. The DID Document contains public keys, and other mechanisms, to enable the subject to prove their association with the DID. -However a DID alone tells you little about the subject. It must be combined with Verifiable Credentials. Verifiable Credentials are statements about the creator of the DID. They can be shared and verified online in a BYOI manner, and the DID creator remains in complete control of the process. +However, a DID alone tells you little about the subject. It must be combined with Verifiable Credentials. Verifiable Credentials are statements about the creator of the DID. They can be shared and verified online in a BYOI manner, and the DID creator remains in complete control of the process. This framework can be used in processes such as: - Address validation: Customers can prove where they live for shipping and billing addresses diff --git a/documentation/docs/getting-started/vc/create.md b/documentation/docs/getting-started/vc/create.md deleted file mode 100644 index e897eb3d27..0000000000 --- a/documentation/docs/getting-started/vc/create.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -title: Create a Verifiable Credential -sidebar_label: Create and Sign ---- - -TODO: Explain how a VC is created and verified. \ No newline at end of file diff --git a/documentation/docs/getting-started/vc/vp.md b/documentation/docs/getting-started/vc/vp.md deleted file mode 100644 index 590b9d8e20..0000000000 --- a/documentation/docs/getting-started/vc/vp.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -title: Verifiable Presentations -sidebar_label: Verifiable Presentations ---- - -TODO: Explain the need for and \ No newline at end of file diff --git a/documentation/docs/getting-started/verifiable_credentials/create.md b/documentation/docs/getting-started/verifiable_credentials/create.md new file mode 100644 index 0000000000..08a9f80c4d --- /dev/null +++ b/documentation/docs/getting-started/verifiable_credentials/create.md @@ -0,0 +1,13 @@ +--- +title: Create a Verifiable Credential +sidebar_label: Create and Sign +description: Explain how a VC is created and verified. +image: /img/Identity_icon.png +keywords: +- verifiable +- credentials +- Create +- sign +--- + +TODO: Explain how a VC is created and verified. \ No newline at end of file diff --git a/documentation/docs/getting-started/vc/README.md b/documentation/docs/getting-started/verifiable_credentials/overview.md similarity index 56% rename from documentation/docs/getting-started/vc/README.md rename to documentation/docs/getting-started/verifiable_credentials/overview.md index 4fc5950cd2..e33bb29521 100644 --- a/documentation/docs/getting-started/vc/README.md +++ b/documentation/docs/getting-started/verifiable_credentials/overview.md @@ -1,6 +1,12 @@ --- title: Verifiable Credentials Overview sidebar_label: Overview +description: Verifiable Credentials are statements about the holder. They can be verified online or in person, and the holder decides who to share them with. +image: /img/Identity_icon.png +keywords: +- verifiable +- credentials +- person --- diff --git a/documentation/docs/getting-started/vc/revoke.md b/documentation/docs/getting-started/verifiable_credentials/revoke.md similarity index 52% rename from documentation/docs/getting-started/vc/revoke.md rename to documentation/docs/getting-started/verifiable_credentials/revoke.md index d1c5e1e773..0b67d9c442 100644 --- a/documentation/docs/getting-started/vc/revoke.md +++ b/documentation/docs/getting-started/verifiable_credentials/revoke.md @@ -1,6 +1,13 @@ --- title: Verifiable Credential Revocation sidebar_label: Revocation +description: Explain how a VC is revoked. +image: /img/Identity_icon.png +keywords: +- verifiable +- credentials +- revoke +- Merkle Key Collections --- diff --git a/documentation/docs/getting-started/verifiable_credentials/verifiable_presentations.md b/documentation/docs/getting-started/verifiable_credentials/verifiable_presentations.md new file mode 100644 index 0000000000..0e7d3cd3ad --- /dev/null +++ b/documentation/docs/getting-started/verifiable_credentials/verifiable_presentations.md @@ -0,0 +1,11 @@ +--- +title: Verifiable Presentations +sidebar_label: Verifiable Presentations +description: Explain how a VC is created and verified. +image: /img/Identity_icon.png +keywords: +- verifiable +- presentations +--- + +TODO: Explain the need for and \ No newline at end of file diff --git a/documentation/docs/glossary.md b/documentation/docs/glossary.md index 939529a3e9..69da69bd55 100644 --- a/documentation/docs/glossary.md +++ b/documentation/docs/glossary.md @@ -1,3 +1,14 @@ +--- +description: Glossary for IOTA Identity, defines the terms used in this specification and throughout decentralized identifier infrastructure. +image: /img/Identity_icon.png +keywords: +- W3C +- terminology +- IOTA +- verification method +- verifiable data registry +--- + # Glossary The first part describes the terminology by the W3C. diff --git a/documentation/docs/intro.md b/documentation/docs/introduction.md similarity index 61% rename from documentation/docs/intro.md rename to documentation/docs/introduction.md index 09dbc0919e..04c443e157 100644 --- a/documentation/docs/intro.md +++ b/documentation/docs/introduction.md @@ -1,6 +1,11 @@ --- -sidebar_position: 1 -title: Introduction +keywords: +- Identity +- guide +- TOC +- overview +description: The most important concepts that developers will need to know to utilize IOTA Identity to its full potential. +image: /img/Identity_icon.png --- # IOTA Identity Framework Guide @@ -9,51 +14,51 @@ title: Introduction The IOTA Identity framework implements the most common standards and patterns for Decentralized Identity in both a DLT agnostic and `iota` method specification manner. It is designed to work for Identity for People, Organizations, Things, and Objects acting as a unifying-layer of trust between everyone and everything. -In this guide, we will go through the most important concepts that developers will need to know to utilize IOTA Identity to its full potential. The guide is programming language agnostic, with langauge specific guides located in Chapter 4. +In this guide, we will go through the most important concepts that developers will need to know to utilize IOTA Identity to its full potential. The guide is programming language agnostic, with language specific guides located in Chapter 4. -### Overview +## Overview -**Chapter 2: Decentralized Identity** +### Chapter 2: Decentralized Identity Describes the concept of Decentralized or Self Sovereign Identities (SSI), how it applies to People, Organizations and Things, and why IOTA is used. -**Chapter 3.1: Decentralized Identifiers (DID)** +### Chapter 3.1: Decentralized Identifiers (DID) Explains the DID standard from W3C, how to manipulate DID Documents and Merkle Key Collections, the basis of our revocation mechanism. -**Chapter 3.2: Verifiable Credentials (VC)** +### Chapter 3.2: Verifiable Credentials (VC) -Explains the VC standard from W3C, how to create and revoke VCs and how to use Verifiable Presentations. +Explains the VC standard from W3C, how to create and revoke VCs, and how to use Verifiable Presentations. -**Chapter 3.3: DID Communications (DID Comm)** +### Chapter 3.3: DID Communications (DID Comm) -This chapter covers the DID Comm standard, which is being developed by the Decentralized Identity Foundation (DIF). It also describes the different messages agents may sent each other and what the expected responses may look like. +This chapter covers the DID Comm standard, which is being developed by the Decentralized Identity Foundation (DIF). It also describes the different messages agents may send each other and what the expected responses may look like. -**Chapter 3.4: Advanced Concepts** +### Chapter 3.4: Advanced Concepts -This chapter is ment for those that want to push the IOTA Identity framework to its limits, utilizing the more complex, yet more flexible lower level libraries, allowing developers to optimize their implementation, take control over storage/security, and add features to the framework. +This chapter is meant for those that want to push the IOTA Identity framework to its limits, utilizing the more complex, yet more flexible lower level libraries, allowing developers to optimize their implementation, take control over storage/security, and add features to the framework. -**Chapter 4: Programming Languages** +### Chapter 4: Programming Languages -While the framework itself is developed in the Rust programming language, we also provide bindings, or "Foreign Function Interfaces" (FFI), to other languages. These will have seperate getting started sections, making the rest of the guide language agnostic, focusing on the conceptual level. +While the framework itself is developed in the Rust programming language, we also provide bindings, or "Foreign Function Interfaces" (FFI), to other languages. These will have separate getting started sections, making the rest of the guide language agnostic, focusing on the conceptual level. -**Chapter 5: Specification** +### Chapter 5: Specification While IOTA Identity implements many existing standards, it also adds some additional features we would like to standardize ourselves. This chapter covers these features and how they work in great detail. These are not light reads and can be skipped. -**Chapter 6: Glossary** +### Chapter 6: Glossary A list of all terminology used in this guide, the framework and all materials surrounding it. -**Chapter 7: Contribute** +### Chapter 7: Contribute A simple guide on how to contribute to the framework. -**Chapter 8: Contact** +### Chapter 8: Contact How to contact the maintainers. -**Chapter 9: FAQ** +### Chapter 9: FAQ Overview of the most Frequently Asked Questions, and their answers. diff --git a/documentation/docs/libraries/README.md b/documentation/docs/libraries/README.md index dc95cf2f37..918d852832 100644 --- a/documentation/docs/libraries/README.md +++ b/documentation/docs/libraries/README.md @@ -2,5 +2,5 @@ We currently support the following libraries: -- [Rust](./rust/README) -- [WASM](./wasm/README) +- [Rust](rust/overview.md) +- [WASM](wasm/overview.md) diff --git a/documentation/docs/libraries/rust/api_reference.md b/documentation/docs/libraries/rust/api_reference.md index 66c0bb00ee..162e480c47 100644 --- a/documentation/docs/libraries/rust/api_reference.md +++ b/documentation/docs/libraries/rust/api_reference.md @@ -1,6 +1,11 @@ --- title: API Reference sidebar_label: API Reference +description: Rust API reference. Learn how generate docs for the whole crate. +image: /img/Identity_icon.png +keywords: +- Rust +- API Reference --- Link to hosted api documentation: diff --git a/documentation/docs/libraries/rust/examples.md b/documentation/docs/libraries/rust/examples.md index b6704b6f91..84c2f6d5a1 100644 --- a/documentation/docs/libraries/rust/examples.md +++ b/documentation/docs/libraries/rust/examples.md @@ -1,4 +1,9 @@ --- title: Examples sidebar_label: Rust Examples +description: Rust Examples. +image: /img/Identity_icon.png +keywords: +- Rust +- Examples --- diff --git a/documentation/docs/libraries/rust/getting_started.md b/documentation/docs/libraries/rust/getting_started.md index 0a8ec6eacc..23dc789aea 100644 --- a/documentation/docs/libraries/rust/getting_started.md +++ b/documentation/docs/libraries/rust/getting_started.md @@ -1,4 +1,9 @@ --- title: Getting Started with Rust sidebar_label: Getting Started +description: Getting started with the IOTA Identity Rust Library. +image: /img/Identity_icon.png +keywords: +- Rust +- Identity --- diff --git a/documentation/docs/libraries/rust/README.md b/documentation/docs/libraries/rust/overview.md similarity index 65% rename from documentation/docs/libraries/rust/README.md rename to documentation/docs/libraries/rust/overview.md index df6d200710..b0d8d74c03 100644 --- a/documentation/docs/libraries/rust/README.md +++ b/documentation/docs/libraries/rust/overview.md @@ -1,6 +1,13 @@ --- title: IOTA Identity Rust Library sidebar_label: Overview +description: Overview of the IOTA Identity Rust Library. +image: /img/Identity_icon.png +keywords: +- Rust +- API Reference +- Examples +- Troubleshooting --- # IOTA Identity Rust Library diff --git a/documentation/docs/libraries/rust/troubleshooting.md b/documentation/docs/libraries/rust/troubleshooting.md index 6086ebc483..fdea8c0650 100644 --- a/documentation/docs/libraries/rust/troubleshooting.md +++ b/documentation/docs/libraries/rust/troubleshooting.md @@ -1,4 +1,9 @@ --- title: Rust Troubleshooting sidebar_label: Troubleshooting +description: Troubleshooting the IOTA Identity Rust Library. +image: /img/Identity_icon.png +keywords: +- Rust +- Identity --- diff --git a/documentation/docs/libraries/wasm/api_reference.md b/documentation/docs/libraries/wasm/api_reference.md index d872729836..9f5ade7c83 100644 --- a/documentation/docs/libraries/wasm/api_reference.md +++ b/documentation/docs/libraries/wasm/api_reference.md @@ -1,6 +1,11 @@ --- title: WASM API Reference sidebar_label: API Reference +description: WASM API reference. +image: /img/Identity_icon.png +keywords: +- WASM +- API Reference --- {@import ../../../../bindings/wasm/docs/api-reference.md} \ No newline at end of file diff --git a/documentation/docs/libraries/wasm/examples.md b/documentation/docs/libraries/wasm/examples.md index 92c3de106d..69971f6793 100644 --- a/documentation/docs/libraries/wasm/examples.md +++ b/documentation/docs/libraries/wasm/examples.md @@ -1,4 +1,9 @@ --- title: WASM Examples sidebar_label: Examples +description: WASM Examples. +image: /img/Identity_icon.png +keywords: +- WASM +- Examples --- diff --git a/documentation/docs/libraries/wasm/getting_started.md b/documentation/docs/libraries/wasm/getting_started.md index 6950530801..94af633e4c 100644 --- a/documentation/docs/libraries/wasm/getting_started.md +++ b/documentation/docs/libraries/wasm/getting_started.md @@ -1,6 +1,16 @@ --- title: Getting Started with WASM sidebar_label: Getting Started +description: Getting started with the IOTA Identity WASM Library. +image: /img/Identity_icon.png +keywords: +- WASM +- install +- npm +- yarn +- build +- nodejs +- webpack --- {@import ../../../../bindings/wasm/README.md} \ No newline at end of file diff --git a/documentation/docs/libraries/wasm/README.md b/documentation/docs/libraries/wasm/overview.md similarity index 64% rename from documentation/docs/libraries/wasm/README.md rename to documentation/docs/libraries/wasm/overview.md index f78b3ed6c6..3fa09f1b4a 100644 --- a/documentation/docs/libraries/wasm/README.md +++ b/documentation/docs/libraries/wasm/overview.md @@ -1,6 +1,13 @@ --- title: IOTA Identity WASM Library sidebar_label: Overview +description: Overview of the IOTA Identity WASM Library. +image: /img/Identity_icon.png +keywords: +- WASM +- API Reference +- Examples +- Troubleshooting --- diff --git a/documentation/docs/libraries/wasm/troubleshooting.md b/documentation/docs/libraries/wasm/troubleshooting.md index 398b66435c..dc9ef61650 100644 --- a/documentation/docs/libraries/wasm/troubleshooting.md +++ b/documentation/docs/libraries/wasm/troubleshooting.md @@ -1,4 +1,11 @@ --- title: WASM Troubleshooting sidebar_label: Troubleshooting +description: Troubleshooting of the IOTA Identity Rust Library. +image: /img/Identity_icon.png +keywords: +- Rust +- API Reference +- Examples +- Troubleshooting --- \ No newline at end of file diff --git a/documentation/docs/specs/README.md b/documentation/docs/specs/README.md deleted file mode 100644 index 7073b739e0..0000000000 --- a/documentation/docs/specs/README.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -title: Overview -sidebar_label: Overview ---- - -TODO \ No newline at end of file diff --git a/documentation/docs/specs/iota_did_method_spec.md b/documentation/docs/specs/iota_did_method_spec.md index 60beefe715..adc9039cc7 100644 --- a/documentation/docs/specs/iota_did_method_spec.md +++ b/documentation/docs/specs/iota_did_method_spec.md @@ -1,6 +1,15 @@ --- title: IOTA DID Method Specification sidebar_label: DID Method +description: How IOTA Identity implements the Decentralized Identifiers Standard on the IOTA Tangle. +image: /img/Identity_icon.png +keywords: +- DID +- specs +- specifications +- Decentralized Identifiers +- Tangle +- format --- # IOTA DID Method Specification @@ -19,7 +28,8 @@ This specification defines a method of implementing DID on top of the [IOTA Tang Blockchain | Tangle :---------:|:---------: -![](/img/blockchain-bottleneck.gif) | ![](/img/tangle-bottleneck.gif) + +![Blockchain bottleneck](/img/blockchain-bottleneck.gif) | ![Tangle Bottleneck](/img/tangle-bottleneck.gif) For this method, the most important features of IOTA are: diff --git a/documentation/docs/specs/merkle_key_collection.md b/documentation/docs/specs/merkle_key_collection.md index 4dbafb2e45..4e1997d6c5 100644 --- a/documentation/docs/specs/merkle_key_collection.md +++ b/documentation/docs/specs/merkle_key_collection.md @@ -1,6 +1,15 @@ --- title: Merkle Key Collection Specification sidebar_label: Merkle Key Collection +description: The Merkle Key Collection Specification provides authentication and integrity protection to DID Documents without a dependency on any particular Distributed Ledger Technology (DLT). +image: /img/Identity_icon.png +keywords: +- Merkle Key Collection +- Documents +- DID +- DLT +- Specifications +- Specs --- Version 0.1-draft by Devin Turner, IOTA Foundation diff --git a/documentation/docs/specs/overview.md b/documentation/docs/specs/overview.md new file mode 100644 index 0000000000..a38034631b --- /dev/null +++ b/documentation/docs/specs/overview.md @@ -0,0 +1,11 @@ +--- +title: Overview +sidebar_label: Overview +description: IOTA Identity specifications overview. +image: /img/Identity_icon.png +keywords: +- specs +- specifications +--- + +TODO \ No newline at end of file diff --git a/documentation/docusaurus.config.js b/documentation/docusaurus.config.js index 5889304212..33ba1a6078 100644 --- a/documentation/docusaurus.config.js +++ b/documentation/docusaurus.config.js @@ -7,12 +7,11 @@ module.exports = { tagline: 'Providing Trust between Individuals, Organizations and Things.', url: 'https://identity.docs.iota.org', baseUrl: '/', - onBrokenLinks: 'throw', + onBrokenLinks: 'warn', onBrokenMarkdownLinks: 'warn', favicon: 'img/favicon.ico', organizationName: 'iotaledger', // Usually your GitHub org/user name. projectName: 'identity.rs', // Usually your repo name. - onBrokenLinks: 'warn', stylesheets: [ 'https://fonts.googleapis.com/css?family=Material+Icons', ], @@ -26,7 +25,7 @@ module.exports = { items: [ { type: 'doc', - docId: 'intro', + docId: 'introduction', position: 'left', label: 'Documentation', }, @@ -51,15 +50,15 @@ module.exports = { }, { label: 'Rust', - to: '/docs/libraries/rust/README', + to: '/docs/libraries/rust/overview', }, { label: 'WASM', - to: '/docs/libraries/wasm/README', + to: '/docs/libraries/wasm/overview', }, { label: 'Specification', - to: '/docs/specs/README', + to: '/docs/specs/overview', }, ], }, diff --git a/documentation/package.json b/documentation/package.json index abae28fec2..621e912a3a 100644 --- a/documentation/package.json +++ b/documentation/package.json @@ -14,8 +14,8 @@ "write-heading-ids": "docusaurus write-heading-ids" }, "dependencies": { - "@docusaurus/core": "^2.0.0-beta.6f366f4b4", - "@docusaurus/preset-classic": "^2.0.0-beta.6f366f4b4", + "@docusaurus/core": "^2.0.0-beta.4", + "@docusaurus/preset-classic": "^2.0.0-beta.4", "@mdx-js/react": "^1.6.21", "@svgr/webpack": "^5.5.0", "clsx": "^1.1.1", diff --git a/documentation/sidebars.js b/documentation/sidebars.js index 4f97b1c3c4..d197f03039 100644 --- a/documentation/sidebars.js +++ b/documentation/sidebars.js @@ -10,99 +10,107 @@ */ module.exports = { - // By default, Docusaurus generates a sidebar from the docs folder structure - // tutorialSidebar: [{type: 'autogenerated', dirName: '.'}], + // By default, Docusaurus generates a sidebar from the docs folder structure + // tutorialSidebar: [{type: 'autogenerated', dirName: '.'}], - // But you can create a sidebar manually + // But you can create a sidebar manually - docs: [ - 'intro', - 'intro_ssi', - { - type: 'category', - label: 'Getting Started', - collapsed: false, - items: [ - 'getting-started/overview', + docs: [ { - 'Decentralized Identifiers (DID)': [ - 'getting-started/did/README', - 'getting-started/did/create', - 'getting-started/did/resolve', - 'getting-started/did/update', - 'getting-started/did/merkle_key_collection', - ], + type: 'doc', + id: 'introduction', + label: 'Introduction' }, { - 'Verifiable Credentials': [ - 'getting-started/vc/README', - 'getting-started/vc/create', - 'getting-started/vc/revoke', - 'getting-started/vc/vp', - ] + type:'doc', + id:'decentralized_identity', + label:'Decentralized Identity' }, { - 'DID Communication': [ - 'getting-started/didcomm/README', - 'getting-started/didcomm/did_comm_messages', - 'getting-started/didcomm/protocols', - ], - 'Advanced Concepts':[ - 'getting-started/advanced/README', - 'getting-started/advanced/client', - 'getting-started/advanced/did_messages', - 'getting-started/advanced/storage_adapter', - 'getting-started/advanced/signature_schemes', + type: 'category', + label: 'Getting Started', + collapsed: false, + items: [ + 'getting-started/overview', + { + 'Decentralized Identifiers (DID)': [ + 'getting-started/decentralized_identifiers/overview', + 'getting-started/decentralized_identifiers/create', + 'getting-started/decentralized_identifiers/resolve', + 'getting-started/decentralized_identifiers/update', + 'getting-started/decentralized_identifiers/merkle_key_collection', + ], + }, + { + 'Verifiable Credentials': [ + 'getting-started/verifiable_credentials/overview', + 'getting-started/verifiable_credentials/create', + 'getting-started/verifiable_credentials/revoke', + 'getting-started/verifiable_credentials/verifiable_presentations', + ] + }, + { + 'DID Communication': [ + 'getting-started/did_communications/overview', + 'getting-started/did_communications/did_comm_messages', + 'getting-started/did_communications/protocols', + ], + 'Advanced Concepts': [ + 'getting-started/advanced/overview', + 'getting-started/advanced/client', + 'getting-started/advanced/did_messages', + 'getting-started/advanced/storage_adapter', + 'getting-started/advanced/signature_schemes', - ] + ] + }, + ], }, - ], - }, - { - type: 'category', - label: 'Programming Languages', - collapsed: true, - items: [ { - type: 'category', - label: 'Rust', - collapsed: true, - items: [ - 'libraries/rust/README', - 'libraries/rust/getting_started', - 'libraries/rust/examples', - 'libraries/rust/api_reference', - 'libraries/rust/troubleshooting', - ], - + type: 'category', + label: 'Programming Languages', + collapsed: true, + items: [ + { + type: 'category', + label: 'Rust', + collapsed: true, + items: [ + 'libraries/rust/overview', + 'libraries/rust/getting_started', + 'libraries/rust/examples', + 'libraries/rust/api_reference', + 'libraries/rust/troubleshooting', + ], + + }, + { + type: 'category', + label: 'WASM', + collapsed: true, + items: [ + 'libraries/wasm/overview', + 'libraries/wasm/getting_started', + 'libraries/wasm/examples', + 'libraries/wasm/api_reference', + 'libraries/wasm/troubleshooting', + ], + }, + ], }, { - type: 'category', - label: 'WASM', - collapsed: true, - items: [ - 'libraries/wasm/README', - 'libraries/wasm/getting_started', - 'libraries/wasm/examples', - 'libraries/wasm/api_reference', - 'libraries/wasm/troubleshooting', - ], + type: 'category', + label: 'Specificatons', + collapsed: true, + items: [ + 'specs/overview', + 'specs/iota_did_method_spec', + 'specs/merkle_key_collection', + ], }, - ], - }, - { - type: 'category', - label: 'Specificatons', - collapsed: true, - items: [ - 'specs/README', - 'specs/iota_did_method_spec', - 'specs/merkle_key_collection', - ], - }, - 'glossary', - 'contribute', - 'contact', - 'faq' - ], + 'glossary', + 'contribute', + 'contact', + 'faq' + ], }; diff --git a/documentation/src/components/HomepageFeatures.js b/documentation/src/components/HomepageFeatures.js deleted file mode 100644 index 931c445e56..0000000000 --- a/documentation/src/components/HomepageFeatures.js +++ /dev/null @@ -1,62 +0,0 @@ -import React from 'react'; -import clsx from 'clsx'; -import styles from './HomepageFeatures.module.css'; -import LandingpageHeader from './LandingpageHeader'; - -const FeatureList = [ - { - title: 'Identity Of Things', - Svg: require('../../static/img/undraw_docusaurus_mountain.svg').default, - description: ( - <> - Devices have an identity that proves their capabilities, specifications, and authenticity to allow others to feel confident in transacting with them. - - ), - }, - { - title: 'Self Sovereign Identity', - Svg: require('../../static/img/undraw_docusaurus_tree.svg').default, - description: ( - <> - Individuals have a borderless digital identity that can be verified by anyone or anything in the world. - - ), - }, - { - title: 'Regulatory Compliance', - Svg: require('../../static/img/undraw_docusaurus_react.svg').default, - description: ( - <> - Organizations can use digital identities to follow regulations such as GDPR in a more cost-efficient way. - - ), - }, -]; - -function Feature({Svg, title, description}) { - return ( -
-
- -
-
-

{title}

-

{description}

-
-
- ); -} - -export default function HomepageFeatures() { - return ( -
-
-
- {FeatureList.map((props, idx) => ( - - ))} -
-
-
- ); -} diff --git a/documentation/src/components/HomepageFeatures.module.css b/documentation/src/components/HomepageFeatures.module.css deleted file mode 100644 index 9dcb82c354..0000000000 --- a/documentation/src/components/HomepageFeatures.module.css +++ /dev/null @@ -1,13 +0,0 @@ -/* stylelint-disable docusaurus/copyright-header */ - -.features { - display: flex; - align-items: center; - padding: 2rem 0; - width: 100%; -} - -.featureSvg { - height: 200px; - width: 200px; -} diff --git a/documentation/src/components/LandingpageActions/index.js b/documentation/src/components/LandingpageActions/index.js index cd2bc523f6..f0f3ebd494 100644 --- a/documentation/src/components/LandingpageActions/index.js +++ b/documentation/src/components/LandingpageActions/index.js @@ -6,7 +6,7 @@ import styles from './styles.module.css'; const ActionList = [ { title: 'Documentation', - link: 'docs/intro', + link: 'docs/introduction', description: ( <> Learn the Basics about the IOTA Identity Framework and the concepts behind the Digital Identifier W3C standard. diff --git a/documentation/static/img/Identity_icon.png b/documentation/static/img/Identity_icon.png new file mode 100644 index 0000000000..5b9a70850c Binary files /dev/null and b/documentation/static/img/Identity_icon.png differ diff --git a/documentation/static/img/docusaurus.png b/documentation/static/img/docusaurus.png deleted file mode 100644 index f458149e3c..0000000000 Binary files a/documentation/static/img/docusaurus.png and /dev/null differ diff --git a/documentation/static/img/tutorial/docsVersionDropdown.png b/documentation/static/img/tutorial/docsVersionDropdown.png deleted file mode 100644 index ff1cbe6889..0000000000 Binary files a/documentation/static/img/tutorial/docsVersionDropdown.png and /dev/null differ diff --git a/documentation/static/img/tutorial/localeDropdown.png b/documentation/static/img/tutorial/localeDropdown.png deleted file mode 100644 index d7163f9675..0000000000 Binary files a/documentation/static/img/tutorial/localeDropdown.png and /dev/null differ diff --git a/documentation/static/img/undraw_docusaurus_mountain.svg b/documentation/static/img/undraw_docusaurus_mountain.svg deleted file mode 100644 index 431cef2f7f..0000000000 --- a/documentation/static/img/undraw_docusaurus_mountain.svg +++ /dev/null @@ -1,170 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/documentation/static/img/undraw_docusaurus_react.svg b/documentation/static/img/undraw_docusaurus_react.svg deleted file mode 100644 index e417050433..0000000000 --- a/documentation/static/img/undraw_docusaurus_react.svg +++ /dev/null @@ -1,169 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/documentation/static/img/undraw_docusaurus_tree.svg b/documentation/static/img/undraw_docusaurus_tree.svg deleted file mode 100644 index a05cc03dda..0000000000 --- a/documentation/static/img/undraw_docusaurus_tree.svg +++ /dev/null @@ -1 +0,0 @@ -docu_tree \ No newline at end of file diff --git a/documentation/yarn.lock b/documentation/yarn.lock index 70c9659030..3433032776 100644 --- a/documentation/yarn.lock +++ b/documentation/yarn.lock @@ -1160,10 +1160,10 @@ "@docsearch/css" "3.0.0-alpha.39" algoliasearch "^4.0.0" -"@docusaurus/core@2.0.0-beta.6f366f4b4", "@docusaurus/core@^2.0.0-beta.6f366f4b4": - version "2.0.0-beta.6f366f4b4" - resolved "https://registry.yarnpkg.com/@docusaurus/core/-/core-2.0.0-beta.6f366f4b4.tgz#e278f26ead2a1f3e74b5de8af29705b42e3ce6ea" - integrity sha512-IDOP0uisodRByiY/wrW7sy/KT7szWGdQZpfQ2WKuomOYseKL5/Ui8a/6BEdTQaNTFt2MTS4A+DzXBixuvnOpLg== +"@docusaurus/core@2.0.0-beta.5", "@docusaurus/core@^2.0.0-beta.4": + version "2.0.0-beta.5" + resolved "https://registry.yarnpkg.com/@docusaurus/core/-/core-2.0.0-beta.5.tgz#a8ccb489d75f777de59fdb698f93de9263928594" + integrity sha512-LERPgERVmui0Fb/aIEsd0/1O8VMWW2+vokoPJFHsCswNkk+63C+Ko6luu2z1QoXhbUGAVEJKTb4Z2NAZ5eSF5Q== dependencies: "@babel/core" "^7.12.16" "@babel/generator" "^7.12.15" @@ -1175,12 +1175,12 @@ "@babel/runtime" "^7.12.5" "@babel/runtime-corejs3" "^7.12.13" "@babel/traverse" "^7.12.13" - "@docusaurus/cssnano-preset" "2.0.0-beta.6f366f4b4" + "@docusaurus/cssnano-preset" "2.0.0-beta.5" "@docusaurus/react-loadable" "5.5.0" - "@docusaurus/types" "2.0.0-beta.6f366f4b4" - "@docusaurus/utils" "2.0.0-beta.6f366f4b4" - "@docusaurus/utils-common" "2.0.0-beta.6f366f4b4" - "@docusaurus/utils-validation" "2.0.0-beta.6f366f4b4" + "@docusaurus/types" "2.0.0-beta.5" + "@docusaurus/utils" "2.0.0-beta.5" + "@docusaurus/utils-common" "2.0.0-beta.5" + "@docusaurus/utils-validation" "2.0.0-beta.5" "@slorber/static-site-generator-webpack-plugin" "^4.0.0" "@svgr/webpack" "^5.5.0" autoprefixer "^10.2.5" @@ -1189,7 +1189,7 @@ boxen "^5.0.1" chalk "^4.1.1" chokidar "^3.5.1" - clean-css "^5.1.2" + clean-css "^5.1.5" commander "^5.1.0" copy-webpack-plugin "^9.0.0" core-js "^3.9.1" @@ -1226,6 +1226,7 @@ react-router "^5.2.0" react-router-config "^5.1.1" react-router-dom "^5.2.0" + remark-admonitions "^1.2.1" resolve-pathname "^3.0.0" rtl-detect "^1.0.3" semver "^7.3.4" @@ -1244,24 +1245,24 @@ webpack-merge "^5.8.0" webpackbar "^5.0.0-3" -"@docusaurus/cssnano-preset@2.0.0-beta.6f366f4b4": - version "2.0.0-beta.6f366f4b4" - resolved "https://registry.yarnpkg.com/@docusaurus/cssnano-preset/-/cssnano-preset-2.0.0-beta.6f366f4b4.tgz#a6c9dfb6cd7de814dcc661822413eac9fd4d17b7" - integrity sha512-g6D9mIRPUqHokVri1vdPyaUvaKXh9vN3a5YtVVGlglBfbkqQEJIVVlCTCppmtTt6e5Xfe0VUmfCgKU9Ru3J7Pg== +"@docusaurus/cssnano-preset@2.0.0-beta.5": + version "2.0.0-beta.5" + resolved "https://registry.yarnpkg.com/@docusaurus/cssnano-preset/-/cssnano-preset-2.0.0-beta.5.tgz#9f0e89662ac470cadf78bb1c90ad746ad5f6d5b3" + integrity sha512-qbGj3X5jcAuA/Nr6EKGRFUGYnMXAuuBg0PyJpKGXLi9/wuIGGuuO/FED2L3f9AONWXZmZuwtKQGXeGtVN8sKEg== dependencies: cssnano-preset-advanced "^5.1.1" postcss "^8.2.15" postcss-sort-media-queries "^3.10.11" -"@docusaurus/mdx-loader@2.0.0-beta.6f366f4b4": - version "2.0.0-beta.6f366f4b4" - resolved "https://registry.yarnpkg.com/@docusaurus/mdx-loader/-/mdx-loader-2.0.0-beta.6f366f4b4.tgz#e2cf19782fc9e573ad3d0f8db20f3c787934537d" - integrity sha512-6hxruPQu07ly1DBzuKIteyZthK55nOBZ3h6oYQSSF/SEqQ8nWfDZ7DgVZ8ul+7T0/pPT7SlCp7dboS0nZE3jrQ== +"@docusaurus/mdx-loader@2.0.0-beta.5": + version "2.0.0-beta.5" + resolved "https://registry.yarnpkg.com/@docusaurus/mdx-loader/-/mdx-loader-2.0.0-beta.5.tgz#e2b0678d52878dcbc0227489526996f67000358a" + integrity sha512-6e1SPIIEuXomdpYnP3dkAu/6Y6aInu5vRBBc1GjLvy1RzrX1NTLdQtNdjjaEctP0eyddkyc9tkQwH0p2Wav8Zw== dependencies: "@babel/parser" "^7.12.16" "@babel/traverse" "^7.12.13" - "@docusaurus/core" "2.0.0-beta.6f366f4b4" - "@docusaurus/utils" "2.0.0-beta.6f366f4b4" + "@docusaurus/core" "2.0.0-beta.5" + "@docusaurus/utils" "2.0.0-beta.5" "@mdx-js/mdx" "^1.6.21" "@mdx-js/react" "^1.6.21" chalk "^4.1.1" @@ -1277,21 +1278,22 @@ url-loader "^4.1.1" webpack "^5.40.0" -"@docusaurus/plugin-content-blog@2.0.0-beta.6f366f4b4": - version "2.0.0-beta.6f366f4b4" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-blog/-/plugin-content-blog-2.0.0-beta.6f366f4b4.tgz#4148e959bf7e9615397726e0933651a163c65b63" - integrity sha512-6mKvMCyZIfX68wfIPr/cAVBNS7KX0lEXi+OA+mwoH/hlQP5VESzysPVltCJjk4W8hrp0SWDJok53OFP4pmMpeQ== +"@docusaurus/plugin-content-blog@2.0.0-beta.5": + version "2.0.0-beta.5" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-blog/-/plugin-content-blog-2.0.0-beta.5.tgz#6f9e47eb72d4169ff36a8d0f26348caf18fa48dc" + integrity sha512-gZmsBKibSE6/0LeGtpPtcRCvbl8XnRwsWhDGVf13CswnKSwmyE7FWq1ymAzgA4xJx//UamaRzZB9449+l2HVCg== dependencies: - "@docusaurus/core" "2.0.0-beta.6f366f4b4" - "@docusaurus/mdx-loader" "2.0.0-beta.6f366f4b4" - "@docusaurus/types" "2.0.0-beta.6f366f4b4" - "@docusaurus/utils" "2.0.0-beta.6f366f4b4" - "@docusaurus/utils-validation" "2.0.0-beta.6f366f4b4" + "@docusaurus/core" "2.0.0-beta.5" + "@docusaurus/mdx-loader" "2.0.0-beta.5" + "@docusaurus/types" "2.0.0-beta.5" + "@docusaurus/utils" "2.0.0-beta.5" + "@docusaurus/utils-validation" "2.0.0-beta.5" chalk "^4.1.1" escape-string-regexp "^4.0.0" feed "^4.2.2" fs-extra "^10.0.0" globby "^11.0.2" + js-yaml "^4.0.0" loader-utils "^2.0.0" lodash "^4.17.20" reading-time "^1.3.0" @@ -1299,16 +1301,16 @@ tslib "^2.2.0" webpack "^5.40.0" -"@docusaurus/plugin-content-docs@2.0.0-beta.6f366f4b4": - version "2.0.0-beta.6f366f4b4" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-docs/-/plugin-content-docs-2.0.0-beta.6f366f4b4.tgz#874f866a46dc3435a4a3d2d80398069a6ebd57e8" - integrity sha512-p+Fx6X/25AKoB9pNRF4Qo2gEEx0t+z+YbCnWaTViOuN/BNK+UrAeF2uX72PGeAJSOVjO41gmKLofHp71/etkYA== +"@docusaurus/plugin-content-docs@2.0.0-beta.5": + version "2.0.0-beta.5" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-docs/-/plugin-content-docs-2.0.0-beta.5.tgz#22bf5fc4b6dc91019a9393008b3272c763cf9216" + integrity sha512-9WXa+UK4/oOnGdk2aWLfE/151v6tf4jgxgRSM+V9jH9FQiluG5APDz0lH62wSTZbl8PjflK5BBhl17tCjGvvgQ== dependencies: - "@docusaurus/core" "2.0.0-beta.6f366f4b4" - "@docusaurus/mdx-loader" "2.0.0-beta.6f366f4b4" - "@docusaurus/types" "2.0.0-beta.6f366f4b4" - "@docusaurus/utils" "2.0.0-beta.6f366f4b4" - "@docusaurus/utils-validation" "2.0.0-beta.6f366f4b4" + "@docusaurus/core" "2.0.0-beta.5" + "@docusaurus/mdx-loader" "2.0.0-beta.5" + "@docusaurus/types" "2.0.0-beta.5" + "@docusaurus/utils" "2.0.0-beta.5" + "@docusaurus/utils-validation" "2.0.0-beta.5" chalk "^4.1.1" combine-promises "^1.1.0" escape-string-regexp "^4.0.0" @@ -1325,76 +1327,76 @@ utility-types "^3.10.0" webpack "^5.40.0" -"@docusaurus/plugin-content-pages@2.0.0-beta.6f366f4b4": - version "2.0.0-beta.6f366f4b4" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-pages/-/plugin-content-pages-2.0.0-beta.6f366f4b4.tgz#92493fa2d83ee316c8d174541ba32947f09b33d2" - integrity sha512-aphnJJjg++kbW4CzFgbph4KA9FNnLkQB5qRRv+wUcBXbKmr03KieY1zq5W5OOe+1nI0cCCbx327e6llSYilhRg== +"@docusaurus/plugin-content-pages@2.0.0-beta.5": + version "2.0.0-beta.5" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-pages/-/plugin-content-pages-2.0.0-beta.5.tgz#3aa5e752699fcafe9b59b27fe011b7f86453e2af" + integrity sha512-1amYXgCc+ZqU8KScwG5zXWIGcy9OdrmmhB6LUuE+vfn+jVOdn8oVTkR8JTVMqmvLhyxmL30ixO06UsstQvKAJQ== dependencies: - "@docusaurus/core" "2.0.0-beta.6f366f4b4" - "@docusaurus/mdx-loader" "2.0.0-beta.6f366f4b4" - "@docusaurus/types" "2.0.0-beta.6f366f4b4" - "@docusaurus/utils" "2.0.0-beta.6f366f4b4" - "@docusaurus/utils-validation" "2.0.0-beta.6f366f4b4" + "@docusaurus/core" "2.0.0-beta.5" + "@docusaurus/mdx-loader" "2.0.0-beta.5" + "@docusaurus/types" "2.0.0-beta.5" + "@docusaurus/utils" "2.0.0-beta.5" + "@docusaurus/utils-validation" "2.0.0-beta.5" globby "^11.0.2" lodash "^4.17.20" remark-admonitions "^1.2.1" tslib "^2.1.0" webpack "^5.40.0" -"@docusaurus/plugin-debug@2.0.0-beta.6f366f4b4": - version "2.0.0-beta.6f366f4b4" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-debug/-/plugin-debug-2.0.0-beta.6f366f4b4.tgz#fb0b04dc7d9817edc15d79c4cee9dcb7d2671793" - integrity sha512-32f0mGonK+5qz6yGoPcJPYKSYu3nHeE//wLjDNMNs3YJwsAxwYdmrVOVIgTpIEVgeY9hoH8XeOn1QAHCRfqCLA== +"@docusaurus/plugin-debug@2.0.0-beta.5": + version "2.0.0-beta.5" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-debug/-/plugin-debug-2.0.0-beta.5.tgz#649449ccf33209ba0b723361d86459b45e4f760f" + integrity sha512-ITrgRNic+NY9HMzUKzYhh6Mz/tgKQjdJYVizA/kbP5pkjB8FunE+0B12km9UNBzuT4ETGdNKgQGAqzrcrjpnag== dependencies: - "@docusaurus/core" "2.0.0-beta.6f366f4b4" - "@docusaurus/types" "2.0.0-beta.6f366f4b4" - "@docusaurus/utils" "2.0.0-beta.6f366f4b4" + "@docusaurus/core" "2.0.0-beta.5" + "@docusaurus/types" "2.0.0-beta.5" + "@docusaurus/utils" "2.0.0-beta.5" react-json-view "^1.21.3" tslib "^2.1.0" -"@docusaurus/plugin-google-analytics@2.0.0-beta.6f366f4b4": - version "2.0.0-beta.6f366f4b4" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-2.0.0-beta.6f366f4b4.tgz#ac31183189b948163c8218befb294133162ab2f2" - integrity sha512-v0DQ4dk8nwp3vbQ9EL7qkM1c3MMaTjITyeuytc698Lix72mdIXlOaGAXPvuyy+I+vzwrW5+IIk8mzTi8xvqYvg== +"@docusaurus/plugin-google-analytics@2.0.0-beta.5": + version "2.0.0-beta.5" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-2.0.0-beta.5.tgz#a54197e7e60ab785dd14fb4e1a02887fc162d9c1" + integrity sha512-ncG+SCafoqFhtOMJwk9IZbzZCdy1bgmOjNCSfF6mmDp9laYYJBplBtqItIBQTuycIyKCxznKzi2q8l9989uMrA== dependencies: - "@docusaurus/core" "2.0.0-beta.6f366f4b4" + "@docusaurus/core" "2.0.0-beta.5" -"@docusaurus/plugin-google-gtag@2.0.0-beta.6f366f4b4": - version "2.0.0-beta.6f366f4b4" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-2.0.0-beta.6f366f4b4.tgz#8ab12d6b19f786e9305873136662d6e0e2bdcb23" - integrity sha512-BgP/hJy6JB8ZY9q7pp3G+u9uWXu2rpwAP6d5MutW+7iLgJMt2W3NOHUvSol5nodjfRHH3gByyZcKU6bBB+50LA== +"@docusaurus/plugin-google-gtag@2.0.0-beta.5": + version "2.0.0-beta.5" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-2.0.0-beta.5.tgz#415a4f98776e0ece17e96ca7e823022b5bf98316" + integrity sha512-FMWAXCLCUwEk7wykOAcM6vs3tHWVIU/T1PElqcoD7fh9521ocZ/5L8yyWWfJ+nX/90TVs+7nOFY0vNl2I2MYZg== dependencies: - "@docusaurus/core" "2.0.0-beta.6f366f4b4" + "@docusaurus/core" "2.0.0-beta.5" -"@docusaurus/plugin-sitemap@2.0.0-beta.6f366f4b4": - version "2.0.0-beta.6f366f4b4" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-sitemap/-/plugin-sitemap-2.0.0-beta.6f366f4b4.tgz#b019314edbfa071a607755e4bd6d05f2c5d0a565" - integrity sha512-ykIokaV8C44Bb9Ne1Ve2ncaRDm8zvnXBfxE1zCKGp+4OLPq9CJIui3MGnHkVUlgimxcbrJVN6qqnY91fOovn5A== +"@docusaurus/plugin-sitemap@2.0.0-beta.5": + version "2.0.0-beta.5" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-sitemap/-/plugin-sitemap-2.0.0-beta.5.tgz#2ab02a85e66e8b5dd8ce5f19023c005be2ec073b" + integrity sha512-QcIIMNmyMnOm5q/zyzidixNIB+yE7/ouUi/62wr5+ZkO/rvvObVe+r9Tdl90SmvsJH17y290EWEy9kunoRyG0w== dependencies: - "@docusaurus/core" "2.0.0-beta.6f366f4b4" - "@docusaurus/types" "2.0.0-beta.6f366f4b4" - "@docusaurus/utils" "2.0.0-beta.6f366f4b4" - "@docusaurus/utils-common" "2.0.0-beta.6f366f4b4" - "@docusaurus/utils-validation" "2.0.0-beta.6f366f4b4" + "@docusaurus/core" "2.0.0-beta.5" + "@docusaurus/types" "2.0.0-beta.5" + "@docusaurus/utils" "2.0.0-beta.5" + "@docusaurus/utils-common" "2.0.0-beta.5" + "@docusaurus/utils-validation" "2.0.0-beta.5" fs-extra "^10.0.0" sitemap "^7.0.0" tslib "^2.2.0" -"@docusaurus/preset-classic@^2.0.0-beta.6f366f4b4": - version "2.0.0-beta.6f366f4b4" - resolved "https://registry.yarnpkg.com/@docusaurus/preset-classic/-/preset-classic-2.0.0-beta.6f366f4b4.tgz#96aa8b65eca4f7686c30cae467265b6c0cab2a3d" - integrity sha512-3k7YMIvfDAKw3V8rD+2IFvtVJe9C0BaH6zEUn2eIFBOLLa7q5ITkHAWE9G+X4qT+GFXMJnTg2KAxcUxlfxBvfQ== - dependencies: - "@docusaurus/core" "2.0.0-beta.6f366f4b4" - "@docusaurus/plugin-content-blog" "2.0.0-beta.6f366f4b4" - "@docusaurus/plugin-content-docs" "2.0.0-beta.6f366f4b4" - "@docusaurus/plugin-content-pages" "2.0.0-beta.6f366f4b4" - "@docusaurus/plugin-debug" "2.0.0-beta.6f366f4b4" - "@docusaurus/plugin-google-analytics" "2.0.0-beta.6f366f4b4" - "@docusaurus/plugin-google-gtag" "2.0.0-beta.6f366f4b4" - "@docusaurus/plugin-sitemap" "2.0.0-beta.6f366f4b4" - "@docusaurus/theme-classic" "2.0.0-beta.6f366f4b4" - "@docusaurus/theme-search-algolia" "2.0.0-beta.6f366f4b4" +"@docusaurus/preset-classic@^2.0.0-beta.4": + version "2.0.0-beta.5" + resolved "https://registry.yarnpkg.com/@docusaurus/preset-classic/-/preset-classic-2.0.0-beta.5.tgz#7594167507ee7ff7aa78c3188bab4dfba6e8b551" + integrity sha512-hcPLYwMEMDuc/lNloDRh3SKpZneQLaz0Zj8CI7jsislp4iBz9QtbWZzruoXsJe7noSfqsBcTJqRlNw7/UwEyTA== + dependencies: + "@docusaurus/core" "2.0.0-beta.5" + "@docusaurus/plugin-content-blog" "2.0.0-beta.5" + "@docusaurus/plugin-content-docs" "2.0.0-beta.5" + "@docusaurus/plugin-content-pages" "2.0.0-beta.5" + "@docusaurus/plugin-debug" "2.0.0-beta.5" + "@docusaurus/plugin-google-analytics" "2.0.0-beta.5" + "@docusaurus/plugin-google-gtag" "2.0.0-beta.5" + "@docusaurus/plugin-sitemap" "2.0.0-beta.5" + "@docusaurus/theme-classic" "2.0.0-beta.5" + "@docusaurus/theme-search-algolia" "2.0.0-beta.5" "@docusaurus/react-loadable@5.5.0": version "5.5.0" @@ -1403,20 +1405,20 @@ dependencies: prop-types "^15.6.2" -"@docusaurus/theme-classic@2.0.0-beta.6f366f4b4": - version "2.0.0-beta.6f366f4b4" - resolved "https://registry.yarnpkg.com/@docusaurus/theme-classic/-/theme-classic-2.0.0-beta.6f366f4b4.tgz#b3ce3d722e6cfa22bc77ac77bcbbb00444b8d901" - integrity sha512-j8M2ge/k19eVZ1/WM3n0cyzlUDQZN2EQRS9OwDw04r3CIprBWWuaLBGqCPjkCuRG3O2FRculA3TqfYOURL3/0A== - dependencies: - "@docusaurus/core" "2.0.0-beta.6f366f4b4" - "@docusaurus/plugin-content-blog" "2.0.0-beta.6f366f4b4" - "@docusaurus/plugin-content-docs" "2.0.0-beta.6f366f4b4" - "@docusaurus/plugin-content-pages" "2.0.0-beta.6f366f4b4" - "@docusaurus/theme-common" "2.0.0-beta.6f366f4b4" - "@docusaurus/types" "2.0.0-beta.6f366f4b4" - "@docusaurus/utils" "2.0.0-beta.6f366f4b4" - "@docusaurus/utils-common" "2.0.0-beta.6f366f4b4" - "@docusaurus/utils-validation" "2.0.0-beta.6f366f4b4" +"@docusaurus/theme-classic@2.0.0-beta.5": + version "2.0.0-beta.5" + resolved "https://registry.yarnpkg.com/@docusaurus/theme-classic/-/theme-classic-2.0.0-beta.5.tgz#1c51cfc953eb7e3e7da8886ab62f99cd2a8cede0" + integrity sha512-AtBifB1mRMI5W0ORlY5M/QEnHUB/wvGLRkLegBbgBAiTy2IGr99GUXRRminQI2AQuFTwYAMLQoSVSeJ0w1q49g== + dependencies: + "@docusaurus/core" "2.0.0-beta.5" + "@docusaurus/plugin-content-blog" "2.0.0-beta.5" + "@docusaurus/plugin-content-docs" "2.0.0-beta.5" + "@docusaurus/plugin-content-pages" "2.0.0-beta.5" + "@docusaurus/theme-common" "2.0.0-beta.5" + "@docusaurus/types" "2.0.0-beta.5" + "@docusaurus/utils" "2.0.0-beta.5" + "@docusaurus/utils-common" "2.0.0-beta.5" + "@docusaurus/utils-validation" "2.0.0-beta.5" "@mdx-js/mdx" "^1.6.21" "@mdx-js/react" "^1.6.21" chalk "^4.1.1" @@ -1424,7 +1426,7 @@ copy-text-to-clipboard "^3.0.1" fs-extra "^10.0.0" globby "^11.0.2" - infima "0.2.0-alpha.27" + infima "0.2.0-alpha.31" lodash "^4.17.20" parse-numeric-range "^1.2.0" postcss "^8.2.15" @@ -1434,38 +1436,40 @@ react-router-dom "^5.2.0" rtlcss "^3.1.2" -"@docusaurus/theme-common@2.0.0-beta.6f366f4b4": - version "2.0.0-beta.6f366f4b4" - resolved "https://registry.yarnpkg.com/@docusaurus/theme-common/-/theme-common-2.0.0-beta.6f366f4b4.tgz#eabb205409dc3df8e0410758bc520c75687a1894" - integrity sha512-9lrNywVBeu112L8tEBd/s8V2mEWYXlH+7rN8BFVdr8SNty7zqUJ7v6ddnK0Jz+/7X0RL0I+sMNy/5hOVEj1LwQ== +"@docusaurus/theme-common@2.0.0-beta.5": + version "2.0.0-beta.5" + resolved "https://registry.yarnpkg.com/@docusaurus/theme-common/-/theme-common-2.0.0-beta.5.tgz#c6376de88bd0ac6f9803da25ab6212d4b5fc3afb" + integrity sha512-6XEM8NzpR2Q42qkhPdI46M/7lLcZcOCgqmQfmj319sGmKkfhPuYPuIUvNqorxldZqLYuV8/9q7WAPjAgj+wawA== dependencies: - "@docusaurus/core" "2.0.0-beta.6f366f4b4" - "@docusaurus/plugin-content-blog" "2.0.0-beta.6f366f4b4" - "@docusaurus/plugin-content-docs" "2.0.0-beta.6f366f4b4" - "@docusaurus/plugin-content-pages" "2.0.0-beta.6f366f4b4" - "@docusaurus/types" "2.0.0-beta.6f366f4b4" + "@docusaurus/core" "2.0.0-beta.5" + "@docusaurus/plugin-content-blog" "2.0.0-beta.5" + "@docusaurus/plugin-content-docs" "2.0.0-beta.5" + "@docusaurus/plugin-content-pages" "2.0.0-beta.5" + "@docusaurus/types" "2.0.0-beta.5" + clsx "^1.1.1" + fs-extra "^10.0.0" tslib "^2.1.0" -"@docusaurus/theme-search-algolia@2.0.0-beta.6f366f4b4": - version "2.0.0-beta.6f366f4b4" - resolved "https://registry.yarnpkg.com/@docusaurus/theme-search-algolia/-/theme-search-algolia-2.0.0-beta.6f366f4b4.tgz#d82c74f898319f9c57a42e836b7ae3c8555755ee" - integrity sha512-CNSfPfR1MgrNTRkZ2zHa+ZOtPL8J3zW5nwYpf7o68jdgOuM6CLJCFnej8M+ePEk0m3vxdqDGXA21OUsQBre2ow== +"@docusaurus/theme-search-algolia@2.0.0-beta.5": + version "2.0.0-beta.5" + resolved "https://registry.yarnpkg.com/@docusaurus/theme-search-algolia/-/theme-search-algolia-2.0.0-beta.5.tgz#889a10e3b849cf3d5a17b3cf735ccdc454a71af6" + integrity sha512-+3XG4SHJ4xukvv/WDKRejf3qSTVa3ufOv6hlZ32H8RAmfJmI/Rmsm/oueB86xBw/OkznIXx6M8HzchfYCHWxSA== dependencies: "@docsearch/react" "^3.0.0-alpha.39" - "@docusaurus/core" "2.0.0-beta.6f366f4b4" - "@docusaurus/theme-common" "2.0.0-beta.6f366f4b4" - "@docusaurus/utils" "2.0.0-beta.6f366f4b4" - "@docusaurus/utils-validation" "2.0.0-beta.6f366f4b4" + "@docusaurus/core" "2.0.0-beta.5" + "@docusaurus/theme-common" "2.0.0-beta.5" + "@docusaurus/utils" "2.0.0-beta.5" + "@docusaurus/utils-validation" "2.0.0-beta.5" algoliasearch "^4.8.4" algoliasearch-helper "^3.3.4" clsx "^1.1.1" eta "^1.12.1" lodash "^4.17.20" -"@docusaurus/types@2.0.0-beta.6f366f4b4": - version "2.0.0-beta.6f366f4b4" - resolved "https://registry.yarnpkg.com/@docusaurus/types/-/types-2.0.0-beta.6f366f4b4.tgz#3b12f183999960eb2d4247fb36f8c20f07cb9701" - integrity sha512-WVHDRfge4YCaPqisseCIUxndXLD0Gh9RYR2vBBEkIM/IzqD/V5o2TlL/XOkpceOstBJ5CTp0sJYaZN8xrKHRRA== +"@docusaurus/types@2.0.0-beta.5": + version "2.0.0-beta.5" + resolved "https://registry.yarnpkg.com/@docusaurus/types/-/types-2.0.0-beta.5.tgz#668ddfaa7f23d74522a58aac99d62436b555fbc6" + integrity sha512-WtwR5O67cTK6wo9KnSxqBpgC26M6Z90PgX5Gun/Re8Ix+GVEqIzzev9C/2P2Da2TW0sgSkjWNr1tHaNxNMPLkQ== dependencies: commander "^5.1.0" joi "^17.4.0" @@ -1473,30 +1477,30 @@ webpack "^5.40.0" webpack-merge "^5.8.0" -"@docusaurus/utils-common@2.0.0-beta.6f366f4b4": - version "2.0.0-beta.6f366f4b4" - resolved "https://registry.yarnpkg.com/@docusaurus/utils-common/-/utils-common-2.0.0-beta.6f366f4b4.tgz#6e01c34ebf72b6bf064c62c3e546ff8c057bfd93" - integrity sha512-d2enfgSpmpbTwoLjZb5TCLJnyQh9jg5QMVikf3Tnhj6elyGY7pYxDYtjc0BJ25CZNPV/6NTRmCrOXNmW1jBX/Q== +"@docusaurus/utils-common@2.0.0-beta.5": + version "2.0.0-beta.5" + resolved "https://registry.yarnpkg.com/@docusaurus/utils-common/-/utils-common-2.0.0-beta.5.tgz#afadd9426372292e0b6d28778613410e3fd58aa4" + integrity sha512-LUHEfZ9QGwBCpmGfLiPz5ENipxicsBlzIu+jUuB6I+ljX4Cd2OFkjDVmL0kjHR80sh0KJzNizpjsVj3l3jN9RA== dependencies: - "@docusaurus/types" "2.0.0-beta.6f366f4b4" + "@docusaurus/types" "2.0.0-beta.5" tslib "^2.2.0" -"@docusaurus/utils-validation@2.0.0-beta.6f366f4b4": - version "2.0.0-beta.6f366f4b4" - resolved "https://registry.yarnpkg.com/@docusaurus/utils-validation/-/utils-validation-2.0.0-beta.6f366f4b4.tgz#34a40a275ff2a4551e10216ebe31b28a5b39503e" - integrity sha512-ryRFs3oGJSIgD0bqllnjO7Q4mogxsgsYBIxx97mqwFTAlszxdwoXqG5Cc7VvEiVMnjN01NIniZtrDlled6VRjw== +"@docusaurus/utils-validation@2.0.0-beta.5": + version "2.0.0-beta.5" + resolved "https://registry.yarnpkg.com/@docusaurus/utils-validation/-/utils-validation-2.0.0-beta.5.tgz#fe7efefdb518bc19fb6cb9c79492bd84cfc4a59a" + integrity sha512-VWj1BRYejcGewWP3BKSm3a5dVzQWA9w9MDQUCylR2NxywOxonoUPo9nz5g9bN+C3rwuelfA5u3MORu2q2+rbLw== dependencies: - "@docusaurus/utils" "2.0.0-beta.6f366f4b4" + "@docusaurus/utils" "2.0.0-beta.5" chalk "^4.1.1" joi "^17.4.0" tslib "^2.1.0" -"@docusaurus/utils@2.0.0-beta.6f366f4b4": - version "2.0.0-beta.6f366f4b4" - resolved "https://registry.yarnpkg.com/@docusaurus/utils/-/utils-2.0.0-beta.6f366f4b4.tgz#922322359154c96b09a4b4fcfd336034598a77a3" - integrity sha512-SaITJ9iSUM/CeuWqEJ0rZ945rr4N9yFPoxE5UxcgBVG/8ZjkQh9N8UoyHB4IW54FNL7hTPlxQAV/+TmqM7w2IA== +"@docusaurus/utils@2.0.0-beta.5": + version "2.0.0-beta.5" + resolved "https://registry.yarnpkg.com/@docusaurus/utils/-/utils-2.0.0-beta.5.tgz#68859f070ca6bf7875f4a4121e314269211a876b" + integrity sha512-hIzuARFMqXqljTdbF19bYRw+fqqK2gHlzepeC9uJfLLaGmirPFDPjr+BN9oiajBhNx2CgvJVl/66lEx4hrd7uQ== dependencies: - "@docusaurus/types" "2.0.0-beta.6f366f4b4" + "@docusaurus/types" "2.0.0-beta.5" "@types/github-slugger" "^1.3.0" chalk "^4.1.1" escape-string-regexp "^4.0.0" @@ -2683,10 +2687,10 @@ clean-css@^4.2.3: dependencies: source-map "~0.6.0" -clean-css@^5.1.2: - version "5.1.2" - resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-5.1.2.tgz#6ea0da7286b4ddc2469a1b776e2461a5007eed54" - integrity sha512-QcaGg9OuMo+0Ds933yLOY+gHPWbxhxqF0HDexmToPf8pczvmvZGYzd+QqWp9/mkucAOKViI+dSFOqoZIvXbeBw== +clean-css@^5.1.5: + version "5.1.5" + resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-5.1.5.tgz#3b0af240dcfc9a3779a08c2332df3ebd4474f232" + integrity sha512-9dr/cU/LjMpU57PXlSvDkVRh0rPxJBXiBtD0+SgYt8ahTCsXtfKjCkNYgIoTC6mBg8CFr5EKhW3DKCaGMUbUfQ== dependencies: source-map "~0.6.0" @@ -4690,10 +4694,10 @@ indent-string@^4.0.0: resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== -infima@0.2.0-alpha.27: - version "0.2.0-alpha.27" - resolved "https://registry.yarnpkg.com/infima/-/infima-0.2.0-alpha.27.tgz#f61bfee412640cebb4c867e11d2e53af4f36f9d5" - integrity sha512-3wzGnP8glFhxCSK0xLMtOoT0M/8fQGScu7yPmgGEMjTdw392GzEwaZW5FOH13z1qC1N57NBia+CVnKKw86kSMg== +infima@0.2.0-alpha.31: + version "0.2.0-alpha.31" + resolved "https://registry.yarnpkg.com/infima/-/infima-0.2.0-alpha.31.tgz#c5b66ef1797551471c49b636d6ed270f981d276e" + integrity sha512-ggOAeyiQIFKZeYnH9lbhDBHFZhcYOa0LFKSMLgot33X21aJRu7ruwVUVwYg4kJnZRLGLeAjC5BVgLxKoLixuNQ== inflight@^1.0.4: version "1.0.6"