Skip to content

Commit

Permalink
Merge branch 'hotfix/2.24.4' into main
Browse files Browse the repository at this point in the history
  • Loading branch information
Lakeyzer committed Apr 27, 2024
2 parents b291ee5 + 6b0271c commit 0ae343f
Show file tree
Hide file tree
Showing 5 changed files with 75 additions and 43 deletions.
32 changes: 16 additions & 16 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"version": "2.24.3",
"version": "2.24.4",
"name": "shieldmaiden",
"description": "A Dungeons and Dragons Combat Tracker",
"productName": "Shieldmaiden",
Expand All @@ -17,12 +17,12 @@
},
"dependencies": {
"@octokit/rest": "^19.0.5",
"@quasar/extras": "^1.16.10",
"@quasar/extras": "^1.16.11",
"ajv": "^8.10.0",
"ajv-formats": "^2.1.1",
"animate.css": "^4.1.1",
"core-js": "^3.36.1",
"axios": "^0.28.0",
"axios": "^0.28.1",
"cors": "^2.8.5",
"dotenv": "^16.4.5",
"firebase": "^8.0.0",
Expand Down
23 changes: 13 additions & 10 deletions src/utils/generalFunctions.js
Original file line number Diff line number Diff line change
Expand Up @@ -189,15 +189,18 @@ export function comparePlayerToCharacter(sync_character, player) {
* @param {string} url
*/
export async function extensionInstalled() {

const sendMessage = new Promise((resolve) => {
chrome?.runtime?.sendMessage(character_sync_id, { request_content: ["version"] }, (response) => {
if (response) {
resolve(response.version);
} else {
return undefined;
chrome?.runtime?.sendMessage(
character_sync_id,
{ request_content: ["version"] },
(response) => {
if (response) {
resolve(response.version);
} else {
return undefined;
}
}
});
);
});
const timeout = new Promise((resolve) => {
setTimeout(resolve, 100, undefined);
Expand All @@ -209,15 +212,15 @@ export async function extensionInstalled() {
* Gets all characters from "D&D Character Sync" Chrome Extension
*/
export async function getCharacterSyncStorage() {
const sendMessage = new Promise((resolve, reject) => {
const sendMessage = new Promise((resolve) => {
chrome?.runtime?.sendMessage(
character_sync_id,
{ request_content: ["characters"] },
(response) => {
if (response && response.characters) {
resolve(response.characters);
} else {
reject("Something went wrong getting data from Character Sync extension.");
resolve({});
}
}
);
Expand Down Expand Up @@ -269,7 +272,7 @@ export function urlType(url) {
}

export function generateYoutubeEmbedUrl(url) {
const regex = /(v=|embed\/|\.be\/|v\/)(?<id>[^&|/?]{11})/i
const regex = /(v=|embed\/|\.be\/|v\/)(?<id>[^&|/?]{11})/i;
const { id } = regex.exec(url).groups;

return `https://www.youtube-nocookie.com/embed/${id}`;
Expand Down
48 changes: 35 additions & 13 deletions src/views/Pages/CharacterSyncPrivacyPolicy.vue
Original file line number Diff line number Diff line change
Expand Up @@ -3,42 +3,64 @@
<h1>Privacy Policy for D&D Character Sync</h1>

<p>
Thank you for using D&D Character Sync! Your privacy is important to us. This Privacy Policy outlines how we collect, use, and safeguard your information when you use our Google Chrome extension.
Thank you for using D&D Character Sync! Your privacy is important to us. This Privacy Policy
outlines how we collect, use, and safeguard your information when you use our Google Chrome
extension.
</p>

<h2>1. Information We Collect</h2>

<ul>
<li><strong>Storage</strong>: We store the D&D character data in the local sync storage so your character data is synced over multiple devices.</li>
<li><strong>ActiveTab</strong>: We check the url of the active tab to determine if a site contains d&d character data.</li>
<li><strong>Scripting</strong>: We execute a script that extracts the D&D character data from the active site.</li>
<li><strong>Tabs</strong>: We check if a tab is updated to provide real-time syncing of character data.</li>
<li><strong>Host permissions</strong>: We use host permissions to limit on which sites we can execute our scripts.</li>
<li>
<strong>Storage</strong>: We store the D&D character data in the local sync storage so your
character data is synced over multiple devices.
</li>
<li>
<strong>ActiveTab</strong>: We check the url of the active tab to determine if a site
contains d&d character data.
</li>
<li>
<strong>Scripting</strong>: We execute a script that extracts the D&D character data from
the active site.
</li>
<li>
<strong>Tabs</strong>: We check if a tab is updated to provide real-time syncing of
character data.
</li>
<li>
<strong>Host permissions</strong>: We use host permissions to limit on which sites we can
execute our scripts.
</li>
</ul>

<h2>2. How We Use Your Information</h2>

<p>
The data stored by D&D Character Sync is used solely to provide and improve the functionality of the extension. We do not collect or store any personally identifiable information about you.
We do not sell, trade, or otherwise transfer your information to third parties.
The data stored by D&D Character Sync is used solely to provide and improve the functionality
of the extension. We do not collect or store any personally identifiable information about
you. We do not sell, trade, or otherwise transfer your information to third parties.
</p>

<h2>3. Changes to This Privacy Policy</h2>

<p>We reserve the right to update or change our Privacy Policy at any time. Any changes to this Privacy Policy will be effective immediately upon posting the updated policy on this page.</p>

<p>
We reserve the right to update or change our Privacy Policy at any time. Any changes to this
Privacy Policy will be effective immediately upon posting the updated policy on this page.
</p>

<h2>4. Contact Us</h2>

<p>
If you have any questions or concerns about this Privacy Policy, please contact us at <a href="mailto:[email protected]">[email protected]</a>.<br/>
If you have any questions or concerns about this Privacy Policy, please contact us at
<a href="mailto:[email protected]">[email protected]</a>.<br />
By using D&D Character Sync, you consent to the terms of this Privacy Policy.
</p>
</div>
</template>

<script>
export default {
name: "PrivacyPolicy",
name: "CharacterSyncPrivacyPolicy",
};
</script>

Expand Down
9 changes: 8 additions & 1 deletion src/views/UserContent/Campaigns/RunCampaign.vue
Original file line number Diff line number Diff line change
Expand Up @@ -276,7 +276,14 @@ export default {
};
},
async mounted() {
this.sync_characters = await getCharacterSyncStorage();
try {
const installed = await extensionInstalled();
if (installed) {
this.sync_characters = await getCharacterSyncStorage();
}
} catch (e) {
// Do nothing
}
await this.get_campaign({
uid: this.user.uid,
id: this.campaignId,
Expand Down

0 comments on commit 0ae343f

Please sign in to comment.