Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
1 change: 0 additions & 1 deletion .babelrc
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
"@babel/preset-react"
],
"plugins": [
"inline-svg",
"@babel/plugin-proposal-object-rest-spread",
"@babel/plugin-proposal-class-properties"
]
Expand Down
2 changes: 2 additions & 0 deletions .npmignore
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,5 @@
lib/index.*
lib/*.test.js
lib/__mocks__/*
tmp/*

5 changes: 5 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,11 @@ upgrade:
npm update

publish:
echo "** npm login if you haven't already **"
npm whoami
npm run build:library
npm publish --access public

release:
npm install
bat docs/RELEASE_QUESTIONS.md
6 changes: 6 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -116,3 +116,9 @@ export default class App extends Component {
```

# Trigger a build

The primary way to promote react-discovery-ui code to a production environment is to produce an npmjs release (i.e. publish it to npmjs). Previously (before 2026)
this was triggered by creating a GitHub Release, which ran a GitHub Actions workflow. Currently in 2026 this is being done by publishing from the local environment
with npmjs credentials. See the publish target in the Makefile for details.

In the future we should re-enable the previous GitHub Actions flow by generating a new npm access token and storing it as the npm_token secret in the GitHub repository settings.
6 changes: 3 additions & 3 deletions cypress/e2e/dataset_details_page.cy.js
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@ describe('Write SQL Tab for Ogrip dataset', function () {
cy.visit('/dataset/ogrip/622746a5_4e2a_4a4c_ac18_74cb1fb05ab3')
cy.intercept(routes['622746a5_4e2a_4a4c_ac18_74cb1fb05ab3'].query.url).as('getQueryResults')
const query = 'SELECT * FROM ohio_geographically_referenced_information_program_ogrip__622746a5_4e2a_4a4c_ac18_74cb1fb05ab3\nLIMIT 200'
const numberOfRowsPerPage = 50
const numberOfRows = 11
cy.get(writeSqlTab).click()
cy.wait(['@getQueryResults'])
cy.contains('Enter your SQL query below. For best performance, you should limit your results to no more than 20,000 rows.')
Expand All @@ -123,7 +123,7 @@ describe('Write SQL Tab for Ogrip dataset', function () {
cy.get(reactTable).should('be.visible')
cy.get(tableHeader).children().should('have.length', 1)
cy.get(tableHeader).children().eq(0).contains('feature')
cy.get(tableBody).children().should('have.length', numberOfRowsPerPage)
cy.get(tableBody).children().should('have.length', numberOfRows)
cy.get(paginatorInput).should('have.value', '1')
cy.get(totalPages).contains('1')
})
Expand Down Expand Up @@ -171,7 +171,7 @@ describe('Write SQL Tab for System dataset', function () {
it('Writing query and hitting submit returns nothing if cancel is hit before response returns', function () {
const query = 'SELECT is_alive, name, type FROM Rosa_Lucky__Cesious_Black_OBWEG\nLIMIT 200'
cy.get(queryInput).clear().type(query)
cy.intercept({url: routes.SYS_d3bf2154_1cda_11ea_a56a_0242ac110002.query3.url, method: routes.SYS_d3bf2154_1cda_11ea_a56a_0242ac110002.query3.method}, (req) => {req.on('response', (res) => {res.setDelay(1000)})}).as('getQueryResults')
cy.intercept({ url: routes.SYS_d3bf2154_1cda_11ea_a56a_0242ac110002.query3.url, method: routes.SYS_d3bf2154_1cda_11ea_a56a_0242ac110002.query3.method }, (req) => { req.on('response', (res) => { res.setDelay(1000) }) }).as('getQueryResults')
cy.get(submitQueryButton).click()
cy.get(cancelQueryButton).click()
cy.get(errorMessage).should('be.visible')
Expand Down
2 changes: 1 addition & 1 deletion cypress/support/commands.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,4 @@
// commands please read more here:
// https://on.cypress.io/custom-commands
// ***********************************************
//
//
36 changes: 18 additions & 18 deletions cypress/support/details_page.js
Original file line number Diff line number Diff line change
Expand Up @@ -21,13 +21,13 @@ export const Selectors = {
successMessage: '[data-testid=success-message]',
errorMessage: '[data-testid=error-message]',
numRecords: '#numRecords',
reactTable: '#data-view-table > .ReactTable',
tableHeader: '[data-testid=query-view] #data-view-table > .ReactTable > .rt-table > .rt-thead > .rt-tr',
tableBody: '#data-view-table > .ReactTable > .rt-table > .rt-tbody',
paginatorInput: '#data-view-table > .ReactTable input',
pageNumber: '#react-tabs-15 > #data-view-table > .ReactTable > .pagination-bottom > .-pagination > .-center > .-pageInfo > .-pageJump > input',
nextPageButton: '#react-tabs-15 > #data-view-table > .ReactTable > .pagination-bottom > .-pagination > .-next > .-btn',
totalPages: '#data-view-table > .ReactTable .-totalPages',
reactTable: '#data-view-table',
tableHeader: '[data-testid=query-view] #data-view-table > div > table > thead > tr',
tableBody: '#data-view-table > div > table > tbody',
paginatorInput: '[data-testid=page-number-input]',
pageNumber: '[data-testid=page-number-input]',
nextPageButton: '[data-testid=next-page-button]',
totalPages: '[data-testid=total-pages]',
submitQueryButton: '[data-testid=submit-query-button]',
cancelQueryButton: '[data-testid=cancel-query-button]',
savedVisualizationsIcon: '[data-testid=visualization-list-menu-item]',
Expand All @@ -52,28 +52,28 @@ export const Routes = {
info: {
method: 'GET',
url: '/sockjs-node/*',
response: {fixture: 'info.json'}
response: { fixture: 'info.json' }
},
ogripDataset: {
method: 'GET',
url: '/api/v1/organization/ogrip/dataset/622746a5_4e2a_4a4c_ac18_74cb1fb05ab3',
response: {fixture: 'details_page_spec/ogrip_dataset.json'}
response: { fixture: 'details_page_spec/ogrip_dataset.json' }
},
'622746a5_4e2a_4a4c_ac18_74cb1fb05ab3': {
downloadFormatGeojson: {
method: 'GET',
url: '/api/v1/dataset/622746a5-4e2a-4a4c-ac18-74cb1fb05ab3/download?_format=geojson',
response: {fixture: 'details_page_spec/622746a5_4e2a_4a4c_ac18_74cb1fb05ab3/download_format_geojson.geojson'}
response: { fixture: 'details_page_spec/622746a5_4e2a_4a4c_ac18_74cb1fb05ab3/download_format_geojson.geojson' }
},
previewFormatGeojson: {
method: 'GET',
url: '/api/v1/dataset/622746a5-4e2a-4a4c-ac18-74cb1fb05ab3/preview?_format=geojson',
response: {fixture: 'details_page_spec/622746a5_4e2a_4a4c_ac18_74cb1fb05ab3/preview_format_geojson.geojson'}
response: { fixture: 'details_page_spec/622746a5_4e2a_4a4c_ac18_74cb1fb05ab3/preview_format_geojson.geojson' }
},
previewFormatJson: {
method: 'GET',
url: '/api/v1/dataset/622746a5-4e2a-4a4c-ac18-74cb1fb05ab3/preview?_format=json',
response: {fixture: 'details_page_spec/622746a5_4e2a_4a4c_ac18_74cb1fb05ab3/preview_format_json.json'}
response: { fixture: 'details_page_spec/622746a5_4e2a_4a4c_ac18_74cb1fb05ab3/preview_format_json.json' }
},
recommendations: {
method: 'GET',
Expand All @@ -83,19 +83,19 @@ export const Routes = {
query: {
method: 'POST',
url: '/api/v1/query',
response: {fixture: 'details_page_spec/622746a5_4e2a_4a4c_ac18_74cb1fb05ab3/query_response.json'}
response: { fixture: 'details_page_spec/622746a5_4e2a_4a4c_ac18_74cb1fb05ab3/query_response.json' }
}
},
sysDataset: {
method: 'GET',
url: '/api/v1/organization/SYS_d3bf2154_1cda_11ea_a56a_0242ac110002_ORG/dataset/Cesious_Black_OBWEG',
response: {fixture: 'details_page_spec/sysDataset.json'}
response: { fixture: 'details_page_spec/sysDataset.json' }
},
SYS_d3bf2154_1cda_11ea_a56a_0242ac110002: {
previewFormatJson: {
method: 'GET',
url: '/api/v1/dataset/SYS_d3bf2154_1cda_11ea_a56a_0242ac110002/preview?_format=json',
response: {fixture: 'details_page_spec/SYS_d3bf2154_1cda_11ea_a56a_0242ac110002/preview_format_json.json'}
response: { fixture: 'details_page_spec/SYS_d3bf2154_1cda_11ea_a56a_0242ac110002/preview_format_json.json' }
},
recommendations: {
method: 'GET',
Expand All @@ -105,17 +105,17 @@ export const Routes = {
query1: {
method: 'POST',
url: '/api/v1/query',
response: {fixture: 'details_page_spec/SYS_d3bf2154_1cda_11ea_a56a_0242ac110002/query_response.json'}
response: { fixture: 'details_page_spec/SYS_d3bf2154_1cda_11ea_a56a_0242ac110002/query_response.json' }
},
query2: {
method: 'POST',
url: '/api/v1/query',
response: {fixture: 'details_page_spec/SYS_d3bf2154_1cda_11ea_a56a_0242ac110002/query_response2.json'}
response: { fixture: 'details_page_spec/SYS_d3bf2154_1cda_11ea_a56a_0242ac110002/query_response2.json' }
},
query3: {
method: 'POST',
url: '/api/v1/query',
response: {fixture: 'details_page_spec/SYS_d3bf2154_1cda_11ea_a56a_0242ac110002/query_response2.json'},
response: { fixture: 'details_page_spec/SYS_d3bf2154_1cda_11ea_a56a_0242ac110002/query_response2.json' },
delay: 1000
}
}
Expand Down
24 changes: 12 additions & 12 deletions cypress/support/search_page.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,61 +17,61 @@ export const Routes = {
allDatasetsLastModified: {
method: 'GET',
url: '/api/v2/dataset/search?offset=0&limit=10&sort=last_mod&query=&apiAccessible=true',
response: {fixture: 'search_page_spec/all_datasets_last_modified.json'}
response: { fixture: 'search_page_spec/all_datasets_last_modified.json' }
},
allDatasetsNameAsc: {
method: 'GET',
url: '/api/v2/dataset/search?offset=0&limit=10&sort=name_asc&query=&apiAccessible=true',
response: {fixture: 'search_page_spec/all_datasets_name_asc.json'}
response: { fixture: 'search_page_spec/all_datasets_name_asc.json' }
},
allDatasetsRelevance: {
method: 'GET',
url: '/api/v2/dataset/search?offset=0&limit=10&sort=relevance&query=&apiAccessible=true',
response: {fixture: 'search_page_spec/all_datasets_relevance.json'}
response: { fixture: 'search_page_spec/all_datasets_relevance.json' }
},
allDatasetsNameDesc: {
method: 'GET',
url: '/api/v2/dataset/search?offset=0&limit=10&sort=name_desc&query=&apiAccessible=true',
response: {fixture: 'search_page_spec/all_datasets_name_desc.json'}
response: { fixture: 'search_page_spec/all_datasets_name_desc.json' }
},
allDatasetsPage2: {
method: 'GET',
url: '/api/v2/dataset/search?offset=10&limit=10&sort=name_asc&query=&apiAccessible=true',
response: {fixture: 'search_page_spec/all_datasets_page_2.json'}
response: { fixture: 'search_page_spec/all_datasets_page_2.json' }
},
apiAccessibleFalseDatasets: {
method: 'GET',
url: '/api/v2/dataset/search?offset=0&limit=10&sort=name_asc&query=&apiAccessible=false',
response: {fixture: 'search_page_spec/apiAccessible_false_datasets.json'}
response: { fixture: 'search_page_spec/apiAccessible_false_datasets.json' }
},
bicycleDatasets: {
method: 'GET',
url: '/api/v2/dataset/search?offset=0&limit=10&sort=name_asc&query=&facets%5Bkeywords%5D%5B%5D=bicycle&apiAccessible=true',
response: {fixture: 'search_page_spec/bicycle_datasets.json'}
response: { fixture: 'search_page_spec/bicycle_datasets.json' }
},
catarynDatasets: {
method: 'GET',
url: '/api/v2/dataset/search?offset=0&limit=10&sort=relevance&query=cataryn&apiAccessible=true',
response: {fixture: 'search_page_spec/cataryn_datasets.json'}
response: { fixture: 'search_page_spec/cataryn_datasets.json' }
},
cogoDatasets: {
method: 'GET',
url: '/api/v2/dataset/search?offset=0&limit=10&sort=name_asc&query=&facets%5Borganization%5D%5B%5D=COGO&apiAccessible=true',
response: {fixture: 'search_page_spec/cogo_datasets.json'}
response: { fixture: 'search_page_spec/cogo_datasets.json' }
},
cotaDatasets: {
method: 'GET',
url: '/api/v2/dataset/search?offset=0&limit=10&sort=relevance&query=COTA&apiAccessible=true',
response: {fixture: 'search_page_spec/cota_datasets.json'}
response: { fixture: 'search_page_spec/cota_datasets.json' }
},
info: {
method: 'GET',
url: '/sockjs-node/*',
response: {fixture: 'info.json'}
response: { fixture: 'info.json' }
},
ogripDataset: {
method: 'GET',
url: '/api/v1/organization/ogrip/dataset/622746a5_4e2a_4a4c_ac18_74cb1fb05ab3',
response: {fixture: 'details_page_spec/ogrip_dataset.json'}
response: { fixture: 'details_page_spec/ogrip_dataset.json' }
}
}
7 changes: 7 additions & 0 deletions docs/RELEASE_QUESTIONS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Release Check List

[ ] Did you bump the version in package.json so that releases to npm are
made without version conflict?
[ ] Did you also run npm install to update the version number in the package.lock?

If you'd like to see this code deployed after merge, don't forget to cut a release in this repo, then update the package versions in discovery-ui
Loading
Loading