Browse Source

feat(modal): add help link in modal header

next
Tom Kirkpatrick 6 years ago
parent
commit
c47d147ae7
No known key found for this signature in database GPG Key ID: 72203A8EC5967EA8
  1. 1
      app/components/UI/Modal.js
  2. 6
      app/main.dev.js
  3. 18
      app/preload.js
  4. 18
      stories/components/modal.stories.js

1
app/components/UI/Modal.js

@ -49,6 +49,7 @@ class Modal extends React.Component {
<Text <Text
fontWeight="normal" fontWeight="normal"
css={{ cursor: 'pointer', opacity: 0.6, '&:hover': { opacity: 1 } }} css={{ cursor: 'pointer', opacity: 0.6, '&:hover': { opacity: 1 } }}
onClick={() => window.Zap.openHelpPage()}
> >
Need Help? Need Help?
</Text> </Text>

6
app/main.dev.js

@ -12,6 +12,7 @@ import installExtension, {
REDUX_DEVTOOLS REDUX_DEVTOOLS
} from 'electron-devtools-installer' } from 'electron-devtools-installer'
import get from 'lodash.get' import get from 'lodash.get'
import path from 'path'
import { mainLog } from './lib/utils/log' import { mainLog } from './lib/utils/log'
import ZapMenuBuilder from './lib/zap/menuBuilder' import ZapMenuBuilder from './lib/zap/menuBuilder'
import ZapController from './lib/zap/controller' import ZapController from './lib/zap/controller'
@ -118,7 +119,10 @@ app.on('ready', async () => {
height: 650, height: 650,
minWidth: 900, minWidth: 900,
minHeight: 425, minHeight: 425,
backgroundColor: get(theme, 'colors.primaryColor', '#242633') backgroundColor: get(theme, 'colors.primaryColor', '#242633'),
webPreferences: {
preload: path.resolve(__dirname, './preload.js')
}
}) })
// Initialise the updater. // Initialise the updater.

18
app/preload.js

@ -0,0 +1,18 @@
const { shell } = require('electron')
init()
function init() {
// Expose a bridging API to by setting an global on `window`.
//
// !CAREFUL! do not expose any functionality or APIs that could compromise the
// user's computer. E.g. don't directly expose core Electron (even IPC) or node.js modules.
window.Zap = {
openHelpPage
}
}
// Open the help page in a new browser window,.
function openHelpPage() {
shell.openExternal('https://ln-zap.github.io/zap-tutorials/zap-desktop-getting-started')
}

18
stories/components/modal.stories.js

@ -1,6 +1,7 @@
import React from 'react' import React from 'react'
import { storiesOf } from '@storybook/react' import { storiesOf } from '@storybook/react'
import { action } from '@storybook/addon-actions' import { action } from '@storybook/addon-actions'
import { boolean } from '@storybook/addon-knobs'
import { Modal, Page, Text } from 'components/UI' import { Modal, Page, Text } from 'components/UI'
storiesOf('Components', module).addWithChapters('Modal', { storiesOf('Components', module).addWithChapters('Modal', {
@ -11,21 +12,24 @@ storiesOf('Components', module).addWithChapters('Modal', {
{ {
sections: [ sections: [
{ {
sectionFn: () => ( sectionFn: () => {
const withHeader = boolean('With header', false)
return (
<Page> <Page>
<Modal onClose={action('clicked')}> <Modal onClose={action('clicked')} withHeader={withHeader}>
<Text> <Text>
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor
incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis
exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu
pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
officia deserunt mollit anim id est laborum. culpa qui officia deserunt mollit anim id est laborum.
</Text> </Text>
</Modal> </Modal>
</Page> </Page>
) )
} }
}
] ]
} }
] ]

Loading…
Cancel
Save