diff --git a/packages/website/terms.html b/packages/website/terms.html new file mode 100644 index 0000000..18d2c9b --- /dev/null +++ b/packages/website/terms.html @@ -0,0 +1,229 @@ +--- +layout: default.html +--- + +

Terms & Conditions

+ +

Last updated: Aug 30, 2023

+ +

+ Web Maker ("us", "we", or "our") operates the https://webmaker.app website + (the "Service"). +

+ +

+ This page informs you of our policies regarding the collection, use, and + disclosure of personal data when you use our Service and the choices you have + associated with that data. +

+ +

+ By using the Service, you agree to the collection and use of information in + accordance with this policy. +

+ +

Information Collection And Use

+ +

+ We collect several different types of information for various purposes to + provide and improve our Service to you. +

+ +

Types of Data Collected

+ +

Personal Data

+ +

+ Only when choose to login to our Service, we may ask you to provide us with + certain personally identifiable information that can be used to contact or + identify you ("Personal Data"). Personally identifiable information may + include, but is not limited to: +

+ + + +

Usage Data

+ +

+ We may also collect anonymous information (non identifiable) how the Service + is accessed and used ("Usage Data"). This Usage Data may include information + such as your computer's Internet Protocol address (e.g. IP address), browser + type, browser version, the pages of our Service that you visit, the time and + date of your visit, the time spent on those pages, unique device identifiers + and other diagnostic data. +

+ +

Use of Data

+ +

Web Maker uses the collected data for various purposes:

+ + +

Transfer Of Data

+

+ Your information, including Personal Data, may be transferred to — and + maintained on — computers located outside of your state, province, country or + other governmental jurisdiction where the data protection laws may differ than + those from your jurisdiction. +

+

+ Your consent to this Privacy Policy followed by your submission of such + information represents your agreement to that transfer. +

+

+ Web Maker will take all steps reasonably necessary to ensure that your data is + treated securely and in accordance with this Privacy Policy and no transfer of + your Personal Data will take place to an organization or a country unless + there are adequate controls in place including the security of your data and + other personal information. +

+ +

Disclosure Of Data

+ +

Legal Requirements

+

+ Web Maker may disclose your Personal Data in the good faith belief that such + action is necessary to: +

+ + +

Security Of Data

+

+ The security of your data is important to us, but remember that no method of + transmission over the Internet, or method of electronic storage is 100% + secure. We strive to use commercially acceptable means to protect your + Personal Data. The Service works over encrypted Secure Socket Layer (SSL) + technology. +

+ +

Service Providers

+

+ We may employ third party companies and individuals to facilitate our Service + ("Service Providers"), to provide the Service on our behalf, to perform + Service-related services or to assist us in analyzing how our Service is used. +

+

+ These third parties have access to your Personal Data only to perform these + tasks on our behalf and are obligated not to disclose or use it for any other + purpose. +

+ +

Analytics

+

+ We may use third-party Service Providers to monitor and analyze the use of our + Service. +

+ + +

Links To Other Sites

+

+ Our Service may contain links to other sites that are not operated by us. If + you click on a third party link, you will be directed to that third party's + site. We strongly advise you to review the Privacy Policy of every site you + visit. +

+

+ We have no control over and assume no responsibility for the content, privacy + policies or practices of any third party sites or services. +

+ +

Children's Privacy

+

Our Service does not address anyone under the age of 13 ("Children").

+

+ We do not knowingly collect personally identifiable information from anyone + under the age of 13. If you are a parent or guardian and you are aware that + your Children has provided us with Personal Data, please contact us. If we + become aware that we have collected Personal Data from children without + verification of parental consent, we take steps to remove that information + from our servers. +

+ +

Refunds & Cancellations

+

+ All fees are inclusive of taxes, according to the geo-location from where you + make the purchase. +

+

+ You have the right to cancel your plan and downgrade at any moment, which gets + effective from next billing cycle. +

+

+ If you are not happy with the service, you can request for a full refund + within 15 days. No questions asked! +

+

+ Downgrading from a paid plan to a free plan can lead to loss of content, + features, or capacity of your account. Web Maker does not accept any liability + for such loss. +

+ +

Changes To This Privacy Policy

+

+ We may update our Privacy Policy from time to time. We will notify you of any + changes by posting the new Privacy Policy on this page. +

+

+ We will let you know via email and/or a prominent notice on our Service, prior + to the change becoming effective and update the "effective date" at the top of + this Privacy Policy. +

+

+ You are advised to review this Privacy Policy periodically for any changes. + Changes to this Privacy Policy are effective when they are posted on this + page. +

+ +

Contact Us

+

If you have any questions about this Privacy Policy, please contact us:

+ diff --git a/src/components/app.jsx b/src/components/app.jsx index c77d598..e0fa96e 100644 --- a/src/components/app.jsx +++ b/src/components/app.jsx @@ -83,6 +83,8 @@ const version = '5.0.3'; // Read forced settings as query parameters window.forcedSettings = {}; +window.codeHtml = ''; +window.codeCss = ''; if (location.search) { let match = location.search.replace(/^\?/, '').match(/settings=([^=]*)/); if (match) { @@ -94,6 +96,10 @@ if (location.search) { window.forcedSettings[pair[0]] = pair[1]; }); } + + const params = new URLSearchParams(location.search); + window.codeHtml = params.get('html') || ''; + window.codeCss = params.get('css') || ''; } export default class App extends Component { @@ -124,7 +130,9 @@ export default class App extends Component { prefs: {}, currentItem: { title: '', - externalLibs: { js: '', css: '' } + externalLibs: { js: '', css: '' }, + html: window.codeHtml, + css: window.codeCss }, catalogs: {}, user: savedUser @@ -228,11 +236,18 @@ export default class App extends Component { } } ); + // Get synced `preserveLastCode` setting to get back last code (or not). db.getSettings(this.defaultSettings).then(result => { - if (result.preserveLastCode && lastCode) { + if (window.codeHtml || window.codeCss) { + log('Load item from query params', lastCode); + this.prettifyHandler('html'); + this.prettifyHandler('css'); + this.setCurrentItem(this.state.currentItem).then(() => { + this.refreshEditor(); + }); + } else if (result.preserveLastCode && lastCode) { this.setState({ unsavedEditCount: 0 }); - log('Load last unsaved item', lastCode); this.setCurrentItem(lastCode).then(() => this.refreshEditor()); } else {