add flag for logging a contribution as a trade
This commit is contained in:
@@ -38,6 +38,8 @@ If you are deploying in a subdirectory, add it to `publicPath` in vue.config.js,
|
|||||||
|
|
||||||
... to copy the contents of the `sw_scripts` folder to the `dist` folder - except additional_scripts.js.
|
... to copy the contents of the `sw_scripts` folder to the `dist` folder - except additional_scripts.js.
|
||||||
|
|
||||||
|
* Get on the server and back up the time-safari folder.
|
||||||
|
|
||||||
* `rsync -azvu -e "ssh -i ~/.ssh/..." dist ubuntutest@test.timesafari.app:time-safari`
|
* `rsync -azvu -e "ssh -i ~/.ssh/..." dist ubuntutest@test.timesafari.app:time-safari`
|
||||||
|
|
||||||
* Revert src/constants/app.ts and package.json (if that was prod), edit package.json to increment version & add "-beta", `npm install`, and commit. Also record what version is on production.
|
* Revert src/constants/app.ts and package.json (if that was prod), edit package.json to increment version & add "-beta", `npm install`, and commit. Also record what version is on production.
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "TimeSafari_Test",
|
"name": "TimeSafari_Test",
|
||||||
"version": "0.2.2",
|
"version": "0.2.3-beta",
|
||||||
"private": true,
|
"private": true,
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"serve": "vue-cli-service serve",
|
"serve": "vue-cli-service serve",
|
||||||
|
|||||||
@@ -1,19 +1,30 @@
|
|||||||
|
|
||||||
tasks:
|
tasks:
|
||||||
|
|
||||||
|
- record donations vs gives
|
||||||
|
- in mobile - change give & fulfills to array of objects?
|
||||||
|
- migrate all existing records to gifts (after clients send DonateAction)
|
||||||
|
- update docs
|
||||||
|
|
||||||
- show VC details... somehow:
|
- show VC details... somehow:
|
||||||
|
- add VC confirmation - BVC may have an org page
|
||||||
- 01 show my VCs - most interesting, or via search
|
- 01 show my VCs - most interesting, or via search
|
||||||
- 04 allow user to download chains of VCs, mine + ones I can see about me from others
|
- 04 allow user to download chains of VCs, mine + ones I can see about me from others
|
||||||
- add VC confirmation
|
|
||||||
|
- on gives feed - link to project
|
||||||
|
- show feed of offers, new projects, etc -- maybe limited to my search area
|
||||||
|
|
||||||
|
- revenue
|
||||||
|
|
||||||
- copy button for seed
|
- copy button for seed
|
||||||
- .5 If notifications are not enabled, add message to front page with link/button to enable
|
- .5 If notifications are not enabled, add message to front page with link/button to enable
|
||||||
- record donations vs gives
|
|
||||||
- make server endpoint for full English description of limits
|
- make server endpoint for full English description of limits
|
||||||
- make identicons for contacts into more-memorable faces (and maybe change project identicons, too)
|
- make identicons for contacts into more-memorable faces (and maybe change project identicons, too)
|
||||||
- create a help-desk document & add screenshots
|
- create a help-desk document & add screenshots
|
||||||
|
|
||||||
- 01 server - show all claim details when issued by the issuer
|
- 01 server - show all claim details when issued by the issuer
|
||||||
|
- .1 update "offer" units to have same functionality as "give" units
|
||||||
|
- on home page, prompt for install check in addition to "supports notifications" check (since they won't get notified if Chrome is closed)
|
||||||
- 01 on Mac (& Windows?) desktop, add a help blurb so that they can find it again (since it doesn't show in Application list)
|
- 01 on Mac (& Windows?) desktop, add a help blurb so that they can find it again (since it doesn't show in Application list)
|
||||||
- bug - got error adding on Firefox user #0 as contact for themselves
|
- bug - got error adding on Firefox user #0 as contact for themselves
|
||||||
- bug (that is hard to reproduce) - back-and-forth on discovery & project pages led to "You need an identity to load your projects." error on product page when I had an identity
|
- bug (that is hard to reproduce) - back-and-forth on discovery & project pages led to "You need an identity to load your projects." error on product page when I had an identity
|
||||||
@@ -21,12 +32,10 @@ tasks:
|
|||||||
- bug (that is hard to reproduce) - on the second 'give' recorded on prod it showed me as the agent
|
- bug (that is hard to reproduce) - on the second 'give' recorded on prod it showed me as the agent
|
||||||
- 01 send visibility signal as a VC and store it
|
- 01 send visibility signal as a VC and store it
|
||||||
- 04 remove 'rowid' references (that are sqlite-specific); may involve server
|
- 04 remove 'rowid' references (that are sqlite-specific); may involve server
|
||||||
- 04 look at other examples for better UI friend.tech
|
- 04 look at other examples for better UI, eg friend.tech
|
||||||
- 01 make the prod build copy the sw_scripts
|
- .5 Add inactive flag / end date, start date to project
|
||||||
- .5 Add start date to project
|
|
||||||
- .3 check that Android shows "back" buttons on screens without bottom tray
|
- .3 check that Android shows "back" buttons on screens without bottom tray
|
||||||
- .1 Make give description text box into something that expands as they type?
|
- .1 Make give description text box into something that expands as they type?
|
||||||
- .5 customize favicon assignee-group:ui
|
|
||||||
- .2 Show a warning if both giver and recipient are the same (but still allow?)
|
- .2 Show a warning if both giver and recipient are the same (but still allow?)
|
||||||
- 01 Would it look better to shrink the buttons on many pages so they don't expand to the width of the screen? assignee-group:ui
|
- 01 Would it look better to shrink the buttons on many pages so they don't expand to the width of the screen? assignee-group:ui
|
||||||
- .5 Display a more appealing confirmation on the map when erasing the marker
|
- .5 Display a more appealing confirmation on the map when erasing the marker
|
||||||
@@ -34,11 +43,11 @@ tasks:
|
|||||||
- switch some checks for activeDid to check for isRegistered
|
- switch some checks for activeDid to check for isRegistered
|
||||||
- .2 in SeedBackupView, don't load the mnemonic and keep it in memory; only load it when they click "show"
|
- .2 in SeedBackupView, don't load the mnemonic and keep it in memory; only load it when they click "show"
|
||||||
- .5 fix cert generation on server (since it didn't happen automatically for Nov 30)
|
- .5 fix cert generation on server (since it didn't happen automatically for Nov 30)
|
||||||
|
- .1 remove 2 second setTimeout in NewEditProjectView.vue
|
||||||
- warn if they're using the web (android only?)
|
- warn if they're using the web (android only?)
|
||||||
https://developer.mozilla.org/en-US/docs/Web/API/Navigator/getInstalledRelatedApps
|
https://developer.mozilla.org/en-US/docs/Web/API/Navigator/getInstalledRelatedApps
|
||||||
https://web.dev/articles/get-installed-related-apps
|
https://web.dev/articles/get-installed-related-apps
|
||||||
|
- .5 fix masked icon (because some of the top-right of the binoculars is cut off)
|
||||||
- 04 fix lack of initial notification in Firefox (on MacOS, maybe others)
|
|
||||||
|
|
||||||
- contacts v+ :
|
- contacts v+ :
|
||||||
- 01 Import all the non-sensitive data (ie. contacts & settings).
|
- 01 Import all the non-sensitive data (ie. contacts & settings).
|
||||||
|
|||||||
@@ -36,9 +36,15 @@
|
|||||||
<fa icon="chevron-right" />
|
<fa icon="chevron-right" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="showGivenToUser" class="mt-2 text-right">
|
<div class="mt-2 text-right">
|
||||||
<input type="checkbox" class="mr-2" v-model="givenToUser" />
|
<span v-if="showGivenToUser" class="mt-2 mr-16">
|
||||||
<label class="text-sm">Given to you</label>
|
<input type="checkbox" class="mr-2" v-model="givenToUser" />
|
||||||
|
<label class="text-sm">Given to you</label>
|
||||||
|
</span>
|
||||||
|
<span class="mt-2">
|
||||||
|
<input type="checkbox" class="mr-2" v-model="isTrade" />
|
||||||
|
<label class="text-sm">Trade (not a gift)</label>
|
||||||
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<p class="text-center mb-2 mt-6 italic">
|
<p class="text-center mb-2 mt-6 italic">
|
||||||
Sign & Send to publish to the world
|
Sign & Send to publish to the world
|
||||||
@@ -88,6 +94,7 @@ export default class GiftedDialog extends Vue {
|
|||||||
giver?: GiverInputInfo; // undefined means no identified giver agent
|
giver?: GiverInputInfo; // undefined means no identified giver agent
|
||||||
description = "";
|
description = "";
|
||||||
givenToUser = false;
|
givenToUser = false;
|
||||||
|
isTrade = false;
|
||||||
unitCode = "HUR";
|
unitCode = "HUR";
|
||||||
visible = false;
|
visible = false;
|
||||||
|
|
||||||
@@ -264,6 +271,7 @@ export default class GiftedDialog extends Vue {
|
|||||||
amountInput,
|
amountInput,
|
||||||
unitCode,
|
unitCode,
|
||||||
this.projectId,
|
this.projectId,
|
||||||
|
this.isTrade,
|
||||||
);
|
);
|
||||||
|
|
||||||
if (
|
if (
|
||||||
@@ -287,7 +295,7 @@ export default class GiftedDialog extends Vue {
|
|||||||
group: "alert",
|
group: "alert",
|
||||||
type: "success",
|
type: "success",
|
||||||
title: "Success",
|
title: "Success",
|
||||||
text: "That gift was recorded.",
|
text: `That ${this.isTrade ? "trade" : "gift"} was recorded.`,
|
||||||
},
|
},
|
||||||
7000,
|
7000,
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -88,7 +88,7 @@ export interface GiveVerifiableCredential {
|
|||||||
"@type": "GiveAction";
|
"@type": "GiveAction";
|
||||||
agent?: { identifier: string };
|
agent?: { identifier: string };
|
||||||
description?: string;
|
description?: string;
|
||||||
fulfills?: { "@type": string; identifier?: string; lastClaimId?: string };
|
fulfills?: { "@type": string; identifier?: string; lastClaimId?: string }[];
|
||||||
identifier?: string;
|
identifier?: string;
|
||||||
object?: { amountOfThisGood: number; unitCode: string };
|
object?: { amountOfThisGood: number; unitCode: string };
|
||||||
recipient?: { identifier: string };
|
recipient?: { identifier: string };
|
||||||
@@ -312,6 +312,7 @@ export async function createAndSubmitGive(
|
|||||||
hours?: number,
|
hours?: number,
|
||||||
unitCode?: string,
|
unitCode?: string,
|
||||||
fulfillsProjectHandleId?: string,
|
fulfillsProjectHandleId?: string,
|
||||||
|
isTrade: boolean = false,
|
||||||
): Promise<CreateAndSubmitClaimResult> {
|
): Promise<CreateAndSubmitClaimResult> {
|
||||||
const vcClaim: GiveVerifiableCredential = {
|
const vcClaim: GiveVerifiableCredential = {
|
||||||
"@context": "https://schema.org",
|
"@context": "https://schema.org",
|
||||||
@@ -322,10 +323,16 @@ export async function createAndSubmitGive(
|
|||||||
object: hours
|
object: hours
|
||||||
? { amountOfThisGood: hours, unitCode: unitCode || "HUR" }
|
? { amountOfThisGood: hours, unitCode: unitCode || "HUR" }
|
||||||
: undefined,
|
: undefined,
|
||||||
fulfills: fulfillsProjectHandleId
|
fulfills: [{ "@type": isTrade ? "TradeAction" : "DonateAction" }],
|
||||||
? { "@type": "PlanAction", identifier: fulfillsProjectHandleId }
|
|
||||||
: undefined,
|
|
||||||
};
|
};
|
||||||
|
if (fulfillsProjectHandleId) {
|
||||||
|
vcClaim.fulfills = vcClaim.fulfills || []; // weird that it won't typecheck without this
|
||||||
|
vcClaim.fulfills.push({
|
||||||
|
"@type": "PlanAction",
|
||||||
|
identifier: fulfillsProjectHandleId,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
console.log("createAndSubmitGive vcClaim", vcClaim);
|
||||||
return createAndSubmitClaim(
|
return createAndSubmitClaim(
|
||||||
vcClaim as GenericServerRecord,
|
vcClaim as GenericServerRecord,
|
||||||
identity,
|
identity,
|
||||||
|
|||||||
@@ -385,7 +385,9 @@ export default class HomeView extends Vue {
|
|||||||
public async retrieveGives(endorserApiServer: string, beforeId?: string) {
|
public async retrieveGives(endorserApiServer: string, beforeId?: string) {
|
||||||
const beforeQuery = beforeId == null ? "" : "&beforeId=" + beforeId;
|
const beforeQuery = beforeId == null ? "" : "&beforeId=" + beforeId;
|
||||||
const response = await fetch(
|
const response = await fetch(
|
||||||
endorserApiServer + "/api/v2/report/gives?" + beforeQuery,
|
endorserApiServer +
|
||||||
|
"/api/v2/report/gives?giftNotTrade=true&" +
|
||||||
|
beforeQuery,
|
||||||
{
|
{
|
||||||
method: "GET",
|
method: "GET",
|
||||||
headers: await this.buildHeaders(),
|
headers: await this.buildHeaders(),
|
||||||
|
|||||||
@@ -162,7 +162,7 @@
|
|||||||
</h3>
|
</h3>
|
||||||
|
|
||||||
<div v-if="offersToThis.length === 0">
|
<div v-if="offersToThis.length === 0">
|
||||||
(None yet. Record one above.)
|
(None yet. Wanna offer something if others join you?)
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<ul v-else class="text-sm border-t border-slate-300">
|
<ul v-else class="text-sm border-t border-slate-300">
|
||||||
@@ -197,7 +197,9 @@
|
|||||||
<div class="bg-slate-100 px-4 py-3 rounded-md">
|
<div class="bg-slate-100 px-4 py-3 rounded-md">
|
||||||
<h3 class="text-sm uppercase font-semibold mb-3">Given To This Idea</h3>
|
<h3 class="text-sm uppercase font-semibold mb-3">Given To This Idea</h3>
|
||||||
|
|
||||||
<div v-if="givesToThis.length === 0">(None yet. Record one above.)</div>
|
<div v-if="givesToThis.length === 0">
|
||||||
|
(None yet. You can be the first.)
|
||||||
|
</div>
|
||||||
|
|
||||||
<ul v-else class="text-sm border-t border-slate-300">
|
<ul v-else class="text-sm border-t border-slate-300">
|
||||||
<li
|
<li
|
||||||
|
|||||||
Reference in New Issue
Block a user