fix(docs): Replace docs references to Edgehill with N1

This commit is contained in:
Ben Gotow 2015-09-29 09:45:02 -07:00
parent 3ccc5e3d99
commit 9a3356c5e9
12 changed files with 88 additions and 88 deletions

View file

@ -51,8 +51,8 @@ class TranslateButton extends React.Component
# `React.createElement('a', {href: 'http://facebook.github.io/react/'}, 'Hello!')` # `React.createElement('a', {href: 'http://facebook.github.io/react/'}, 'Hello!')`
# #
# We're rendering a `Popover` with a `Menu` inside. These components are part # We're rendering a `Popover` with a `Menu` inside. These components are part
# of Edgehill's standard `nylas-component-kit` library, and make it easy to build # of N1's standard `nylas-component-kit` library, and make it easy to build
# interfaces that match the rest of Edgehill's UI. # interfaces that match the rest of N1's UI.
# #
render: => render: =>
React.createElement(Popover, {"ref": "popover", \ React.createElement(Popover, {"ref": "popover", \

View file

@ -10,14 +10,14 @@
<body> <body>
<div id="container"> <div id="container">
<div id="background"></div> <div id="background"></div>
<ul class="sections"> <ul class="sections">
<li id="section-1"> <li id="section-1">
<div class="annotation"> <div class="annotation">
<div class="pilwrap "> <div class="pilwrap ">
<a class="pilcrow" href="#section-1">&#182;</a> <a class="pilcrow" href="#section-1">&#182;</a>
</div> </div>
@ -27,7 +27,7 @@
a language from a popup menu and translates draft text into that language.</p> a language from a popup menu and translates draft text into that language.</p>
</div> </div>
<div class="content"><div class='highlight'><pre> <div class="content"><div class='highlight'><pre>
request = <span class="hljs-built_in">require</span> <span class="hljs-string">'request'</span> request = <span class="hljs-built_in">require</span> <span class="hljs-string">'request'</span>
@ -54,28 +54,28 @@ YandexLanguages =
<span class="hljs-string">'Korean'</span>: <span class="hljs-string">'ko'</span> <span class="hljs-string">'Korean'</span>: <span class="hljs-string">'ko'</span>
<span class="hljs-class"><span class="hljs-keyword">class</span> <span class="hljs-title">TranslateButton</span> <span class="hljs-keyword">extends</span> <span class="hljs-title">React</span>.<span class="hljs-title">Component</span></span></pre></div></div> <span class="hljs-class"><span class="hljs-keyword">class</span> <span class="hljs-title">TranslateButton</span> <span class="hljs-keyword">extends</span> <span class="hljs-title">React</span>.<span class="hljs-title">Component</span></span></pre></div></div>
</li> </li>
<li id="section-2"> <li id="section-2">
<div class="annotation"> <div class="annotation">
<div class="pilwrap "> <div class="pilwrap ">
<a class="pilcrow" href="#section-2">&#182;</a> <a class="pilcrow" href="#section-2">&#182;</a>
</div> </div>
<p>Adding a <code>displayName</code> makes debugging React easier</p> <p>Adding a <code>displayName</code> makes debugging React easier</p>
</div> </div>
<div class="content"><div class='highlight'><pre> <span class="hljs-property">@displayName</span>: <span class="hljs-string">'TranslateButton'</span></pre></div></div> <div class="content"><div class='highlight'><pre> <span class="hljs-property">@displayName</span>: <span class="hljs-string">'TranslateButton'</span></pre></div></div>
</li> </li>
<li id="section-3"> <li id="section-3">
<div class="annotation"> <div class="annotation">
<div class="pilwrap "> <div class="pilwrap ">
<a class="pilcrow" href="#section-3">&#182;</a> <a class="pilcrow" href="#section-3">&#182;</a>
</div> </div>
@ -84,16 +84,16 @@ we receive the local id of the current draft as a <code>prop</code> (a read-only
property). Since our code depends on this prop, we mark it as a requirement.</p> property). Since our code depends on this prop, we mark it as a requirement.</p>
</div> </div>
<div class="content"><div class='highlight'><pre> <span class="hljs-property">@propTypes</span>: <div class="content"><div class='highlight'><pre> <span class="hljs-property">@propTypes</span>:
<span class="hljs-attribute">draftLocalId</span>: React.PropTypes.string.isRequired</pre></div></div> <span class="hljs-attribute">draftLocalId</span>: React.PropTypes.string.isRequired</pre></div></div>
</li> </li>
<li id="section-4"> <li id="section-4">
<div class="annotation"> <div class="annotation">
<div class="pilwrap "> <div class="pilwrap ">
<a class="pilcrow" href="#section-4">&#182;</a> <a class="pilcrow" href="#section-4">&#182;</a>
</div> </div>
@ -103,11 +103,11 @@ like HTML, but dont be fooled. The CJSX preprocessor converts</p>
<p>into Javascript objects which describe the HTML you want:</p> <p>into Javascript objects which describe the HTML you want:</p>
<p><code>React.createElement(&#39;a&#39;, {href: &#39;http://facebook.github.io/react/&#39;}, &#39;Hello!&#39;)</code></p> <p><code>React.createElement(&#39;a&#39;, {href: &#39;http://facebook.github.io/react/&#39;}, &#39;Hello!&#39;)</code></p>
<p>Were rendering a <code>Popover</code> with a <code>Menu</code> inside. These components are part <p>Were rendering a <code>Popover</code> with a <code>Menu</code> inside. These components are part
of Edgehills standard <code>nylas-component-kit</code> library, and make it easy to build of N1s standard <code>nylas-component-kit</code> library, and make it easy to build
interfaces that match the rest of Edgehills UI.</p> interfaces that match the rest of N1s UI.</p>
</div> </div>
<div class="content"><div class='highlight'><pre> <span class="hljs-attribute">render</span>: <span class="hljs-function">=&gt;</span> <div class="content"><div class='highlight'><pre> <span class="hljs-attribute">render</span>: <span class="hljs-function">=&gt;</span>
React.createElement(Popover, {<span class="hljs-string">"ref"</span>: <span class="hljs-string">"popover"</span>, \ React.createElement(Popover, {<span class="hljs-string">"ref"</span>: <span class="hljs-string">"popover"</span>, \
<span class="hljs-string">"className"</span>: <span class="hljs-string">"translate-language-picker pull-right"</span>, \ <span class="hljs-string">"className"</span>: <span class="hljs-string">"translate-language-picker pull-right"</span>, \
@ -120,13 +120,13 @@ interfaces that match the rest of Edgehills UI.</p>
) )
</span></pre></div></div> </span></pre></div></div>
</li> </li>
<li id="section-5"> <li id="section-5">
<div class="annotation"> <div class="annotation">
<div class="pilwrap "> <div class="pilwrap ">
<a class="pilcrow" href="#section-5">&#182;</a> <a class="pilcrow" href="#section-5">&#182;</a>
</div> </div>
@ -135,7 +135,7 @@ interfaces that match the rest of Edgehills UI.</p>
<code>RetinaImg</code> will automatically chose the best image format for our display.</p> <code>RetinaImg</code> will automatically chose the best image format for our display.</p>
</div> </div>
<div class="content"><div class='highlight'><pre> <span class="hljs-attribute">_renderButton</span>: <span class="hljs-function">=&gt;</span> <div class="content"><div class='highlight'><pre> <span class="hljs-attribute">_renderButton</span>: <span class="hljs-function">=&gt;</span>
React.createElement(<span class="hljs-string">"button"</span>, {<span class="hljs-string">"className"</span>: <span class="hljs-string">"btn btn-toolbar"</span>}, <span class="hljs-string">""" React.createElement(<span class="hljs-string">"button"</span>, {<span class="hljs-string">"className"</span>: <span class="hljs-string">"btn btn-toolbar"</span>}, <span class="hljs-string">"""
Translate Translate
@ -144,13 +144,13 @@ interfaces that match the rest of Edgehills UI.</p>
<span class="hljs-attribute">_onTranslate</span>: <span class="hljs-function"><span class="hljs-params">(lang)</span> =&gt;</span> <span class="hljs-attribute">_onTranslate</span>: <span class="hljs-function"><span class="hljs-params">(lang)</span> =&gt;</span>
<span class="hljs-property">@refs</span>.popover.close()</pre></div></div> <span class="hljs-property">@refs</span>.popover.close()</pre></div></div>
</li> </li>
<li id="section-6"> <li id="section-6">
<div class="annotation"> <div class="annotation">
<div class="pilwrap "> <div class="pilwrap ">
<a class="pilcrow" href="#section-6">&#182;</a> <a class="pilcrow" href="#section-6">&#182;</a>
</div> </div>
@ -159,18 +159,18 @@ the draft object and also manages saving changes to the local cache and
Nilas API as multiple parts of the application touch the draft.</p> Nilas API as multiple parts of the application touch the draft.</p>
</div> </div>
<div class="content"><div class='highlight'><pre> session = DraftStore.sessionForLocalId(<span class="hljs-property">@props</span>.draftLocalId) <div class="content"><div class='highlight'><pre> session = DraftStore.sessionForLocalId(<span class="hljs-property">@props</span>.draftLocalId)
session.prepare().<span class="hljs-keyword">then</span> =&gt; session.prepare().<span class="hljs-keyword">then</span> =&gt;
body = session.draft().body body = session.draft().body
bodyQuoteStart = Utils.quotedTextIndex(body)</pre></div></div> bodyQuoteStart = Utils.quotedTextIndex(body)</pre></div></div>
</li> </li>
<li id="section-7"> <li id="section-7">
<div class="annotation"> <div class="annotation">
<div class="pilwrap "> <div class="pilwrap ">
<a class="pilcrow" href="#section-7">&#182;</a> <a class="pilcrow" href="#section-7">&#182;</a>
</div> </div>
@ -178,7 +178,7 @@ Nilas API as multiple parts of the application touch the draft.</p>
dont translate quoted text.</p> dont translate quoted text.</p>
</div> </div>
<div class="content"><div class='highlight'><pre> <span class="hljs-keyword">if</span> bodyQuoteStart &gt; <span class="hljs-number">0</span> <div class="content"><div class='highlight'><pre> <span class="hljs-keyword">if</span> bodyQuoteStart &gt; <span class="hljs-number">0</span>
text = body.substr(<span class="hljs-number">0</span>, bodyQuoteStart) text = body.substr(<span class="hljs-number">0</span>, bodyQuoteStart)
<span class="hljs-keyword">else</span> <span class="hljs-keyword">else</span>
@ -189,30 +189,30 @@ dont translate quoted text.</p>
<span class="hljs-attribute">lang</span>: YandexLanguages[lang] <span class="hljs-attribute">lang</span>: YandexLanguages[lang]
<span class="hljs-attribute">text</span>: text <span class="hljs-attribute">text</span>: text
<span class="hljs-attribute">format</span>: <span class="hljs-string">'html'</span></pre></div></div> <span class="hljs-attribute">format</span>: <span class="hljs-string">'html'</span></pre></div></div>
</li> </li>
<li id="section-8"> <li id="section-8">
<div class="annotation"> <div class="annotation">
<div class="pilwrap "> <div class="pilwrap ">
<a class="pilcrow" href="#section-8">&#182;</a> <a class="pilcrow" href="#section-8">&#182;</a>
</div> </div>
<p>Use Nodes <code>request</code> library to perform the translation using the Yandex API.</p> <p>Use Nodes <code>request</code> library to perform the translation using the Yandex API.</p>
</div> </div>
<div class="content"><div class='highlight'><pre> request {<span class="hljs-attribute">url</span>: YandexTranslationURL, <span class="hljs-attribute">qs</span>: query}, <span class="hljs-function"><span class="hljs-params">(error, resp, data)</span> =&gt;</span> <div class="content"><div class='highlight'><pre> request {<span class="hljs-attribute">url</span>: YandexTranslationURL, <span class="hljs-attribute">qs</span>: query}, <span class="hljs-function"><span class="hljs-params">(error, resp, data)</span> =&gt;</span>
<span class="hljs-keyword">return</span> <span class="hljs-property">@_onError</span>(error) <span class="hljs-keyword">unless</span> resp.statusCode <span class="hljs-keyword">is</span> <span class="hljs-number">200</span> <span class="hljs-keyword">return</span> <span class="hljs-property">@_onError</span>(error) <span class="hljs-keyword">unless</span> resp.statusCode <span class="hljs-keyword">is</span> <span class="hljs-number">200</span>
json = JSON.parse(data)</pre></div></div> json = JSON.parse(data)</pre></div></div>
</li> </li>
<li id="section-9"> <li id="section-9">
<div class="annotation"> <div class="annotation">
<div class="pilwrap "> <div class="pilwrap ">
<a class="pilcrow" href="#section-9">&#182;</a> <a class="pilcrow" href="#section-9">&#182;</a>
</div> </div>
@ -220,16 +220,16 @@ dont translate quoted text.</p>
that we didnt process.</p> that we didnt process.</p>
</div> </div>
<div class="content"><div class='highlight'><pre> translated = json.text.join(<span class="hljs-string">''</span>) <div class="content"><div class='highlight'><pre> translated = json.text.join(<span class="hljs-string">''</span>)
translated += body.substr(bodyQuoteStart) <span class="hljs-keyword">if</span> bodyQuoteStart &gt; <span class="hljs-number">0</span></pre></div></div> translated += body.substr(bodyQuoteStart) <span class="hljs-keyword">if</span> bodyQuoteStart &gt; <span class="hljs-number">0</span></pre></div></div>
</li> </li>
<li id="section-10"> <li id="section-10">
<div class="annotation"> <div class="annotation">
<div class="pilwrap "> <div class="pilwrap ">
<a class="pilcrow" href="#section-10">&#182;</a> <a class="pilcrow" href="#section-10">&#182;</a>
</div> </div>
@ -238,7 +238,7 @@ automatically marshalls changes to the database and ensures that others accessin
the same draft are notified of changes.</p> the same draft are notified of changes.</p>
</div> </div>
<div class="content"><div class='highlight'><pre> session.changes.add(<span class="hljs-attribute">body</span>: translated) <div class="content"><div class='highlight'><pre> session.changes.add(<span class="hljs-attribute">body</span>: translated)
session.changes.commit() session.changes.commit()
@ -249,13 +249,13 @@ the same draft are notified of changes.</p>
<span class="hljs-built_in">module</span>.exports =</pre></div></div> <span class="hljs-built_in">module</span>.exports =</pre></div></div>
</li> </li>
<li id="section-11"> <li id="section-11">
<div class="annotation"> <div class="annotation">
<div class="pilwrap "> <div class="pilwrap ">
<a class="pilcrow" href="#section-11">&#182;</a> <a class="pilcrow" href="#section-11">&#182;</a>
</div> </div>
@ -263,17 +263,17 @@ the same draft are notified of changes.</p>
saved state using <code>serialize</code> it is provided.</p> saved state using <code>serialize</code> it is provided.</p>
</div> </div>
<div class="content"><div class='highlight'><pre> <span class="hljs-attribute">activate</span>: <span class="hljs-function"><span class="hljs-params">(<span class="hljs-property">@state</span>)</span> -&gt;</span> <div class="content"><div class='highlight'><pre> <span class="hljs-attribute">activate</span>: <span class="hljs-function"><span class="hljs-params">(<span class="hljs-property">@state</span>)</span> -&gt;</span>
ComponentRegistry.register TranslateButton, ComponentRegistry.register TranslateButton,
<span class="hljs-attribute">role</span>: <span class="hljs-string">'Composer:ActionButton'</span></pre></div></div> <span class="hljs-attribute">role</span>: <span class="hljs-string">'Composer:ActionButton'</span></pre></div></div>
</li> </li>
<li id="section-12"> <li id="section-12">
<div class="annotation"> <div class="annotation">
<div class="pilwrap "> <div class="pilwrap ">
<a class="pilcrow" href="#section-12">&#182;</a> <a class="pilcrow" href="#section-12">&#182;</a>
</div> </div>
@ -282,15 +282,15 @@ You can return a state object that will be passed back to your package
when it is re-activated.</p> when it is re-activated.</p>
</div> </div>
<div class="content"><div class='highlight'><pre> <span class="hljs-attribute">serialize</span>: <span class="hljs-function">-&gt;</span></pre></div></div> <div class="content"><div class='highlight'><pre> <span class="hljs-attribute">serialize</span>: <span class="hljs-function">-&gt;</span></pre></div></div>
</li> </li>
<li id="section-13"> <li id="section-13">
<div class="annotation"> <div class="annotation">
<div class="pilwrap "> <div class="pilwrap ">
<a class="pilcrow" href="#section-13">&#182;</a> <a class="pilcrow" href="#section-13">&#182;</a>
</div> </div>
@ -300,12 +300,12 @@ watching any files, holding external resources, providing commands or
subscribing to events, release them here.</p> subscribing to events, release them here.</p>
</div> </div>
<div class="content"><div class='highlight'><pre> <span class="hljs-attribute">deactivate</span>: <span class="hljs-function">-&gt;</span> <div class="content"><div class='highlight'><pre> <span class="hljs-attribute">deactivate</span>: <span class="hljs-function">-&gt;</span>
ComponentRegistry.unregister(TranslateButton)</pre></div></div> ComponentRegistry.unregister(TranslateButton)</pre></div></div>
</li> </li>
</ul> </ul>
</div> </div>
</body> </body>

View file

@ -51,8 +51,8 @@ class TranslateButton extends React.Component
# `React.createElement('a', {href: 'http://facebook.github.io/react/'}, 'Hello!')` # `React.createElement('a', {href: 'http://facebook.github.io/react/'}, 'Hello!')`
# #
# We're rendering a `Popover` with a `Menu` inside. These components are part # We're rendering a `Popover` with a `Menu` inside. These components are part
# of Edgehill's standard `nylas-component-kit` library, and make it easy to build # of N1's standard `nylas-component-kit` library, and make it easy to build
# interfaces that match the rest of Edgehill's UI. # interfaces that match the rest of N1's UI.
# #
render: => render: =>
<Popover ref="popover" <Popover ref="popover"

View file

@ -111,7 +111,7 @@ class MessageControls extends React.Component
type: 'warning' type: 'warning'
buttons: ['OK'], buttons: ['OK'],
message: "Thank you." message: "Thank you."
detail: "The contents of this message have been sent to the Edgehill team and we added to a test suite." detail: "The contents of this message have been sent to the N1 team and we added to a test suite."
} }
_onShowOriginal: => _onShowOriginal: =>

View file

@ -2,7 +2,7 @@
"name": "notification-mailto", "name": "notification-mailto",
"main": "./lib/main", "main": "./lib/main",
"version": "0.36.0", "version": "0.36.0",
"description": "Displays a notification asking the user to make Edgehill their default mailto handler", "description": "Displays a notification asking the user to make N1 their default mailto handler",
"license": "Proprietary", "license": "Proprietary",
"engines": { "engines": {
"atom": "*" "atom": "*"

View file

@ -10,7 +10,7 @@ uuid_count = 0
class Notification class Notification
constructor: ({@message, @type, @tag, @sticky, @actions, @icon} = {}) -> constructor: ({@message, @type, @tag, @sticky, @actions, @icon} = {}) ->
# Check to make sure the provided data is a valid notificaiton, since # Check to make sure the provided data is a valid notificaiton, since
# notifications may be constructed by anyone developing on Edgehill # notifications may be constructed by anyone developing on N1
throw new Error "No `new` keyword when constructing Notification" unless @ instanceof Notification throw new Error "No `new` keyword when constructing Notification" unless @ instanceof Notification
throw new Error "Type must be `info`,`error`, or `success`" unless @type in ['info', 'error', 'success'] throw new Error "Type must be `info`,`error`, or `success`" unless @type in ['info', 'error', 'success']
throw new Error "Message must be provided for notification" unless @message throw new Error "Message must be provided for notification" unless @message

View file

@ -187,7 +187,7 @@ class AccountSettingsPage extends React.Component
@setState(tryingToAuthenticate: true) @setState(tryingToAuthenticate: true)
# Send the form data directly to Nylas to get code # Send the form data directly to Nylas to get code
# If this succeeds, send the received code to Edgehill server to register the account # If this succeeds, send the received code to N1 server to register the account
# Otherwise process the error message from the server and highlight UI as needed # Otherwise process the error message from the server and highlight UI as needed
NylasAPI.makeRequest NylasAPI.makeRequest
path: "/auth?client_id=#{NylasAPI.AppID}" path: "/auth?client_id=#{NylasAPI.AppID}"

View file

@ -1,5 +1,5 @@
#!/bin/sh #!/bin/sh
# Edgehill Jenkins must run a shell script. # N1 Jenkins must run a shell script.
# #
# We also set the Keychain credentials inside of Jenkins Credentials # We also set the Keychain credentials inside of Jenkins Credentials
# instead of plain text files. # instead of plain text files.

View file

@ -31,7 +31,7 @@ function verifyNode(cb) {
var nodeMajorVersion = +versionArray[0]; var nodeMajorVersion = +versionArray[0];
var nodeMinorVersion = +versionArray[1]; var nodeMinorVersion = +versionArray[1];
if (nodeMajorVersion === 0 && nodeMinorVersion < 10) { if (nodeMajorVersion === 0 && nodeMinorVersion < 10) {
error = "node v0.10 is required to build Edgehill, node " + nodeVersion + " is installed."; error = "node v0.10 is required to build N1, node " + nodeVersion + " is installed.";
cb(error); cb(error);
} }
else { else {
@ -50,14 +50,14 @@ function verifyNpm(cb) {
childProcess.execFile(npmCommand, ['-v'], { env: process.env }, function(err, stdout) { childProcess.execFile(npmCommand, ['-v'], { env: process.env }, function(err, stdout) {
if (err) if (err)
return cb("npm 1.4 is required to build Edgehill. An error (" + err + ") occured when checking the version."); return cb("npm 1.4 is required to build N1. An error (" + err + ") occured when checking the version.");
var npmVersion = stdout ? stdout.trim() : ''; var npmVersion = stdout ? stdout.trim() : '';
var versionArray = npmVersion.split('.'); var versionArray = npmVersion.split('.');
var npmMajorVersion = +versionArray[0] || 0; var npmMajorVersion = +versionArray[0] || 0;
var npmMinorVersion = +versionArray[1] || 0; var npmMinorVersion = +versionArray[1] || 0;
if (npmMajorVersion === 1 && npmMinorVersion < 4) if (npmMajorVersion === 1 && npmMinorVersion < 4)
cb("npm v1.4+ is required to build Edgehill."); cb("npm v1.4+ is required to build N1.");
else else
cb(null, "npm: v" + npmVersion); cb(null, "npm: v" + npmVersion);
}); });
@ -87,7 +87,7 @@ function checkPythonVersion (python, cb) {
childProcess.execFile(python, ['-c', 'import platform; print(platform.python_version());'], { env: process.env }, function (err, stdout) { childProcess.execFile(python, ['-c', 'import platform; print(platform.python_version());'], { env: process.env }, function (err, stdout) {
if (err) { if (err) {
error = "Python 2.7 is required to build Edgehill. An error (" + err + ") occured when checking the version of '" + python + "'. "; error = "Python 2.7 is required to build N1. An error (" + err + ") occured when checking the version of '" + python + "'. ";
error += pythonHelpMessage; error += pythonHelpMessage;
cb(error); cb(error);
return; return;
@ -101,11 +101,11 @@ function checkPythonVersion (python, cb) {
version = version.replace(/rc(.*)$/ig, ''); version = version.replace(/rc(.*)$/ig, '');
} }
// Edgehill requires python 2.7 or higher (but not python 3) for node-gyp // N1 requires python 2.7 or higher (but not python 3) for node-gyp
var versionArray = version.split('.').map(function(num) { return +num; }); var versionArray = version.split('.').map(function(num) { return +num; });
var goodPythonVersion = (versionArray[0] === 2 && versionArray[1] >= 7); var goodPythonVersion = (versionArray[0] === 2 && versionArray[1] >= 7);
if (!goodPythonVersion) { if (!goodPythonVersion) {
error = "Python 2.7 is required to build Edgehill. '" + python + "' returns version " + version + ". "; error = "Python 2.7 is required to build N1. '" + python + "' returns version " + version + ". ";
error += pythonHelpMessage; error += pythonHelpMessage;
cb(error); cb(error);
return; return;

View file

@ -5,7 +5,7 @@ protocol = require 'protocol'
# Handles requests with 'nylas' protocol. # Handles requests with 'nylas' protocol.
# #
# It's created by {EdgehillApplication} upon instantiation and is used to create a # It's created by {N1Application} upon instantiation and is used to create a
# custom resource loader for 'nylas://' URLs. # custom resource loader for 'nylas://' URLs.
# #
# The following directories are searched in order: # The following directories are searched in order:

View file

@ -74,7 +74,7 @@ Public: React component for multi-section Menus with key binding
The Menu component allows you to display a list of items. Menu takes care of The Menu component allows you to display a list of items. Menu takes care of
several important things, ensuring that your menu is consistent with the rest several important things, ensuring that your menu is consistent with the rest
of the Edgehill application and offers a near-native experience: of the N1 application and offers a near-native experience:
- Keyboard Interaction with the Up and Down arrow keys, Enter to select - Keyboard Interaction with the Up and Down arrow keys, Enter to select
- Maintaining selection across content changes - Maintaining selection across content changes

View file

@ -4,7 +4,7 @@ _ = require 'underscore'
### ###
Public: The Popover component makes it easy to display a sheet or popup menu when the Public: The Popover component makes it easy to display a sheet or popup menu when the
user clicks the React element provided as `buttonComponent`. In Edgehill, the Popover user clicks the React element provided as `buttonComponent`. In N1, the Popover
component is used to create rich dropdown menus, detail popups, etc. with consistent component is used to create rich dropdown menus, detail popups, etc. with consistent
look and feel and behavior. look and feel and behavior.