forked from jsnbuchanan/crowd-funder-for-time-pwa
test: enhance deep link testing with real JWT examples
Changes: - Add real JWT example for invite testing - Add detailed JWT payload documentation - Update test-deeplinks.sh with valid claim IDs - Add test case for single contact invite - Improve test descriptions and organization This improves test coverage by using real-world JWT examples and valid claim identifiers.
This commit is contained in:
@@ -285,7 +285,7 @@
|
||||
<ul v-else class="text-sm border-t border-slate-300">
|
||||
<li
|
||||
v-for="offer in offersToThis"
|
||||
:key="offer.id"
|
||||
:key="offer.jwtId"
|
||||
class="py-1.5 border-b border-slate-300"
|
||||
>
|
||||
<div class="flex justify-between gap-4">
|
||||
@@ -365,7 +365,7 @@
|
||||
<ul v-else class="text-sm border-t border-slate-300">
|
||||
<li
|
||||
v-for="give in givesToThis"
|
||||
:key="give.id"
|
||||
:key="give.jwtId"
|
||||
class="py-1.5 border-b border-slate-300"
|
||||
>
|
||||
<div class="flex justify-between gap-4">
|
||||
@@ -461,7 +461,7 @@
|
||||
<ul v-else class="text-sm border-t border-slate-300">
|
||||
<li
|
||||
v-for="give in givesProvidedByThis"
|
||||
:key="give.id"
|
||||
:key="give.jwtId"
|
||||
class="py-1.5 border-b border-slate-300"
|
||||
>
|
||||
<div class="flex justify-between gap-4">
|
||||
@@ -571,30 +571,31 @@ import HiddenDidDialog from "../components/HiddenDidDialog.vue";
|
||||
/**
|
||||
* Project View Component
|
||||
* @author Matthew Raymer
|
||||
*
|
||||
* This component displays detailed project information and manages interactions including:
|
||||
*
|
||||
* This component displays and manages detailed project information. It handles:
|
||||
* - Project loading and display from URL-encoded project handles
|
||||
* - Project metadata (name, description, dates, location)
|
||||
* - Issuer information and verification
|
||||
* - Project contributions and fulfillments
|
||||
* - Offers and gifts tracking
|
||||
* - Contact interactions
|
||||
*
|
||||
*
|
||||
* Data Flow:
|
||||
* 1. Component loads with project ID from route
|
||||
* 2. Fetches project data, contacts, and account settings
|
||||
* 3. Loads related data (offers, gifts, fulfillments)
|
||||
* 4. Updates UI with paginated results
|
||||
*
|
||||
*
|
||||
* Security Features:
|
||||
* - DID visibility controls
|
||||
* - JWT validation for imports
|
||||
* - Permission checks for actions
|
||||
*
|
||||
*
|
||||
* State Management:
|
||||
* - Maintains separate loading states for different data types
|
||||
* - Handles pagination limits
|
||||
* - Tracks confirmation states
|
||||
*
|
||||
*
|
||||
* @see GiftedDialog for gift creation
|
||||
* @see OfferDialog for offer creation
|
||||
* @see HiddenDidDialog for DID privacy explanations
|
||||
@@ -698,13 +699,13 @@ export default class ProjectViewView extends Vue {
|
||||
|
||||
/**
|
||||
* Component lifecycle hook that initializes the project view
|
||||
*
|
||||
*
|
||||
* Workflow:
|
||||
* 1. Loads account settings and contacts
|
||||
* 2. Retrieves all account DIDs
|
||||
* 3. Extracts project ID from URL
|
||||
* 4. Initializes project data loading
|
||||
*
|
||||
*
|
||||
* @throws Logs errors but continues loading
|
||||
* @emits Notification on profile loading errors
|
||||
*/
|
||||
@@ -743,12 +744,12 @@ export default class ProjectViewView extends Vue {
|
||||
|
||||
/**
|
||||
* Loads project data and related information
|
||||
*
|
||||
*
|
||||
* Workflow:
|
||||
* 1. Fetches project details from API
|
||||
* 2. Updates component state with project data
|
||||
* 3. Initializes related data loading (gifts, offers, fulfillments)
|
||||
*
|
||||
*
|
||||
* @param projectId Project handle ID
|
||||
* @param userDid Active user's DID
|
||||
* @throws Logs errors and notifies user
|
||||
@@ -842,10 +843,10 @@ export default class ProjectViewView extends Vue {
|
||||
|
||||
/**
|
||||
* Loads gifts made to this project
|
||||
*
|
||||
*
|
||||
* Handles pagination and updates component state with results.
|
||||
* Uses beforeId for pagination based on last loaded gift.
|
||||
*
|
||||
*
|
||||
* @throws Logs errors and notifies user
|
||||
* @emits Notification on loading errors
|
||||
*/
|
||||
@@ -898,10 +899,10 @@ export default class ProjectViewView extends Vue {
|
||||
|
||||
/**
|
||||
* Loads gifts provided by this project
|
||||
*
|
||||
*
|
||||
* Similar to loadGives but for outgoing gifts.
|
||||
* Maintains separate pagination state.
|
||||
*
|
||||
*
|
||||
* @throws Logs errors and notifies user
|
||||
* @emits Notification on loading errors
|
||||
*/
|
||||
@@ -957,10 +958,10 @@ export default class ProjectViewView extends Vue {
|
||||
|
||||
/**
|
||||
* Loads offers made to this project
|
||||
*
|
||||
*
|
||||
* Handles pagination and filtering of valid offers.
|
||||
* Updates component state with results.
|
||||
*
|
||||
*
|
||||
* @throws Logs errors and notifies user
|
||||
* @emits Notification on loading errors
|
||||
*/
|
||||
@@ -1013,9 +1014,9 @@ export default class ProjectViewView extends Vue {
|
||||
|
||||
/**
|
||||
* Loads projects that fulfill this project
|
||||
*
|
||||
*
|
||||
* Manages pagination state and updates component with results.
|
||||
*
|
||||
*
|
||||
* @throws Logs errors and notifies user
|
||||
* @emits Notification on loading errors
|
||||
*/
|
||||
@@ -1069,9 +1070,9 @@ export default class ProjectViewView extends Vue {
|
||||
|
||||
/**
|
||||
* Loads project that this project fulfills
|
||||
*
|
||||
*
|
||||
* Updates fulfilledByThis state with result.
|
||||
*
|
||||
*
|
||||
* @throws Logs errors and notifies user
|
||||
* @emits Notification on loading errors
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user