Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(): native component testing with spectron 🚀 #544

Open
wants to merge 983 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
983 commits
Select commit Hold shift + click to select a range
e9a729b
fix(purchaseEstimate): roundboi'd gas estimate
MarkGeeRomano Jan 11, 2019
2c81746
feat(): Update rewards dcdn
ijl0322 Jan 14, 2019
0b493ae
feat(): Proper signing and fix windows analytics sanitization
ijl0322 Jan 14, 2019
702e416
feat(): backup eth faucy
MarkGeeRomano Jan 11, 2019
a652e3f
refactor(main.js): added helper files
MarkGeeRomano Jan 14, 2019
49f19be
refactor: Menu and tray items (#377)
ijl0322 Jan 15, 2019
13c4692
refactor(): removed unused styles
MarkGeeRomano Jan 15, 2019
d8c9608
cache
MarkGeeRomano Jan 15, 2019
a8e7dbe
feat(): hamby navigation on filemanager
MarkGeeRomano Jan 16, 2019
6f1fe29
fix(): working header hamby
cckelly Jan 17, 2019
3f47958
fix(): working logout button on main hamby
MarkGeeRomano Jan 17, 2019
193dc4d
fix(): changed casing of paths for linux
cckelly Jan 17, 2019
cd7a85d
feat(manageFile): fixed drag and drop issue
cckelly Jan 17, 2019
5f25c91
chore(package.json): pupgraded afs & act
MarkGeeRomano Jan 22, 2019
d5e00b7
feat(): autopupdater logic for macos
MarkGeeRomano Jan 14, 2019
110d17f
refactor(): updated modal styles
MarkGeeRomano Jan 23, 2019
f7277c1
feat(): squirrel logic for windows
cckelly Jan 23, 2019
adc1c0f
style(publishedStats): added conditional opacity to ara img
MarkGeeRomano Jan 24, 2019
896480c
style(hamburger): left aligned text
MarkGeeRomano Jan 24, 2019
bafafc4
refactor(checkbox): removed state
MarkGeeRomano Jan 24, 2019
bd50a66
feat(itemRow): caching compys :money_with_wings:
MarkGeeRomano Jan 25, 2019
4bc66f6
chore(): updated act, afs, added [email protected]
MarkGeeRomano Jan 29, 2019
34fedf7
refactor(): changed url for ara faucet
MarkGeeRomano Jan 29, 2019
b5ed6e1
fix(): added sign to prod build mac
MarkGeeRomano Jan 29, 2019
aefd731
added installer asset
MarkGeeRomano Jan 29, 2019
497f647
chore(package.json): updated reward dcdn
MarkGeeRomano Jan 29, 2019
99a9a1a
fix(): reading metadata properly
MarkGeeRomano Jan 29, 2019
f748a60
fix(): reading metadata properly
MarkGeeRomano Jan 29, 2019
c7df7b7
a
cckelly Jan 29, 2019
62dfc1e
merged
cckelly Jan 30, 2019
55e03be
fix(afsFileRow.js):added no-drag to context menu
cckelly Jan 30, 2019
d369401
refactor(): undid json check for meta
cckelly Jan 30, 2019
5bab8c2
fix(): prevents clicking export mult afs
MarkGeeRomano Jan 30, 2019
f6d9b52
fix(): checks to see if argv[1] is deeplink
MarkGeeRomano Jan 30, 2019
48040f5
refactor(winstaller): changed icons
cckelly Jan 30, 2019
9d6decd
fix(): prod windows build points to prod icon instead of dev
cckelly Jan 30, 2019
1ccd765
chore(release): 0.5.0 :tada:
MarkGeeRomano Jan 30, 2019
e5ec34d
fix(): stringifies meta
MarkGeeRomano Jan 30, 2019
5f3387b
fix(): stringifies meta
MarkGeeRomano Jan 30, 2019
ef2485c
fix(): defined debug in squirrel
MarkGeeRomano Jan 30, 2019
6a6186f
Merge branch 'master' of github.com:littlstar/ara-file-manager
MarkGeeRomano Jan 30, 2019
6aa2620
fix(squirrel): removed dialog squirrel err
MarkGeeRomano Jan 30, 2019
e1e9103
Merge branch 'dev' of github.com:littlstar/ara-file-manager into dev
MarkGeeRomano Jan 31, 2019
08b0a95
fix(): defined debug in squirrel
MarkGeeRomano Jan 30, 2019
61275f1
fix(squirrel): removed dialog squirrel err
MarkGeeRomano Jan 30, 2019
088fbde
refactor(squirrel): dialog->modal for updates
MarkGeeRomano Jan 31, 2019
c2ff969
cleanup
MarkGeeRomano Feb 4, 2019
adbf846
chore(release): 0.5.1 :tada:
MarkGeeRomano Feb 4, 2019
02a4bf7
new line in gitignore
MarkGeeRomano Feb 6, 2019
398afaf
feat(): workig autoupdate windows
MarkGeeRomano Feb 6, 2019
3448e76
cleanup
MarkGeeRomano Feb 6, 2019
6e8b450
Merge branch 'dev' of github.com:littlstar/ara-file-manager into dev
MarkGeeRomano Feb 6, 2019
3497bc0
fix(): Stops double stringify, read accounts for sing and dbl stringify
MarkGeeRomano Feb 7, 2019
22611ed
test(constants/urls.js): Update SQUIRREL_MAC
vipyne Feb 8, 2019
26651d3
chore(release): 0.5.2 :tada:
vipyne Feb 8, 2019
f8fc10e
chore(BUILD.md): docs around building the app
MarkGeeRomano Feb 6, 2019
7061a9c
chore(release): 0.6.0 :tada:
MarkGeeRomano Feb 8, 2019
f385972
feat(constants/urls.js): PUPDATER.ARA.ONE
vipyne Feb 8, 2019
2719f2d
Merge pull request #417 from littlstar/vp-pupdater-url
vipyne Feb 8, 2019
c1e1785
chore(.github): Add COMMIT_FORMAT_EXAMPLES.md
vipyne Feb 8, 2019
a37feb5
chore(release): 0.6.1 :tada:
vipyne Feb 8, 2019
07172cc
feat(): context-menu for main view
vipyne Feb 4, 2019
873f82d
smol
MarkGeeRomano Feb 8, 2019
c383d92
chore(release): 0.6.2 :tada:
MarkGeeRomano Feb 8, 2019
239ec16
fix(): hot reloading + filedescriptor updates
MarkGeeRomano Feb 10, 2019
5ed6f17
fix(): hot reloading + filedescriptor updates
MarkGeeRomano Feb 10, 2019
6844057
smol
MarkGeeRomano Feb 11, 2019
a4efdb9
chore(release): 0.6.3 :tada:
vipyne Feb 12, 2019
9c9b36d
fix(readFileMetadata): Read and write afs metadata; TODO: figure out …
vipyne Feb 12, 2019
4d4cc7f
pr comments
vipyne Feb 12, 2019
08fea46
chore(release): 0.6.4 :tada:
vipyne Feb 12, 2019
e8a1230
feat(tray.js): windows version of tray icon
MarkGeeRomano Feb 12, 2019
e3675ac
chore(release): 0.6.5 :tada:
vipyne Feb 12, 2019
5f4b2cf
feat(kernel/*): Add peer count to purchase estimate
vipyne Jan 25, 2019
eb93e56
feat(browser/views/purchaseEstimate): Add peer count
vipyne Jan 28, 2019
b576be8
pr notes and prepping
vipyne Feb 11, 2019
618f864
fix(~/purchase.js): Comment out dryRunJoin until rDCDN supports
vipyne Feb 11, 2019
1a12c69
last notes
vipyne Feb 12, 2019
acc4928
chore(): top of file linting
vipyne Feb 12, 2019
803a590
refactor(~/purchase.js): Add try await catch
vipyne Feb 12, 2019
d37be86
chore(release): 0.7.0 :tada:
vipyne Feb 12, 2019
633df45
fix(~/download.js): Require order
vipyne Feb 12, 2019
7b23265
chore(release): 0.8.0 :tada:
vipyne Feb 12, 2019
db2347f
refactor(squirrel.js): removed modal for update
MarkGeeRomano Feb 12, 2019
d453dc5
chore(release): 0.8.1 :tada:
MarkGeeRomano Feb 12, 2019
dfe225d
style(purchaseEstimate): fixed overflow
MarkGeeRomano Feb 12, 2019
03d1f55
fix(): corrected sp & removed prebuilds (#435)
MarkGeeRomano Feb 12, 2019
48cfea0
chore(): rm stricties, rm doubl \\n
MarkGeeRomano Feb 13, 2019
0589250
feat(): creates aid immediately
MarkGeeRomano Feb 13, 2019
cfd0a54
chore(package.json): Bump ara-reward-dcdn
vipyne Feb 13, 2019
bcde4a2
refactor(~purchaseEstimate.js): Add no peers warning
vipyne Feb 13, 2019
486ddfd
chore(lsWindowManager.js): Purchase Estimate modal larger for peer wa…
vipyne Feb 13, 2019
dc29062
refactor(~/purchase.js): Simplify farmer.farm.dryRunJoin code
vipyne Feb 13, 2019
97196c6
refactor(~/purchaseEstimate.js): Amend no peers copy
vipyne Feb 14, 2019
17208e1
chore(release): 0.9.1 :tada:
vipyne Feb 14, 2019
1f5518c
feat(): recover implemented to change password (closes #432)
MarkGeeRomano Feb 14, 2019
836acfa
removed hyphens from title
MarkGeeRomano Feb 15, 2019
55df8b4
chore(README.md): intro and notes building native modules
zootella Feb 15, 2019
b29f54b
style(): enable ellipsis title overflow
MarkGeeRomano Feb 19, 2019
40c4b6b
style(section.js): added margin to published section when length 0
MarkGeeRomano Feb 15, 2019
24370cc
feat(progressBar): added message to :ant:
MarkGeeRomano Feb 15, 2019
b4ef37a
darkened color for msg
MarkGeeRomano Feb 19, 2019
e88a874
smol
MarkGeeRomano Feb 19, 2019
83fb337
chore(release): 0.9.2 :tada:
MarkGeeRomano Feb 19, 2019
fc9e5a9
fix(~/purchase.js): Temp fake peer count for now
vipyne Feb 19, 2019
2ba3ceb
chore(release): 0.9.3 :tada:
vipyne Feb 19, 2019
c98e79a
refactor(kernel/): Clean up folder structure
madelinecameron Feb 14, 2019
ee7cd7e
Revert "refactor(kernel/): Clean up folder structure"
vipyne Feb 21, 2019
1b62b48
refactor(browser/view): Less litigious copy changes
vipyne Feb 21, 2019
565a68b
refactor(browser/views|styles): PR notes
vipyne Feb 21, 2019
d1817b3
chore(release): 0.9.4 :tada:
vipyne Feb 21, 2019
b83c674
fix(update.js): renders package name in modal
MarkGeeRomano Feb 21, 2019
55889d0
chore(release): 0.9.5 :tada:
MarkGeeRomano Feb 21, 2019
be35844
refactor(kernel/): Clean up folder structure
madelinecameron Feb 14, 2019
e4c2f50
Revert "refactor(kernel/): Clean up folder structure"
vipyne Feb 21, 2019
78211f4
refactor(browser/view): Less litigious copy changes
vipyne Feb 21, 2019
a363ffe
refactor(browser/views|styles): PR notes
vipyne Feb 21, 2019
684ea51
chore(release): 0.9.4 :tada:
vipyne Feb 21, 2019
bb18c60
fix(update.js): renders package name in modal
MarkGeeRomano Feb 21, 2019
0dc1087
chore(release): 0.9.5 :tada:
MarkGeeRomano Feb 21, 2019
1df95a4
refactor(kernel/): Clean up folder structure
madelinecameron Feb 14, 2019
fc8656e
Revert "refactor(kernel/): Clean up folder structure"
vipyne Feb 21, 2019
976a657
refactor(browser/view): Less litigious copy changes
vipyne Feb 21, 2019
f34e847
refactor(browser/views|styles): PR notes
vipyne Feb 21, 2019
eecb895
cache
MarkGeeRomano Feb 25, 2019
9420d70
feat(): modal for tabula rasa
MarkGeeRomano Feb 25, 2019
7464905
smol
MarkGeeRomano Feb 25, 2019
6992e90
fix(squirrel): fixed version check
MarkGeeRomano Feb 26, 2019
b70139a
chore(release): 0.9.6 :tada:
MarkGeeRomano Feb 26, 2019
e9058ea
Merge branch 'master' into dev
MarkGeeRomano Feb 26, 2019
0c6e17c
refactor(kernel/): Clean up folder structure
madelinecameron Feb 14, 2019
ee4c435
Revert "refactor(kernel/): Clean up folder structure"
vipyne Feb 21, 2019
6891707
refactor(browser/view): Less litigious copy changes
vipyne Feb 21, 2019
1f9b8b0
refactor(browser/views|styles): PR notes
vipyne Feb 21, 2019
80b3507
chore(release): 0.9.5 :tada:
MarkGeeRomano Feb 21, 2019
2054832
feat(header.js): Add `Close` to main window menu
vipyne Feb 25, 2019
c95f2c8
chore(release): 0.9.7 :tada:
vipyne Feb 26, 2019
8d9a6a8
fix(errorInput): referenced props instead of defunct state
MarkGeeRomano Feb 26, 2019
2da878d
cache
MarkGeeRomano Feb 26, 2019
a2eed84
readded parent state
MarkGeeRomano Feb 26, 2019
82745c9
smol
MarkGeeRomano Feb 26, 2019
7b374ca
refactor(registration.js): Disable OK button at first
vipyne Feb 26, 2019
05171e9
fix(tray): created proper flow for register via tray
MarkGeeRomano Feb 26, 2019
41c9561
smol
MarkGeeRomano Feb 26, 2019
7984dc7
chore(package.json): Bump AFS 0.25.0 & ACT 0.23.0
vipyne Feb 26, 2019
684c309
chore(package.json): Bump reward DCDN
vipyne Feb 26, 2019
724af6f
chore(release): 0.10.0 :tada:
vipyne Feb 26, 2019
eef302b
docs(BUILD.md): Tyop
vipyne Feb 26, 2019
e3db554
fix(errorInput): referenced props instead of defunct state
MarkGeeRomano Feb 26, 2019
ddba508
cache
MarkGeeRomano Feb 26, 2019
aaa396d
readded parent state
MarkGeeRomano Feb 26, 2019
b1c3188
smol
MarkGeeRomano Feb 26, 2019
6c8b61c
fix(boot/index.js): added electron sqrl startup to top
MarkGeeRomano Feb 26, 2019
fd1611f
smol
MarkGeeRomano Feb 27, 2019
a352f38
chore(release): 0.10.1 :tada:
MarkGeeRomano Feb 27, 2019
cd948b2
fix(): faucet port changed; faucet onclick fixed
MarkGeeRomano Feb 27, 2019
b780936
chore(release): 0.10.2 :tada:
MarkGeeRomano Feb 27, 2019
a46cf69
fix(itemRow.js):
MarkGeeRomano Feb 28, 2019
cedb295
chore(release): 0.10.3 :tada:
MarkGeeRomano Feb 28, 2019
a1f6952
feat(stateManagement.js): Add PAGE_VIEW state
vipyne Mar 1, 2019
253cc6e
refactor(kernel/~/analytics.js): 2 tabs format
vipyne Mar 1, 2019
e77fb5b
feat(windowManagement|modal): Trigger PAGE_VIEW and modal listens for
vipyne Mar 1, 2019
fc46447
feat(generalModalTextProvider|publish): Add `publishEstimate` modalName
vipyne Mar 1, 2019
c0efe13
feat(browser/js/modal.js): Track "subviews" of modals
vipyne Mar 1, 2019
72c14f6
feat(browser/js/): Send PAGE_VIEW events
vipyne Mar 1, 2019
6605476
PR notes
vipyne Mar 1, 2019
87ec1fe
chore(release): 0.10.4 :tada:
vipyne Mar 1, 2019
8e3d168
cache
MarkGeeRomano Mar 4, 2019
845fd67
refactor(constants):stateManagement -> k
MarkGeeRomano Mar 4, 2019
638a8f9
chore(release): 0.10.5 :tada:
MarkGeeRomano Mar 4, 2019
56380df
refactor(): actionCreators -> daemons
MarkGeeRomano Mar 4, 2019
73de050
chore(release): 0.10.6 :tada:
MarkGeeRomano Mar 5, 2019
70275e7
refactor(): actionCreators -> ipc
MarkGeeRomano Mar 5, 2019
5d5b214
refactor(): debug afm -> ara:fm
MarkGeeRomano Mar 5, 2019
7c579ff
chore(release): 0.10.7 :tada:
MarkGeeRomano Mar 5, 2019
2563933
fix(purchaseEstimate.js): referenced `did` properly
MarkGeeRomano Mar 7, 2019
31ffccb
chore(release): 0.10.8 :tada:
MarkGeeRomano Mar 7, 2019
fe98544
fix(): Fix file add for Linux
madelinecameron Mar 6, 2019
06e93f0
temp
vipyne Mar 1, 2019
80549a0
chore(): Rename close button
madelinecameron Mar 1, 2019
7c57738
feat(): Add download url box
madelinecameron Mar 1, 2019
f796bb8
feat(kernel): Fix integration with new DCDN
madelinecameron Mar 5, 2019
e00753d
refactor(kernel/daemons): Change tabs to spaces
madelinecameron Mar 5, 2019
e8983bc
refactor(browser/file/header): Refactor to use components
madelinecameron Mar 6, 2019
b3da4d9
chore(package.json): Remove branch of rewards dcdn
madelinecameron Mar 7, 2019
03b1aa8
refactor(rewardsDCDN): Make sure did is always hexstring
madelinecameron Mar 7, 2019
fde59a2
chore(package.json): Update rDCDN version
madelinecameron Mar 7, 2019
6bcafc5
chore(release): 0.11.0 :tada:
madelinecameron Mar 7, 2019
1da36c9
wip
vipyne Mar 4, 2019
3c445f3
feat(): extended tracking
MarkGeeRomano Mar 6, 2019
ed7527b
smol
MarkGeeRomano Mar 7, 2019
3356300
feat(analytics): added purchase start and end trackers
MarkGeeRomano Mar 7, 2019
afc4911
smol
MarkGeeRomano Mar 7, 2019
d85bb89
{destructured, everything}
MarkGeeRomano Mar 7, 2019
f731056
style(~/publish.js): tiny
vipyne Mar 8, 2019
a466479
chore(README.md && BUILD.md): pupdated docs
MarkGeeRomano Mar 8, 2019
e0655bb
smol
MarkGeeRomano Mar 8, 2019
9a925d7
bulleted
MarkGeeRomano Mar 8, 2019
9f36594
feat(scripts/): programatically append version to .app and .exe
MarkGeeRomano Mar 7, 2019
47786ef
chore(release): 0.11.1 :tada:
MarkGeeRomano Mar 8, 2019
373422d
fix(afm.js | cleaOutdatedData): removed (Deprecated)
MarkGeeRomano Mar 7, 2019
a60bd3a
chore(release): 0.11.2 :tada:
MarkGeeRomano Mar 8, 2019
a238134
fix(register.js): moved cacheUserDid to registration confirmation
MarkGeeRomano Mar 7, 2019
9760ee9
chore(release): 0.11.3 :tada:
MarkGeeRomano Mar 8, 2019
badde84
feat(): Add download url box
madelinecameron Mar 1, 2019
78ac334
refactor(browser/file/header): Refactor to use components
madelinecameron Mar 6, 2019
ef9477d
smol refactor
MarkGeeRomano Mar 6, 2019
20cba9e
smol
MarkGeeRomano Mar 8, 2019
0e28c3b
chore(release): 0.11.4 :tada:
MarkGeeRomano Mar 8, 2019
e18e090
chore(.npmrc): changed package-lock to true
MarkGeeRomano Mar 11, 2019
fd05e7a
chore(release): 0.11.5 :tada:
MarkGeeRomano Mar 11, 2019
85b7f46
fix(publish.js): removed extra estimate
MarkGeeRomano Mar 11, 2019
abffe10
chore(release): 0.11.6 :tada:
MarkGeeRomano Mar 11, 2019
0a854e5
chore(package.json): added electron-packager to devdeps
MarkGeeRomano Mar 11, 2019
81bc779
chore(release): 0.11.7 :tada:
MarkGeeRomano Mar 11, 2019
3d53eea
fix(winstaller.js): changed exe and setupExe props
MarkGeeRomano Mar 11, 2019
609ebb0
chore(release): 0.11.8 :tada:
MarkGeeRomano Mar 11, 2019
fac87ff
cache
MarkGeeRomano Mar 11, 2019
a68e90a
chore(release): 0.11.9 :tada:
MarkGeeRomano Mar 11, 2019
48df2b1
chore(README.md): removed refs to dev
MarkGeeRomano Mar 11, 2019
3e901ea
chore(release): 0.11.10 :tada:
MarkGeeRomano Mar 11, 2019
da79251
refactor(Input | ErrorInput): simplified API
MarkGeeRomano Mar 11, 2019
2c69e07
smol
MarkGeeRomano Mar 12, 2019
e728974
chore(release): 0.11.11 :tada:
MarkGeeRomano Mar 12, 2019
57e9e8b
fix(recover.js): derp
MarkGeeRomano Mar 15, 2019
4716fcd
chore(release): 0.11.12 :tada:
MarkGeeRomano Mar 15, 2019
0d1c780
fix(confirmSendModal.js): added back event
MarkGeeRomano Mar 15, 2019
9722b85
chore(release): 0.11.13 :tada:
MarkGeeRomano Mar 15, 2019
a32f923
chore(README): added bit about --no-optional flag
MarkGeeRomano Mar 22, 2019
7cb2639
chore(mac-production-build.sh): added -q flag to zip so it will stfu
MarkGeeRomano Mar 22, 2019
adcc5ed
chore(release): 0.11.14 :tada:
MarkGeeRomano Mar 23, 2019
06cc843
chore(README): rm bit about dev branch
MarkGeeRomano Mar 23, 2019
dc4e0e7
feature(): single estimate deploy+commit
MarkGeeRomano Mar 14, 2019
b2797ce
smol
MarkGeeRomano Mar 23, 2019
55c592e
chore(release): 0.11.15 :tada:
MarkGeeRomano Mar 23, 2019
1d5def0
fix(boot/writeFiles.js): Update infura in ararc
vipyne Mar 28, 2019
faf1e1e
chore(release): 0.12.0 :tada:
vipyne Mar 28, 2019
d3ab91f
chore(): reverted reward-dcdn to 18
Mar 28, 2019
ef78909
chore(release): 0.12.1 :tada:
Mar 28, 2019
c4c507b
Merge pull request #539 from AraBlocks/bap-unbump-ard
bplaster Mar 28, 2019
b018fef
feat(): testing :rocket:
MarkGeeRomano Apr 12, 2019
e929ada
test(checkbox): :check:
MarkGeeRomano Apr 13, 2019
0a24d53
smol
MarkGeeRomano Apr 13, 2019
cdb522b
test(input): :rocket:
MarkGeeRomano Apr 14, 2019
bfd0dac
test(): reusable components :rocket:
MarkGeeRomano Apr 15, 2019
380c886
smol
MarkGeeRomano Apr 15, 2019
36691c7
chore(release): 0.12.2 :tada:
MarkGeeRomano Apr 16, 2019
8ec12c0
feat(): native component testing with spectron :rocket:
MarkGeeRomano Apr 22, 2019
e79af41
smol
MarkGeeRomano Apr 22, 2019
02b8cbd
configured ava in package - rewrote afsFileRow
MarkGeeRomano Apr 23, 2019
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 18 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# EditorConfig is awesome: http://EditorConfig.org

# top-most EditorConfig file
root = true

# Unix-style newlines with a newline ending every file
[*]
end_of_line = lf
insert_final_newline = true


# Matches multiple files with brace expansion notation
# Set default charset
[*.{js,jsx,html,sass,scss,css}]
charset = utf-8
indent_style = space
indent_size = 2
trim_trailing_whitespace = true
81 changes: 81 additions & 0 deletions .github/BUILD.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
# Build Instructions
We use [electron-builder](https://github.com/electron-userland/electron-builder) to compile our builds for both mac and windows.

## Prerequisites
[`jq`](https://stedolan.github.io/jq/) (for macos builds)
```
$ brew update && brew install jq
```
## Mac
### A note about macos certificates
TODO
### Development
```
$ npm run build-dev-mac
```
>This will create an `Ara File Manager.app`. The script that builds the `.app` includes a codesign at the bottom of it. If you don't want to or can't codesign the application, you can comment the last line in the script. Codesigning prevents the "untrusted developer" popup from rendering, as well as allowing for autopupdates.
>
>We suggest you place the `.app` in your `Applications` directory before using the app. This will ensure the deeplinks behave as expected.

#### Debugging
```
$ DEBUG=afm* /Applications/Ara\ File\ Manager.app/Contents/MacOS/Ara\ File\ Manager
//if you haven't moved the app from the `release-builds` directory you can run:
$ npm run debug-mac
```

### Production
```
$ npm run build-prod-mac
```
Like the dev build, this will create a codesigned `.app`, but also wrap it in a `.dmg` file. When booting the `Ara File Manager.dmg`, it will render a screen that prompts you to drag the `.app` into the `Applications` directory. The script will set flags that will enable google analytics in the application.

#### Debugging
```
$ DEBUG=afm* /Applications/Ara\ File\ Manager.app/Contents/MacOS/Ara\ File\ Manager
//if you haven't moved the app from the `release-builds` directory you can run:
$ npm run debug-mac
```

## Windows

### Development
```
$ npm run build-dev-windows
```
>This will create an **unpackaged** build of the application for windows. This is a directory of application-related files along with the actual `Ara File Manager.exe` which can be used to boot up the application. fully functional, but will **not** be able to autopupdate through squirrel.

>Must be built on a windows computer.

TODO: Figure out how to install and use wine + mono to build on a mac

#### Debugging
```
$ DEBUG=afm* <path to Ara File Manager.exe>
//if you haven't moved the app from the `release-builds` directory you can run:
$ npm run debug-windows
```

### Production

#### A note about windows certificates
The certificate can be exported from the GlobalSign security token and placed on a computer locally. The private key, however, is **bound** to the token and can't be exported. Because of this, you must have the token plugged in during the build. During the code signing phase of the build, the GlobalSign interface will pop up and prompt you to enter the password. It will prompt you every time a file needs to be signed. This is cumbersome, and you can opt for a single sign-on in the configuration of the GlobalSign application itself (which is available when it's plugged in).


```
$ CODE_SIGNING_PW=<secret password> npm run build-prod-windows
```
This will create a **packaged** build of the app for windows. Do **not** run this command on mac (it removes modules specific to mac). This will create an unpackaged version of the app, then it will package that into a single `AFM Installer.exe`. This installer will create a shortcut on the users desktop, and will place the actual application and related files in `C:\Users\<username>\AppData\Local\Ara File Manager`. The application can be uninstalled through the programs application available on Window's control panel. The script will set flags that will enable google analytics in the application.

**Ensure** you have a copy of the code signing certificate in `build/certs` before running the above command, as well as the GlobalSign security token plugged into your computer. **The installer must be signed as well**. To do this, open up the `Microsoft Visual C++ Build Tools` command prompt and enter the following command:

```
signtool sign /fd sha256 /a /f <path to certificate> /p <code signing certificate password> <path to AFM Installer.exe>
```

TODO: Use the callback after packager is complete to sign the installer

#### Debugging
```
$ DEBUG=afm* C:\Users\<username>\AppData\Local\ara-file-manager\Ara File Manager.exe
```
File renamed without changes.
69 changes: 69 additions & 0 deletions .github/COMMIT_FORMAT_EXAMPLES.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
Commit Message Examples
=======================

## Chores

A `chore` type is a task not directly tied to a feature, fix, or test. It is
often work that requires no change to production code.

```
chore(scripts/): Moved extraneous scripts into scripts/ directory
```

## Documentation

A `docs` type is a task that directly affects documentation that is
constructed manually, programmatically, or through a third-party. This
can include typos, additions, deletions, and examples.

```
docs(resolve.js): Describe new resolve API
```

## Features

A `feat` type is a task that introduces a new feature. The new feature
may introduce a breaking change to production code.

```
feat(create.js): Introduce new identity creation
```

## Fixes/bugs

A `fix` type is a task that addresses a bug in production code, build
scripts, compilation steps, or anything that directly or indiretly breaks or
impacts production.

```
fix(buffer.js): Fix the freeing of buffer resources
```

## Refactoring

A `refactor` type is a task that changes existing code. A refactor
should be an improvement to the existing production code.

```
refactor(platform.js): Simplify platform logic
```

## Code style

A `style` type is a task that addresses code formatting such as missing
semicolons, converting tabs to spaces, or removing extra newlines. There
should not be any code changes.

```
style(drive.js): Convert tabs to spaces
```

## Tests

A `test` type is a task that addresses the testing of production code.
This may include adding a new or missing test, refactoring existing
tests, or removing useless tests. There should not be any code changes.

```
test(buffer.js): Fix broken buffer alloc logic
```
File renamed without changes.
13 changes: 12 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,13 @@
.DS_store
node_modules
node_modules
package-lock.json
dist/
.cfs
release-builds/
foo.js
bar.js
package-lock.json
*.dmg
lib/constants/analytics.js.bak
build/certs

2 changes: 2 additions & 0 deletions .npmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
tag-version-prefix=""
message="chore(release): %s :tada:"
Loading