Skip to content

Commit 1999e70

Browse files
committed
fix search
1 parent af40737 commit 1999e70

File tree

11 files changed

+512
-525
lines changed

11 files changed

+512
-525
lines changed

.env.example

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,2 @@
11
ALGOLIA_APP_ID=""
22
ALGOLIA_ADMIN_KEY=""
3-
AWS_ACCESS_KEY=""
4-
AWS_SECRET_KEY=""

Procfile

Lines changed: 0 additions & 1 deletion
This file was deleted.

index.js

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,8 @@
1-
require = require('esm')(module)
2-
const program = require('commander')
1+
import program from 'commander';
32

4-
const { version, description } = require('./package.json')
5-
const { runApi } = require('./lib/api')
3+
import { runApi } from './lib/api.js'
64

75
program
8-
.version(version, '-v, --version')
9-
.description(description)
106
.option(
117
'-c, --clear-index',
128
'Whether indexes of the project should be cleared while processing'
@@ -16,9 +12,9 @@ program
1612
program.on('--help', function() {
1713
console.log(`
1814
Examples:
19-
$ yarn start
20-
$ yarn start -j # to write to fs
21-
$ yarn start -c # Clear indexes before populating content
15+
$ npm start
16+
$ npm start -- -j # to write to fs
17+
$ npm start -- -c # Clear indexes before populating content
2218
`)
2319
})
2420

lib/api-docs-sync.js

Lines changed: 0 additions & 57 deletions
This file was deleted.

lib/api.js

Lines changed: 18 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
1-
require('dotenv').config()
1+
import 'dotenv/config'
22

3-
import { readJsonSync } from 'fs-extra'
3+
import fsExtra from 'fs-extra'
44
import { difference } from 'lodash-es'
55
import { gt, compare as compareSemVers } from 'semver'
6-
import downloadApiDocs from './api-docs-sync'
7-
import algoliaDriver from './drivers/algolia'
8-
import jsonDriver from './drivers/json'
9-
import schemas from './schemas'
6+
7+
import algoliaDriver from './drivers/algolia.js'
8+
import jsonDriver from './drivers/json.js'
9+
import schemas from './schemas/index.js'
10+
11+
const { readJsonSync } = fsExtra;
1012

1113
const apiIndexes = ['modules', 'classes', 'methods', 'versions']
1214

1315
export async function runApi(clearIndex = false, useJsonDriver = false) {
1416
let driver = useJsonDriver ? jsonDriver : algoliaDriver
1517

16-
await downloadApiDocs()
17-
1818
apiIndexes.map(driver.init)
1919

2020
if (clearIndex) {
@@ -32,7 +32,7 @@ async function processDocs(driver, project) {
3232

3333
const {
3434
meta: { availableVersions },
35-
} = readJsonSync(`./tmp/rev-index/${project}.json`)
35+
} = readJsonSync(`../ember-api-docs-data/rev-index/${project}.json`)
3636

3737
let versionsToProcess = difference(availableVersions, prevIndexedVersions)
3838

@@ -89,7 +89,7 @@ function addIfLatestPatch(latestPatches, version) {
8989
}
9090

9191
function filterMissingRevs(version, libName) {
92-
const emberVersionJSONPath = `./tmp/rev-index/${libName}-${version}.json`
92+
const emberVersionJSONPath = `../ember-api-docs-data/rev-index/${libName}-${version}.json`
9393
let isIncluded = true
9494
try {
9595
readJsonSync(emberVersionJSONPath)
@@ -100,7 +100,7 @@ function filterMissingRevs(version, libName) {
100100
}
101101

102102
function readIndexFileForVersion(version, libName) {
103-
const emberVersionJSONPath = `./tmp/rev-index/${libName}-${version}.json`
103+
const emberVersionJSONPath = `../ember-api-docs-data/rev-index/${libName}-${version}.json`
104104
console.debug(`OPENING:: ${emberVersionJSONPath}`)
105105
return readJsonSync(emberVersionJSONPath)
106106
}
@@ -111,20 +111,24 @@ function fetchPublicModuleClassesForVersion(versionIndexObject, libName) {
111111
].data.map(module => {
112112
// Module names are uri encoded
113113
const id = encodeURIComponent(module.id)
114-
const modulePath = `./tmp/json-docs/${libName}/${
114+
if(!versionIndexObject.meta.module[id]){
115+
console.warn(`Skipping processing module ${id} because it's missing a meta entry`);
116+
return null;
117+
}
118+
const modulePath = `../ember-api-docs-data/json-docs/${libName}/${
115119
versionIndexObject.data.attributes.version
116120
}/modules/${versionIndexObject.meta.module[id]}.json`
117121

118122
console.debug(`OPENING:: ${modulePath}`)
119123
return readJsonSync(modulePath)
120-
})
124+
}).filter(Boolean)
121125

122126
const publicClasses = versionIndexObject.data.relationships[
123127
'public-classes'
124128
].data.map(classObj => {
125129
// Class names are uri encoded
126130
const id = encodeURIComponent(classObj.id)
127-
const classPath = `./tmp/json-docs/${libName}/${
131+
const classPath = `../ember-api-docs-data/json-docs/${libName}/${
128132
versionIndexObject.data.attributes.version
129133
}/classes/${versionIndexObject.meta.class[id]}.json`
130134

lib/drivers/algolia.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
require('dotenv').config()
1+
import 'dotenv/config'
22

33
import AlgoliaSearch from 'algoliasearch'
44

lib/drivers/json.js

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
1-
import {
1+
import fsExtra from 'fs-extra'
2+
3+
const {
24
emptyDirSync,
35
existsSync,
46
outputJsonSync,
57
readJsonSync,
68
rmdirSync,
7-
} from 'fs-extra'
9+
} = fsExtra;
810

911
const { resolve } = Promise
1012

lib/schemas/index.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
import classSchema from './class'
2-
import moduleSchema from './module'
3-
import methodSchema from './method'
1+
import classSchema from './class.js'
2+
import moduleSchema from './module.js'
3+
import methodSchema from './method.js'
44

55
export default { moduleSchema, classSchema, methodSchema }

0 commit comments

Comments
 (0)