Skip to content

Commit

Permalink
Feature/investor section/draft/0 (#1918)
Browse files Browse the repository at this point in the history
* chore(husky): initialize

adding husky used for forcing conventional commits format

* chore(makefile): add misc. targets

add miscellenous target for mac-os target used for *_. files cleaning;

* chore(makefile): add setup target

add setup target for quicker project spin-up and development;

* chore(makefile): add misc. targets

add miscellenous target for MAKE target to signal completion;

* chore(changelog): initialize

add changelog support for the project.

* docs(code-style): initialize

add code-style.md for developer guideline on code structure, format and expectation;

* docs(filesystem): initialize

add filesystem.md for developer guideline on project/filesystem used;

* chore(makefile): update heroku, dotenv, git

update targets for heroku (most) including secrets update (heroku-dev), targets for git (most)
including git-commit and git-setup, targets for dotenv-vault support (init);

* docs(_stash): rename README-DEV.md

name change for README-DEV.md to _stash.md, containing stashed link resources used and encountered
through the development of this project.

* chore(prettier): delete

remove use of prettier from the project, unecessary opiniated code styling enforcing when project
uses its own styles enforced with eslint.

* chore(eslint): initialize

add EsLint for project, including package.json and `.vscode/settings.json` update for `auto-fix` on
save EsLint detected issues.

* docs(readme.md): update

adding project badges

* chore(git): update .gitignore

add comments, update targets to ignore;

* chore(docker): update .dockerignore

updated for dotenv support;

* chore(custom-server): move and upgrade to TypeScript

changing the initial location for the custom-server files running under-the-hood for sveltekit into
`server/`

* chore(boilerplate): add v7.Widget.svelte

add the latest v7.Widget.svelte boilerplate template;

* chore(dotenv): add .env.vault

initialize the use of the .env.vault for the project powered by dotenv;

* docs: update documentations

adding documentation such as: `dependencies.md`, `errors.md`, `filesystem.md`, `setup.md` and
`structure.md` related to the project.

* docs(readme.md): update

updated README.md and split sections into separate docs/ files, and keep README.md as short and
information rich as possible.

* chore(git): update .gitignore

add to include the .env.example as part of git;

* chore(makefile): update targets

update make target fos (1) development (local) to include (dotenv), (2) heroku (prod) secrets
target, (3) dotenv cleaning, as well as minor documentation patch up;

* build(package.json): init dotenv

add dotenv-vault support for secrets decrypting on the fly;

* docs(.env.example): init

initialize example for secrets.

* chore(dotenv): update .env.vault

update to inlcude development;

* build(package-lock.json): update

bring up to speed

* chore(makefile): update targets

correcting some incorrect targets for heroku deployments;

* docs: update documentations

modified documentations for (1) `code-style.md`, (2) `setup.md` for more concise setup;

* docs(changelog): initialize

add CHANGELOG.md

* chore(makefile): update targets

updated Makefile targets for (1) heroku, merging the targets into dynamic argument accepting
targets, (2) dotenv (same as for heroku), (3) git, correct to use git-stash on pull-request update,
(4) miscellaneous, changelog-init target for CHANGELOG.md generation, + other minor changes; other
documentation changes made also.

* feat(invest-box): init Main-InvestBox.svelte

initialize Main-InvestBox.svelte which contains the logic for the official InvestBox widget located
on the profile page.

feat #1834

* feat(investor-title): init Main-Investor-Title.svelte

initialize Main-Investor-Title.svelte which contains the logic for the official Investor Title
widget located on the profile page.

feat #1834

* feat(investor): init assets

initialize assets, ie: .svg, .png, required for the investor profile section.

feat #1834

* feat(investor-box): init Smart-Contract ABI's

initialize Smart-Contract ABI's for (1) BetarenaBank, (2) USDC-Polygon-Mirror, (3)
USDT-Polygon-Mirror. Necessary for interaction with the target Smart-Contract.

feat #1834

* feat(investor-terms-cond): init Model-TermsAndConditions.svelte

initialize Model-TermsAndConditions.svelte (skeleton) + sessionStore logic ready for use.

feat #1834

* feat(investor-terms-cond): update Header.svelte

add UI check for showTermsAndConditions variable tiggered from profile page.

feat #1834

* build(investor-box): update package(s)

add (1) @web3modal/ethers5@3.3.2, (2) ethers@5.7.2

feat #1834

* refactor(filesystem): update +page.svelte -> Layout.svelte

abstracting the +page.svelte (profile) to be in a Layout.svelte, to follow outlined filesystem
structure.

* feat(investor): update multiple files for Investor support

updated (1) Layout.svelte, (2) Widget-MenuOpt-Row.svelte, (3) Widget-MenuOpt.svelte for Investor
(section/tab) support + navigation;

feat #1834

* feat(investor): init Widget-Investor.svelte

initialize Widget-Investor.svelte to be the main (parent) for the investor (profile) view.

feat #1834

* refactor(platform-functions): add common logic shortenWeb3WalletAddress(..)

added a common recurring logic for shortening wed3 addresses throughtout the Scores Platform as
`0x212...12312`;

* feat(investor-box): add assets

add missing search.svg asset

feat #1834

* chore(app.css): update global styles

add new .btn-dark (+dark-mode)

* build(scores-lib): update @betarena/scores-lib to 1.9.11

update @betarena/scores-lib to 1.9.11 as part of the investor (profile) + invest-box (widget)
platform enhancements;

* chore(google-hack): update app.html (app.css) styles

add latest version of app.css styles to app.html;

* fix(investor-box): update USDT (ABI) to correct

incorrect USDT (ABI) reference file

fix #1834

* fix(investor-box): fix issue 1,4 (local)

apply fix to know issue 1,4 (local) from respective `ISSUE-LOG.md`; Fix involved adding
`type=button` to form elements to prevent `submit` event trigger;

fix #1834

* fix(investor-box): fix issue 3 (local)

apply fix to know issue 3 (local) from respective `ISSUE-LOG.md`; Fix involved updating logic for
(1) checking existing `signer` and (2) resetting `deposit` action after completion;

fix #1834

* feat(api/coinmarketcap): init api/coinmarketcap (+server.ts)

initialize api/coinmarketcap (+server.ts) endpoint (essentially middleware) to align with imposed
CORS configuration.

fix #1841;

* fix(investor-box): fix coinmarketcap endpoint

update (1) use of new coinmarketcap data endpoint, (2) data fallback via null-checks, (3) rounding
add.

fix #1841;

* fix(investor-box): update Main-InvestBox.svelte

apply fixes to Main-InvestBox.svelte regarding style/UI. Add necessary, complementary assets. Update
documentation/comments.

fix #1842, fix #1846, fix #1847.

* fix(profile/investor): update investor section

update (1) profile/Layout.svelte, (2) Main-Investor-Title.svelte, (3) +layout.svelte to fix issues
regarding 'top' height spacing, as well as, styling/UI for investor (profile) section;

fix #1848, fix #1845.

* refactor(profile/layout): apply v6 (file structrue)

add project v6 (file structure) to profile/Layout.svelte.

* chore(app.css): update app.css

add new (1) buttons (+dark-theme) (+variations), (2) fonts.

* refactor(google-hack): update all-css-chunk.css

bump all-css-chunk.css to latest version (stable), needed for GoogleHack approach.

* refactor(google-hack): update app.html

update app.html head (CSS) for GoogleHack approach to work correctly.

* fix(investor-box): update Main-InvestBox.svelte

apply fix for (1) real-time CoinMarketCap target selected token, (2) calculate user token amount
using USD exhange conversion.

fix #1841;

* chore(platform-functions.ts): update functions

update toDecimalFix(..) function to allow for default (removeData00) argument acceptance, allowing
to disable the `.00` removal from number-string (clean).

* fix(investor-box): update Main-InvestBox.svelte

apply fix for Main-InvestBox.svelte regarding invalid input values when placeholder is active, and
defaulting to `0` instead of `null`/`undefined`.

fix #1851;

* fix(investor-box): update Main-InvestBox.svelte

apply fix for Main-InvestBox.svelte regarding incorrect decimal input for either `deposit` or
`recieve` amount submission.

fix #1852;

* fix(investor-box): update Main-InvestBox.svelte

apply fix for Main-InvestBox.svelte regarding invorrect `BTA` calculation, and correct discount tier
factoring-in. Also, slight correction for case of `null` for `depositAmount` correction from
previous issue.

fix #1841; fix #1851;

* feat(investor-box): update Main-InvestBox.svelte

add the ability to `hide` the `InvestBox > Current Discount` information, when the `Discount` is not
applicable.

feat #1834;

* fix(investor-box): update Main-InvestBox.svelte

apply fix for Main-InvestBox.svelte regarding network switching promts to user to make suen their
correct blockchain is selected.

fix #1843;

* fix(investor-box): update Main-InvestBox.svelte

apply fix for Main-InvestBox.svelte regarding incomplete discount tier display, with respect to
BTA/USD conversion, and update calculation based on BTA/USD pair.

fix #1841;

* docs(makefile): update Makefile targets

update Makefile targets for (1) logging, (2) ONESHELL use, (3) node-setup, (4) nvm-use

* chore(.nvmrc): init .nvmrc

initialize .nvmrc for correct node expected version

* feat(main-round.svelte): initialize investor/Main-Round.svelte

First commit regarding Main-Round.svelte for the profile section (stable).

feat #1832;

* chore(eslint): update EsLint.yaml

Clean up comments. Add icon_ ignore import names. Ignore svelte/complier errors, due to the obscene
number of a11y- svelte errors/warnings.

* chore(tsconfig): update tsconfig.json

Clean up comments. Rearranged properties. Added strictNullChecks.

* feat(invest-box): new child component

Add new child component: Modal-Tx-State.svelte to Main-InvestBox.svelte as part of further
enhancement of respective widget for transaction state feedback to user.

feat #1834

* refactor(invest-box): simplify variable declaration

Update variable declaration for target supported ERC-20 contract address.

* feat(invest-box): new enhancement

Add new function to fetch target (address) wallet for target (address) token balance, as part of as
part of further enhancement.

feat #1834

* refactor(invest-box): modularize/clean methods + crypto price update

Update widget for use of functions instead of declaration inside initial (lifecycle) onMount forming
a cleaner logic. Update cryptoPrice veriable conditions fallbacks.

* fix(invest-box): recieved amount formula

Add correction for amount of recieved amount of BTA formula calculation.

fix #1841

* fix(invest-box): current round data

Add correction for target current_round data retrieval. Used for correct transaction execution set
as description.

fix #1869

* refactor(invest-box): miscellenous changes

Correct styles. Add missing imports.

* feat(investor-section): new component addition

Add (widget) Rounds to Profile/Investor section. Update (styles) CSS.

feat #1832

* refactor(invest-box): apply reactivity logic surgical control

Add deep reactivity listen to target respective condition, handling out-of-control situations.

* refactor(invest-rounds): update CSS styles

Add styles for CSS dark theme.

feat #1832

* refactor(invest-box): add fallback variable

Update user balance to a default/fallback value.

* fix(invest-box): checkbox; units;

Corrections regarding terms and conditions. Update value units.

fix #1864

* fix(invest-box/tx-modal): cross browser styles compatability

Update correct use of CSS styles to support Firefox.

fix #1867

* fix(invest-box): correct units

Add use of 2 decimal places for user balance display of target token.

fix #1865

* fix(investor-title): correct data point use

Update to use correct designated data point.

fix #1862

* fix(invest-rounds): manual data point use for round progress

Update to use correct designated data point.

fix #1868

* refactor(invest-round): update CSS styles

Add correct styles for CSS dark theme. Update further styles.

* refactor(invest-round): update HTML layout

Shift HTML layout to inline with design.

* fix(invest-box): correct CSS; update fallbacks; simplify states;

Update for correct CSS styles for target texts. Update to use correct fallback data. Remove
unecessary extra states of widget, for simplification.

fix #1863

* fix(invest-box): correct CSS

Update for correct CSS of the CTA button shadows.

fix #1872

* refactor(invest-box/tx-modal): correct importing

Update to use correct imports.

* refactor(invest-round): correct responsiveness CSS styles

Add use of correct responsive CSS design as per design layout. Add common device check
identification logic.

* fix(profile): correct CSS;

Update for correct CSS in invest-round, and profile menu-options row.

fix #1873

* docs(invest-round): update js-doc's

Add correct, clear information for target variables, types, interfaces for completeness.

* fix(splash-screen): revert back

Add back splash screen to tackle both the loading flicker (theme change), and correct website UI
flow. Initialliy disabled and forgotten about due to the GoogleHack adjust. Updated Splash-Screen to
v6 boilerplate.

fix #1859

* feat(invest-box/terms-modal): correct data use

Add correct data that is expected to be used by component.

feat #1834

* chore(styles-snapshot): update project styles GoogleHack

Generate new snapshot of project styles as part of the Google Hack approach workflow.

* fix(invest-box): correct checkbox CSS

Adding correct CSS styling for checkbox of Terms And Conditions.

fix #1875

* fix(invest-round): correct widget states

Update for correct logic of the target possible widget states.

fix #1863

* fix(invest-round): correct widget states

Update for the correct logic of the possible target states, adding support for days in countdown.
Update types for variables.

fix #1863

* build(scores-lib): update to 1.9.12

Upgrade @betarena/scores-lib package to 1.9.12 version.

* fix(invest-round): correct CSS

Adjust font weight.

fix #1873

* fix(invest-box): correct modal CSS

Update z-index positioning for modal state show affecting platform UI.

fix #1876

* fix(invest-box): correct walletconnect modal CSS UI

Update z-index positioning for modal state show affecting platform UI.

fix #1876

* refactor(invest-box): obliterate event listeners logic

Update logic to clean event listeners for existing Web3 WalletConnect.V2 modal onDestroy (svelte)
lifecycle stage.

* fix(invest-box): correct font CSS

Update font to match design color

fix #1873

* fix(invest-round): correct widget states

Update for the correct logic of the possible target states.

fix #1876

* fix(invest-round): correct widget states

Revert + patch previously implemented widget states update solution, which caused interference with
the overall platform data parsing leading to i.e: home page not loading.

fix #1876

* fix(invest-box): correct units

Update to use USD instead of (dollar sign) $ for minimum deposit amount.

fix #1873

* fix(invest-round): update modal design for error state

Add new provided design for Transaction Progress/State by adding 'error' condition.

fix #1867

* fix(invest-round): correct units

Update to use USD instead of (dollar sign) $ for minimum deposit amount (continued).

fix #1873

* refactor(change-paths): update docker directory

Move project docker files to a new directory.

* refactor(change-paths): update docs directory

(1) Move project documentation files to a new directory. (2) Rename respective files. (3) Update
core.code-style.md for the latest version.

* refactor(husky): apply branch name validation

Extend husky to validate for branch name on an attempt to 'pre-commit' and 'post-checkout' alert.
Configured via package.json via an npm dependency.

* refactor(huksy): update commitlint config

Simplify commitlint config file by moving to package.json declaration.

* refactor(change-paths): update boilerplate directory

(1) Move project boilerplate files to a new directory. (2) Rename respective files for newer format.
(3) Update Boilerplate.Widget.svelte for the latest version.

* refactor(change-paths): update openapi directory

Move project openapi.yaml to a new directory.

* chore(makefile): update targets; add targets; update comments;

(1) Update targets that use 'npx' to skip installation promot (skip-step). (2) Update section
comments style that of the latest core.code-style.md write-up. (3) Add new targets regarding
node_modules 'destroy' & 'regeneration'. (4) New heroku target version rollback select.

* chore(eslint): update comments; update config;

(1) Update comments for latest/clearer format. (2) Extend further ignorePatters, globals and rules.

* build(vite): update comments;

Update for use of latest/clearer comment format.

* docs(app.html): update documentation/comments;

Update section comments style that of the latest core.code-style.md write-up.

* chore(vscode-snippets): update snippets;

(1) Update snippets for correct/respective scope. (2) Use of latest snippets in adherence to latest
.templates/* declaration. (3) Latest file structure format.

* feat(invest-box): mobile web3 deep linking setup

Add support for redirecting user to MetaMask Browser for invest/deposit continue

fix #1870

* refactor(global-styles): new styles; SCSS init;

(1) Update styles for global coverage. (2) Initialize use of SCSS for project.

* feat(invest-faq): initialize

First commit regarding investor/faq for the profile section (stable) and its child components.

feat #1878

* refactor(invest-box/terms-modal): add SCSS; correct styles;

(1) Add use of SCSS as new default styling. (2) Apply minor corrections to styles. (3) Instant use
of SCSS inheritance for more cleaner styling solution.

fix #1883

* refactor(invest-box): update comments; add execution delay; update debug;

(1) Update comments for better understanding. (2) Apply an execution delay for mitigating issues
with slow Web3 responses. (3) Update debug logs.

* refactor(auth): apply latest boilerplate Svelte project format

(1) Apply latest boilerplate Svelte format. (2) Update comments/docs. (3) Code clean and
restructure. (4) Apply SCSS.

* feat(auth): referral implementation

Add support for cookie-based platform referrals.

feat #1836

* refactor(invest-faq/row): apply latest boilerplate Svelte project format

(1) Apply latest boilerplate Svelte format. (2) Update comments/docs. (3) Code clean and
restructure.

* refactor(invest-faq): apply latest boilerplate Svelte project format

(1) Apply latest boilerplate Svelte format. (2) Update comments/docs. (3) Code clean and
restructure.

* fix(invest-box): mobile web3 deep linkning (cont)

(1) Further enhance deep linkning web3 mobile experience for user amount deposit input carry-over.
(2) Correct mobile web3 browser logic error.

fix #1870

* fix(invest-faq): correct CSS

Apply correct CSS for mobile spacing

fix #1880

* refactor(types): update local types

(1) Update local project types to new naming. (2) Correct (inline) EsLint code format after auto-fix
(after 'save').

* refactor(invest-box): apply latest boilerplate Svelte project format

(1) Apply latest boilerplate Svelte format. (2) Update comments/docs. (3) Code clean and
restructure.

* refactor(investor-title): apply latest boilerplate Svelte project format

(1) Apply latest boilerplate Svelte format. (2) Update comments/docs. (3) Code clean and
restructure.

* refactor(invest-box/terms-modal): apply latest boilerplate Svelte project format

(1) Apply latest boilerplate Svelte format. (2) Update comments/docs. (3) Code clean and
restructure.

* fix(invest-faq): correct CSS; other corrections;

(1) Update styles (SCSS) for correct pixel perfect structure. (2) Add correct link to FAQ. (3) Add
fade in effect for row expand.

fix #1878

* fix(investor-section): correct CSS layout

(1) Update CSS layout to a correct spacing.

fix #1878

* fix(invest-box/terms-modal): correct CSS

Update correct CSS for font-size of target text.

fix #1883

* fix(investor-title): correct CSS

Update correct CSS for font-size of target text.

fix #1880

* refactor(investor-section): apply latest boilerplate Svelte project format

(1) Apply latest boilerplate Svelte format. (2) Update comments/docs. (3) Code clean and
restructure.

* refactor(invest-round/tx-modal): apply latest boilerplate Svelte project format

(1) Apply latest boilerplate Svelte format. (2) Update comments/docs. (3) Code clean and
restructure.

* refactor(invest-round): apply latest boilerplate Svelte project format

(1) Apply latest boilerplate Svelte format. (2) Update comments/docs. (3) Code clean and
restructure.

* fix(invest-round): correct translations (+fallback)

Apply correct translations to target widget.

fix #1885

* fix(invest-box): correct translations (+fallback)

Apply correct translations to target widget.

fix #1885

* fix(profile-menu-opts/row): correct translations (+fallback)

Apply correct translations to target widget.

fix #1885

* fix(invest-box/terms-modal): correct theme-respective assets use; asset position;

(1) Apply correct theme assets. (2) Correct close icon position CSS.

fix #1883

* fix(invest-faq): correct translations (+fallback)

Apply correct translations to target widget.

fix #1885

* fix(invest-faq): correct CSS; misc. adjustments;

(1) Apply correct CSS spacing. (2) Adjust parent widget SCSS for cleaner format. (3) Adjust global
parent cascading SCSS. (4) Enhance widget with latest responvise code logic.

fix #1880; fix #1878;

* fix(invest-round/tx-modal): correct CSS theme styles

Update CSS theme colors and styles.

fix #1887

* fix(invest-round): correct data update logic

Update data logic for translations refresh.

fix #1885

* fix(invest-box): correct invalid text

Remove redundant use of incorrect text.

fix #1880

* fix(invest-faq): correct CSS; EsLint adjust;

(1) Add CSS corrections regarding spacing. (2) EsLint auto-fixes applied. (3) Responsive design
adjust.

fix #1880

* fix(investor-title): correct CSS

Adjust CSS spacing and position styles.

fix #1880

* fix(invest-box): correct modal CSS

Update z-index positioning for modal state show affecting platform UI.

fix #1887

* fix(invest-box): correct translation use

Apply correct translation term.

fix #1880

* refactor(app.html): adjust head element

Comment out all declared GoogleHack CSS styles (a.k.a disable). Using standard approach instead.

* build(package-lock): update devDependencies

Update for devDependencies regarding validate-branch-name.

* feat(invest-history): initialize widget

(1) First commit regarding Investor Section for Investment History widget. Includes children component(s).
(2) (rewrite) corrections to dark theme widget UI.
(3) (rewrite) general CSS corrections.
(4) (rewrite) add correct data point and it's sources.
(5) (rewrite) further minor corrections.

feat #1894

* feat(invest-tier-pricing): initialize widget

(1) First commit regarding Investor Section for Investment Tier Pricing.
(2) (rewrite) CSS corrections and CSS format.

feat #1889

* feat(investor-wallets): initialize widget

(1) First commit regarding Investor Section for Investment Wallets.
(2) (rewrite) corrections to dark theme widget UI.
(3) (rewrite) general CSS corrections.
(4) (rewrite) add correct data point and it's sources.
(5) (rewrite) new widget modal invite assets.
(6) (rewrite) use of platform session for modal toggle, thus cleaning past local component logic.
(7) (rewrite) correct close icon position.

feat #1897

* feat(investor-tge): initialize widget

(1) First commit regarding Investor Section for Investment TGE.
(2) (rewrite) add countown logic, supporting variables, support data.
(3) (rewrite) update CSS + dark theme.

feat #1893

* feat(investor-referrals-info): initialize widget

(1) First commit regarding Investor Section for Investment Referral Info. Including child components
(2) (rewrite) corrections to dark theme widget UI.
(3) (rewrite) general CSS corrections.
(4) (rewrite) add correct data point and it's sources.
(5) (rewrite) new widget modal invite assets.
(6) (rewrite) use of platform session for modal toggle, thus cleaning past local component logic.
(7) (rewrite) correct close icon position.

feat #1900

* feat(investor-referrals-bonus): initialize widget

(1) First commit regarding Investor Section for Investment Referral Bonus Summary.
(2) (rewrite) update CSS dark theme. Plus, general CSS patch up and format code.

feat #1900

* feat(investor-referrals-steps): initialize widget

(1) First commit regarding Investor Section for Investment Referral Steps.
(2) (rewrite) dark theme CSS correction.
(3) (rewrite) misc. correction(s) regarding comments, html classes.

feat #1900

* feat(investor-referrals-history): initialize widget

(1) First commit regarding Investor Section for Investment Referral History.
(2) (rewrite) break down component to include a Row (child).
(3) (rewrite) apply 'no-data' status message.
(4) (rewrite) CSS dark theme, CSS styles/UI update, CSS classes correct in HTML code.
(5) (rewrite) table header logic initialize. Plus, addition of reactive listen for changes in parent (export) device target change.
(6) (rewrite) first new dates method for generating a dd/MM/yy string.

feat #1900

* feat(investor-referrals-vesting-periods): initialize widget

(1) First commit regarding Investor Section for Investment Referral Vesting Period.
(2) (rewrite) new component (child) for vesting period table row.
(3) (rewrite) CSS dark-theme fixes, CSS general fixes.

feat #1900

* feat(investor-promotion-video): initialize iframe video

Add iframe for video promotion of the investor section.

feat #1886

* feat(investor-layout): update corrections

(1) Correcting CSS styles.
(2) Updating format of code that to latest.
(3) Adding JS responsive
logic.
(4) Completing Investor section with respective layout and correct sub-titles for section.
(5) Update comments.
(6) (rewrite) correct CSS.

* build(scores-lib): update version

Update project backbone @betarena/scores-lib version, and project changes that come with its update.

* feat(investor-section): wave of fixes and single chunk commit

Fixes related to investor profile section.

* chore(invest-box): patch up issue

* chore(invest-round): patch up issue cause by merger

* chore(test): commit investor-box

tese

* chore(invest-box =): testing

testing

* feat(scss): first commit regarding SASS addition

Migration of current state of project use of CSS to SASS. This has been
a necessary change in the project structure, and has already been
started to be applied in latest widgets. This first (official) commit
marks the complete migration to SASS. This change gives rise to better
CSS  (compiled/generated) declaration and more logical control over the
projects CSS styles and structrue.

* docs(.eslint.yaml): update comments;

* chore(makefile): restructure

- No new Makefile Targets, but some renaming of existing targets done.
- Includes respective update to package.json > scripts.
- Added support for Windows based systems use of Makefile.
- Extensive added documentation and clean up of log messages.

* docs(project): main CORE project documentation
update

- Contains a restructure for CORE project doumcentation, providing more
clarity to documentation sqeuence to follow.
- In depth description of the CORE project steps, written in a clear and
easy to understand manner.

* docs(.vscode): update respective

- udpate informative comments.
- update snippets.

* refactor(template): delete unecessary file

- Removal of existing template for +server.ts file as it has been
migrated elsewhere (.docs/.templates).

* refactor(vite.config.ts): update debug logs

- Add @betarena/scores-lib to logging compilation time.

* feat(investor-wallet): initialize

- First commit regarding Investor Wallet GUI (stable) state.
- Addition of Investor Wallet GUI widget to Investor section.

feat #1890

* fix(invest-tier-pricing): animation patch

- apply correction/update to animation to kickstart depending on scroll action.

fix #1889

* fix(investor-wallets): text corrections

- Formatting numbers to separate thousands. Logic offset to global functions.
- Removal of 'at' from target text.

fix #1911

* chore(eslint): auto-fix

- auto-fix corrections on 'save' imposed by eslint.

* fix(investor-wallets): logic patch

- Apply logic patch to showing more wallets only when that is the case.

fix #1897

* fix(scss): sass migration continued

- Continued migration to SASS. Apply dark-theme font colors logic.

* fix(investor-widgets): translation + css
corrections

- Contains corrections for 3 similar widget components for the
respective translations. Also, patch up incorrect CSS.

fix #1894
fix #1898
fix #1900 (partial)

* fix(referrals): corrections css/sass

- apply spacing, font corrections.
- contains a logic data update.

fix #1900

* fix(invest-box): correct CSS

- Fix incorrect border-radius, due to parent added container. As well
as, invalid background color and spacing.

fix #1903

* fix(investor-history): correct translation

- Apply correct new added translation.

fix #1899

* fix(invest-box): update walletconnect connection

- Update walletconnect to use official Betarena project.

fix #1884

* chore(dotenv): update secrets

- Update to correct .env.valut secrets use.

* fix(invest-box): update contract address

- Update target BetarenaBank contrat to use official production-ready contract.

fix #1884

* build(scores-lib): update to 1.11.0-alpha.2

* fix(investor-wallets): calculation logic correction

- Apply correct calculation logic to investor-wallet amount.
- Miscellenous fix regarding removal of 'dev' hard-coded value used in testing.

fix #1890

* fix(functions): correct use dot value

- Update global number thousands separator formatter to use 'dot' instead of 'comma'.

fix #1911

* fix(investor-tier-pricing): update animation logic

- Apply delay for component drawing only when the HTML element has
already mounted, post in-view scroll trigger.

fix #1889

* fix(investor-referrals-steps): correct alignment layout

- Apply correct alignment as per set out design.

fix #1900

* fix(invest-box): merge correction

- (likely merge error, working before) Apply correction for invest-box trigger submit button.
  • Loading branch information
migbash authored Jan 26, 2024
1 parent 6a5ba19 commit 398b0b8
Show file tree
Hide file tree
Showing 160 changed files with 33,812 additions and 7,143 deletions.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Binary file added .docs/.assets/git-workflow.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added .docs/.assets/overview.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## About
# 📦 Dependencies

**This section** explores the dependencies and technologies used in the project. In addition, further explanaition into the reasons behind the chosen technologies used and why potential alternatives did not work/were taken into account.

Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
270 changes: 270 additions & 0 deletions .docs/.templates/Boilerplate.Widget.svelte
Original file line number Diff line number Diff line change
@@ -0,0 +1,270 @@
<!--
╭────────────────────────────────────────────────────────────────────────╮
│ NOTE: │
│ This is a 'boilerplate' example for a .svelte component, │
│ used by Betarena | Scores. │
│ It acts as a guidance on internal development standards and │
│ code style used throughout this project. │
│ NOTE: | IMPORTANT │
│ Use _this_ Boilerplate / Template when creating your next Svelte │
│ Component of Type Widget. │
│ NOTE: | IMPORTANT │
│ ❗️ Please Remove _this_ comment after adding this to a target file. │
╰────────────────────────────────────────────────────────────────────────╯
-->

<!--
╭──────────────────────────────────────────────────────────────────────────────────╮
│ Svelte Component JS/TS │
┣──────────────────────────────────────────────────────────────────────────────────┫
│ - access custom Betarena Scores JS VScode Snippets by typing 'script...' │
╰──────────────────────────────────────────────────────────────────────────────────╯
-->

<script lang="ts">
// IMPORTANT
// @ts-nocheck
// #region ➤ 📦 Package Imports
// ╭────────────────────────────────────────────────────────────────────────╮
// │ NOTE: │
// │ Please add inside 'this' region the 'imports' that are required │
// │ by 'this' .svelte file is ran. │
// │ IMPORTANT │
// │ Please, structure the imports as follows: │
// │ 1. svelte/sveltekit imports │
// │ 2. project-internal files and logic │
// │ 3. component import(s) │
// │ 4. assets import(s) │
// │ 5. type(s) imports(s) │
// ╰────────────────────────────────────────────────────────────────────────╯
import { browser } from '$app/environment';
import { onMount } from 'svelte';
// import { <custom/node-modules> } from [..]
// import <component> [..]
// import type [..];
// ▓▓ NOTE: || WARNING:
// ▓▓ Disable, if Dynamic Import is Enabled.
// import FeatBetSiteMain from './FeatBetSite-Main.svelte';
// #endregion ➤ 📦 Package Imports
// #region ➤ 📌 VARIABLES
// ╭────────────────────────────────────────────────────────────────────────╮
// │ NOTE: │
// │ Please add inside 'this' region the 'variables' that are to be │
// │ and are expected to be used by 'this' .svelte file / component. │
// │ IMPORTANT │
// │ Please, structure the imports as follows: │
// │ 1. export const / let [..] │
// │ 2. const [..] │
// │ 3. let [..] │
// │ 4. $: [..] │
// ╰────────────────────────────────────────────────────────────────────────╯
const
/** @description 📣 `this` component **main** `id` and `data-testid` prefix. */
// eslint-disable-next-line no-unused-vars
CNAME: string = 'profile⮕w⮕investfaq⮕main'
/** @description 📣 threshold start + state for 📱 MOBILE */
// eslint-disable-next-line no-unused-vars
, VIEWPORT_MOBILE_INIT: [ number, boolean ] = [ 575, true ]
/** @description 📣 threshold start + state for 💻 TABLET */
// eslint-disable-next-line no-unused-vars
, VIEWPORT_TABLET_INIT: [ number, boolean ] = [ 1160, true ]
/** @description 📣 (widget) dynamic import variable condition */
, useDynamicImport: boolean = true
;
let
/** @description 📣 (widget) translations data */
widgetDataTranslation: B_COMP_MAIN_T,
/** @description 📣 (widget) translations (SEO) data */
widgetDataSeo: B_COMP_MAIN_S,
/** @description 📣 (widget) main data */
widgetDataMain: B_COMP_HIGH_D,
/** @description 📣 (widget) wether widget has or no data */
widgetNoData: boolean = true,
/** @description 📣 (widget) dynamic import variable for svelte component [1] */
MainMainAsDynamic: any
;
// $: widgetDataTranslation = $page.data?.B_COMP_MAIN_T;
// $: widgetDataSeo = $page.data?.B_COMP_MAIN_S;
// $: WIDGET_TITLE = widgetDataTranslation?.translations?.widget_title ?? translationObject?.featured_bet_site;
// #endregion ➤ 📌 VARIABLES
// #region ➤ 🛠️ METHODS
// ╭────────────────────────────────────────────────────────────────────────╮
// │ NOTE: │
// │ Please add inside 'this' region the 'methods' that are to be │
// │ and are expected to be used by 'this' .svelte file / component. │
// │ IMPORTANT │
// │ Please, structure the imports as follows: │
// │ 1. function (..) │
// │ 2. async function (..) │
// ╰────────────────────────────────────────────────────────────────────────╯
/**
* @author
* @migbash
* @summary
* 🟩 MAIN
* @description
* 📌 main widget data loader
* - ⚡️ (and) try..catch (error) handler
* - ⚡️ (and) placeholder handler
* @returns { Promise < void > }
*/
async function widgetInit
(
): Promise < void >
{
// ▓▓ IMPORTANT
if (!browser) return;
// ▓▓ NOTE:
// ▓▓ sometimes, the data/component is loaded too fast,
// ▓▓ so a buffer is added to slow down the pace and show the
// ▓▓ preloader to the user.
// await sleep(3000);
const response = await get
(
`<-target-data-endpoint-goes-here->`
) as '<-add-custom-type-here->';
widgetDataMain = response;
// ▓▓ CHECK
// ▓▓ for conditions when 'this' widget should not be shown.
const if_M_0: boolean =
widgetDataMain == null
;
if (if_M_0)
{
// dlog(`${LV2_W_H_TAG[0]} ❌ no data available!`);
widgetNoData = true;
return;
}
widgetNoData = false;
return;
}
// #endregion ➤ 🛠️ METHODS
// #region ➤ 🔄 LIFECYCLE [SVELTE]
// ╭────────────────────────────────────────────────────────────────────────╮
// │ NOTE: │
// │ Please add inside 'this' region the 'logic' that should run │
// │ immediately and as part of the 'lifecycle' of svelteJs, │
// │ as soon as 'this' .svelte file is ran. │
// ╰────────────────────────────────────────────────────────────────────────╯
onMount
(
async (
): Promise < void > =>
{
// ▓▓ CHECK
// ▓▓ for loading widget dynamically.
if (useDynamicImport)
{
// MainMainAsDynamic = (await import('./Main-Main.svelte')).default;
}
}
);
// #endregion ➤ 🔄 LIFECYCLE [SVELTE]
</script>

<!--
╭──────────────────────────────────────────────────────────────────────────────────╮
│ Svelte Component HTML │
┣──────────────────────────────────────────────────────────────────────────────────┫
│ - use 'Ctrl+Space' to autocomplete global class="(cursor)" styles │
│ - access custom Betarena Scores VScode Snippets by typing emmet-like abbrev. │
╰──────────────────────────────────────────────────────────────────────────────────╯
-->

<SeoBox>
<!--
SEO CONTENT GOES HERE
-->
</SeoBox>

<!--
[🐞]
-->
<!-- <MainLoader /> -->

{#await widgetInit()}
<!--
╭────────────────────────────────────────────────────────────────────────╮
│ NOTE :|: promise is pending │
╰────────────────────────────────────────────────────────────────────────╯
-->
<MainLoader />

{:then data}
<!--
╭────────────────────────────────────────────────────────────────────────╮
│ NOTE :|: promise is fulfilled │
╰────────────────────────────────────────────────────────────────────────╯
-->

<!--
╭────────────────────────────────────────────────────────────────────────╮
│ NOTE: │
│ Dynamic Svelte Component Import [optional] │
│ WARNING: │
│ Disable (this), if Standard (below) Import is Enabled. │
╰────────────────────────────────────────────────────────────────────────╯
-->
<svelte:component
this={MainMainAsDynamic}
WIDGET_DATA={widgetDataMain}
/>
<!--
<FeatBetSiteMain
B_FEATB_T={widgetDataTranslation}
/>
-->

{:catch error}
<!--
╭────────────────────────────────────────────────────────────────────────╮
│ NOTE :|: promise is rejected │
╰────────────────────────────────────────────────────────────────────────╯
-->

{/await}

<!--
╭──────────────────────────────────────────────────────────────────────────────────╮
│ Svelte Component CSS/SCSS │
┣──────────────────────────────────────────────────────────────────────────────────┫
│ - auto-fill/auto-complete iniside <style> for var() values by typing/CTRL+SPACE │
│ - access custom Betarena Scores CSS VScode Snippets by typing 'style...' │
╰──────────────────────────────────────────────────────────────────────────────────╯
-->

<style lang="scss">
</style>
13 changes: 13 additions & 0 deletions .docs/core.0.introduction.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# 📌 Introduction

Welcome to `Betarena Scores Platform` development setup.

Please take the time to read through the provided material, in particular those numbered, such as: `core.<number>`, starting from `core.0` and working your way up.

Other documentation is _optional_, but nonetheless recommended.

## 🗺 Overview

Below is a graphical representation of the project in its most up-to-date state for better understanding of key features and architectural structure implied:

![Alt text](.assets/overview.png)
Loading

0 comments on commit 398b0b8

Please sign in to comment.