Compare commits
35 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e2f92992b6 | ||
|
|
f37e6c164e | ||
|
|
fef30fb8b5 | ||
|
|
bcac04d0cc | ||
|
|
15ff0203ab | ||
|
|
940294d2a0 | ||
|
|
acd4a843a4 | ||
|
|
d8ee5425bf | ||
|
|
1d9e8d3c47 | ||
|
|
4d370f8a75 | ||
|
|
2a2be8eddb | ||
|
|
e7624adbfb | ||
|
|
5d0a418e85 | ||
|
|
f5b18cdd54 | ||
|
|
d5d290bcbe | ||
|
|
49c02c157b | ||
|
|
94b4aa7402 | ||
|
|
a9fe23287f | ||
|
|
30874b4972 | ||
|
|
14d53ef514 | ||
|
|
5c9270d88a | ||
|
|
f70ca27b34 | ||
|
|
d247e88541 | ||
|
|
ea257afcca | ||
|
|
24603cf98f | ||
|
|
4249bbc6df | ||
|
|
611beb8294 | ||
|
|
87803604b1 | ||
|
|
99344d93a4 | ||
|
|
2a718743ea | ||
|
|
4fe8909ad5 | ||
|
|
a0dc37dfb5 | ||
|
|
e4917030fa | ||
|
|
c756f42c28 | ||
|
|
1b6a5eda0b |
1
.github/CODEOWNERS
vendored
Normal file
1
.github/CODEOWNERS
vendored
Normal file
@@ -0,0 +1 @@
|
||||
* @edx/community-engineering
|
||||
2
.github/workflows/ci.yml
vendored
2
.github/workflows/ci.yml
vendored
@@ -9,7 +9,7 @@ jobs:
|
||||
with:
|
||||
fetch-depth: 0
|
||||
- name: Setup Nodejs
|
||||
uses: actions/setup-node@v1
|
||||
uses: actions/setup-node@v2
|
||||
with:
|
||||
node-version: 12
|
||||
- name: Install dependencies
|
||||
|
||||
2
.github/workflows/release.yml
vendored
2
.github/workflows/release.yml
vendored
@@ -13,7 +13,7 @@ jobs:
|
||||
with:
|
||||
fetch-depth: 0
|
||||
- name: Setup Node.js
|
||||
uses: actions/setup-node@v1
|
||||
uses: actions/setup-node@v2
|
||||
with:
|
||||
node-version: 12
|
||||
- name: Install dependencies
|
||||
|
||||
118
README.rst
118
README.rst
@@ -1,61 +1,95 @@
|
||||
#########################
|
||||
frontend-component-footer
|
||||
=========================
|
||||
#########################
|
||||
|
||||
|Build Status| |Coveralls| |npm_version| |npm_downloads| |license|
|
||||
|semantic-release|
|
||||
|Build Status| |Codecov| |npm_version| |npm_downloads| |license| |semantic-release|
|
||||
|
||||
frontend-component-footer is a library containing a site footer
|
||||
component for use when building Open edX frontend applications.
|
||||
|
||||
Usage
|
||||
-----
|
||||
|
||||
To install frontend-component-footer into your project::
|
||||
|
||||
npm i --save @edx/frontend-component-footer
|
||||
|
||||
Component Usage::
|
||||
|
||||
import Footer, { messages } from '@edx/frontend-component-footer';
|
||||
|
||||
...
|
||||
|
||||
<Footer
|
||||
onLanguageSelected={(languageCode) => {/* set language */}}
|
||||
supportedLanguages={[
|
||||
{ label: 'English', value: 'en'},
|
||||
{ label: 'Español', value: 'es' },
|
||||
]}
|
||||
/>
|
||||
|
||||
- onLanguageSelected (optional)
|
||||
- supportedLanguages (optional)
|
||||
|
||||
Styles (project.scss)::
|
||||
|
||||
@import '@edx/frontend-component-footer/src/footer.scss';
|
||||
********
|
||||
Overview
|
||||
********
|
||||
|
||||
A generic footer for Open edX micro-frontend applications. It includes a logo and an optional language selector dropdown.
|
||||
|
||||
************
|
||||
Requirements
|
||||
------------
|
||||
************
|
||||
|
||||
This component uses ``@edx/frontend-i18n``. Any containing app must provide ``@edx/frontend-i18n`` as a peer dependency, and be wrapped inside an ``IntlProvider`` element, whether or not your consuming application is actually localized. For a basic default locale (English) version, follow the ``IntlProvider`` example in the sample application in `src/index.jsx <src/index.jsx>`__.
|
||||
This component uses ``@edx/frontend-platform`` services such as i18n, analytics, configuration, and the ``AppContext`` React component, and expects that it has been loaded into a micro-frontend that has been properly initialized via ``@edx/frontend-platform``'s ``initialize`` function. `Please visit the frontend template application to see an example. <https://github.com/edx/frontend-template-application/blob/3355bb3a96232390e9056f35b06ffa8f105ed7ca/src/index.jsx>`_
|
||||
|
||||
Environment Variables
|
||||
=====================
|
||||
|
||||
This component requires that the following environment variable be set by the consuming micro-frontend.
|
||||
|
||||
* ``LOGO_TRADEMARK_URL`` - This is a URL to a logo for use in the footer. This is a different environment variable than ``LOGO_URL`` (used in frontend-component-header) to accommodate sites that would like to have additional trademark information on a logo in the footer, such as a (tm) or (r) symbol.
|
||||
|
||||
************
|
||||
Installation
|
||||
************
|
||||
|
||||
To install this footer into your Open edX micro-frontend, run the following command in your MFE:
|
||||
|
||||
``npm i --save @edx/frontend-component-footer``
|
||||
|
||||
This will make the component available to be imported into your application.
|
||||
|
||||
*****
|
||||
Usage
|
||||
*****
|
||||
|
||||
This library has the following exports:
|
||||
|
||||
* ``(default)``: The footer as a React component.
|
||||
* ``messages``: Internationalization messages suitable for use with `@edx/frontend-platform/i18n <https://edx.github.io/frontend-platform/module-Internationalization.html>`_
|
||||
* ``dist/footer.scss``: A SASS file which contains style information for the component. It should be imported into the micro-frontend's own SCSS file.
|
||||
|
||||
<Footer /> component props
|
||||
==========================
|
||||
|
||||
* onLanguageSelected: Provides the footer with an event handler for when the user selects a
|
||||
language from its dropdown.
|
||||
* supportedLanguages: An array of objects representing available languages. See example below for object shape.
|
||||
|
||||
Examples
|
||||
========
|
||||
|
||||
Component Usage Example::
|
||||
|
||||
import Footer, { messages } from '@edx/frontend-component-footer';
|
||||
|
||||
...
|
||||
|
||||
<Footer
|
||||
onLanguageSelected={(languageCode) => {/* set language */}}
|
||||
supportedLanguages={[
|
||||
{ label: 'English', value: 'en'},
|
||||
{ label: 'Español', value: 'es' },
|
||||
]}
|
||||
/>
|
||||
|
||||
* `An example of minimal component and messages usage. <https://github.com/edx/frontend-template-application/blob/3355bb3a96232390e9056f35b06ffa8f105ed7ca/src/index.jsx#L23>`_
|
||||
* `An example of SCSS file usage. <https://github.com/edx/frontend-template-application/blob/3cd5485bf387b8c479baf6b02bf59e3061dc3465/src/index.scss#L9>`_
|
||||
|
||||
***********
|
||||
Development
|
||||
-----------
|
||||
***********
|
||||
|
||||
Start the dev server::
|
||||
Install dependencies::
|
||||
|
||||
npm i && npm start
|
||||
npm i
|
||||
|
||||
Build the component::
|
||||
Start the development server::
|
||||
|
||||
npm run build
|
||||
npm start
|
||||
|
||||
Build a production distribution::
|
||||
|
||||
npm run build
|
||||
|
||||
.. |Build Status| image:: https://api.travis-ci.com/edx/frontend-component-footer.svg?branch=master
|
||||
:target: https://travis-ci.com/edx/frontend-component-footer
|
||||
.. |Coveralls| image:: https://img.shields.io/coveralls/edx/frontend-component-footer.svg?branch=master
|
||||
:target: https://coveralls.io/github/edx/frontend-component-footer
|
||||
.. |Codecov| image:: https://img.shields.io/codecov/c/github/edx/frontend-component-footer
|
||||
:target: @edx/frontend-component-footer
|
||||
.. |npm_version| image:: https://img.shields.io/npm/v/@edx/frontend-component-footer.svg
|
||||
:target: @edx/frontend-component-footer
|
||||
.. |npm_downloads| image:: https://img.shields.io/npm/dt/@edx/frontend-component-footer.svg
|
||||
|
||||
9590
package-lock.json
generated
9590
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
44
package.json
44
package.json
@@ -34,33 +34,33 @@
|
||||
},
|
||||
"homepage": "https://github.com/edx/frontend-component-footer#readme",
|
||||
"devDependencies": {
|
||||
"@commitlint/cli": "8.2.0",
|
||||
"@commitlint/config-angular": "8.2.0",
|
||||
"@commitlint/prompt": "8.2.0",
|
||||
"@commitlint/prompt-cli": "8.2.0",
|
||||
"@commitlint/cli": "12.1.4",
|
||||
"@commitlint/config-angular": "12.1.4",
|
||||
"@commitlint/prompt": "12.1.4",
|
||||
"@commitlint/prompt-cli": "12.1.4",
|
||||
"@edx/brand": "npm:@edx/brand-openedx@1.1.0",
|
||||
"@edx/frontend-build": "5.4.0",
|
||||
"@edx/frontend-platform": "1.8.1",
|
||||
"@edx/paragon": "12.0.5",
|
||||
"codecov": "3.7.2",
|
||||
"enzyme": "3.10.0",
|
||||
"enzyme-adapter-react-16": "1.14.0",
|
||||
"husky": "3.0.9",
|
||||
"@edx/frontend-build": "5.6.14",
|
||||
"@edx/frontend-platform": "1.11.3",
|
||||
"@edx/paragon": "12.8.0",
|
||||
"codecov": "3.8.3",
|
||||
"enzyme": "3.11.0",
|
||||
"enzyme-adapter-react-16": "1.15.6",
|
||||
"husky": "6.0.0",
|
||||
"prop-types": "15.7.2",
|
||||
"react": "16.10.2",
|
||||
"react-dom": "16.10.2",
|
||||
"react-redux": "^7.1.1",
|
||||
"react-router-dom": "^5.1.2",
|
||||
"react-test-renderer": "16.10.2",
|
||||
"react": "16.14.0",
|
||||
"react-dom": "16.14.0",
|
||||
"react-redux": "7.2.4",
|
||||
"react-router-dom": "5.2.0",
|
||||
"react-test-renderer": "16.14.0",
|
||||
"reactifex": "1.1.1",
|
||||
"redux": "^4.0.4"
|
||||
"redux": "4.1.1"
|
||||
},
|
||||
"dependencies": {
|
||||
"@fortawesome/fontawesome-svg-core": "1.2.34",
|
||||
"@fortawesome/free-brands-svg-icons": "5.8.2",
|
||||
"@fortawesome/free-regular-svg-icons": "5.8.2",
|
||||
"@fortawesome/free-solid-svg-icons": "5.8.2",
|
||||
"@fortawesome/react-fontawesome": "0.1.14"
|
||||
"@fortawesome/fontawesome-svg-core": "1.2.36",
|
||||
"@fortawesome/free-brands-svg-icons": "5.15.4",
|
||||
"@fortawesome/free-regular-svg-icons": "5.15.4",
|
||||
"@fortawesome/free-solid-svg-icons": "5.15.4",
|
||||
"@fortawesome/react-fontawesome": "0.1.15"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@edx/frontend-platform": "^1.8.0",
|
||||
|
||||
@@ -1,9 +1,28 @@
|
||||
{
|
||||
"extends": [
|
||||
"config:base"
|
||||
"config:base",
|
||||
"schedule:weekly",
|
||||
":automergeLinters",
|
||||
":automergeMinor",
|
||||
":automergeTesters",
|
||||
":enableVulnerabilityAlerts",
|
||||
":rebaseStalePrs",
|
||||
":semanticCommits",
|
||||
":updateNotScheduled"
|
||||
],
|
||||
"patch": {
|
||||
"automerge": true
|
||||
},
|
||||
"rebaseStalePrs": true
|
||||
"packageRules": [
|
||||
{
|
||||
"matchDepTypes": [
|
||||
"devDependencies"
|
||||
],
|
||||
"matchUpdateTypes": [
|
||||
"lockFileMaintenance",
|
||||
"minor",
|
||||
"patch",
|
||||
"pin"
|
||||
],
|
||||
"automerge": true
|
||||
}
|
||||
],
|
||||
"timezone": "America/New_York"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user