diff --git a/addon/models/rfc.js b/addon/models/rfc.js index 403d1a3..84f2a2c 100644 --- a/addon/models/rfc.js +++ b/addon/models/rfc.js @@ -4,4 +4,14 @@ const { Model } = DS; export default Model.extend({ content: DS.attr(), html: DS.attr(), + + startDate: DS.attr('date'), + releaseDate: DS.attr('date'), + releaseVersions: DS.attr(), + proposalPr: DS.attr(), + trackingLink: DS.attr(), + + + teams: DS.hasMany('team'), + stage: DS.belongsTo('stage'), }); diff --git a/addon/models/stage.js b/addon/models/stage.js new file mode 100644 index 0000000..3236fad --- /dev/null +++ b/addon/models/stage.js @@ -0,0 +1,8 @@ +import DS from 'ember-data'; +const { Model } = DS; + +export default Model.extend({ + content: DS.attr(), + html: DS.attr(), + name: DS.attr(), +}); diff --git a/addon/models/team.js b/addon/models/team.js new file mode 100644 index 0000000..3236fad --- /dev/null +++ b/addon/models/team.js @@ -0,0 +1,8 @@ +import DS from 'ember-data'; +const { Model } = DS; + +export default Model.extend({ + content: DS.attr(), + html: DS.attr(), + name: DS.attr(), +}); diff --git a/addon/serializers/application.js b/addon/serializers/application.js new file mode 100644 index 0000000..6699168 --- /dev/null +++ b/addon/serializers/application.js @@ -0,0 +1,5 @@ +import DS from 'ember-data'; + +export default DS.JSONAPISerializer.extend({ + keyForAttribute(key) { return key; } +}); diff --git a/app/models/stage.js b/app/models/stage.js new file mode 100644 index 0000000..74627cf --- /dev/null +++ b/app/models/stage.js @@ -0,0 +1 @@ +export { default } from 'rfc-process/models/stage'; diff --git a/app/models/team.js b/app/models/team.js new file mode 100644 index 0000000..630be8f --- /dev/null +++ b/app/models/team.js @@ -0,0 +1 @@ +export { default } from 'rfc-process/models/team'; diff --git a/app/serializers/application.js b/app/serializers/application.js new file mode 100644 index 0000000..623c42c --- /dev/null +++ b/app/serializers/application.js @@ -0,0 +1 @@ +export { default } from 'rfc-process/serializers/application'; diff --git a/index.js b/index.js index 0d379ec..955e393 100644 --- a/index.js +++ b/index.js @@ -64,6 +64,18 @@ module.exports = { references: ['teams', 'stage'] }); + const teamsJSON = new StaticSiteJson(join(dataDirectory, 'teams'), { + contentFolder: 'teams', + type: 'teams', + attributes: ['name'], + }); + + const stagesJSON = new StaticSiteJson(join(dataDirectory, 'stages'), { + contentFolder: 'stages', + type: 'stages', + attributes: ['name'], + }); + const readmeFile = funnel(dataDirectory, { files: ['README.md'] }); @@ -77,7 +89,7 @@ module.exports = { const tocFile = writeFile('/tocs/rfc.json', JSON.stringify(TocSerializer.serialize({ id: 'rfc', links: rfcs }))); - const trees = [rfcsJSON, tocFile, pagesJSON] + const trees = [rfcsJSON, teamsJSON, stagesJSON, tocFile, pagesJSON] if(existsSync(join(dataDirectory, 'images'))) { const images = funnel(join(dataDirectory, 'images'), { diff --git a/tests/dummy/stages/ready-for-release.md b/tests/dummy/stages/ready-for-release.md new file mode 100644 index 0000000..e64ea40 --- /dev/null +++ b/tests/dummy/stages/ready-for-release.md @@ -0,0 +1,3 @@ +--- +name: Ready For Release +--- diff --git a/tests/dummy/teams/framework.md b/tests/dummy/teams/framework.md new file mode 100644 index 0000000..7164195 --- /dev/null +++ b/tests/dummy/teams/framework.md @@ -0,0 +1,3 @@ +--- +name: Framework +--- diff --git a/tests/dummy/teams/learning.md b/tests/dummy/teams/learning.md new file mode 100644 index 0000000..62de9cc --- /dev/null +++ b/tests/dummy/teams/learning.md @@ -0,0 +1,3 @@ +--- +name: Learning +---