now working
This commit is contained in:
parent
ef3f1a3188
commit
a1fec28d18
10
dist/index.d.ts
vendored
10
dist/index.d.ts
vendored
@ -1,17 +1,23 @@
|
||||
import 'typings-global';
|
||||
export declare type TFrontMatter = 'yaml' | 'json';
|
||||
export interface IParsedFM {
|
||||
data: any;
|
||||
content: string;
|
||||
orig: string;
|
||||
}
|
||||
export interface ISmartfmContructorOptions {
|
||||
fmType: TFrontMatter;
|
||||
}
|
||||
/**
|
||||
* class smartfm handles frontmatter
|
||||
*/
|
||||
export declare class Smartfm {
|
||||
fmType: TFrontMatter;
|
||||
constructor(optionsArg: ISmartfmContructorOptions);
|
||||
/**
|
||||
* add frontmatter to a string
|
||||
*/
|
||||
stringify(bodyString: string, frontmatterData: any): void;
|
||||
stringify(bodyString: string, frontmatterData: any): any;
|
||||
/**
|
||||
* parse a string that has frontmatter attached, YAML notation
|
||||
*/
|
||||
@ -24,4 +30,4 @@ export declare let parse: (stringToParse: string) => IParsedFM;
|
||||
/**
|
||||
* add frontmatter to a string
|
||||
*/
|
||||
export declare let stringify: (bodyString: string, frontmatterData: any) => void;
|
||||
export declare let stringify: (bodyString: string, frontmatterData: any) => any;
|
||||
|
7
dist/index.js
vendored
7
dist/index.js
vendored
@ -5,6 +5,9 @@ let grayMatter = require('gray-matter');
|
||||
* class smartfm handles frontmatter
|
||||
*/
|
||||
class Smartfm {
|
||||
constructor(optionsArg) {
|
||||
this.fmType = optionsArg.fmType;
|
||||
}
|
||||
/**
|
||||
* add frontmatter to a string
|
||||
*/
|
||||
@ -29,6 +32,6 @@ exports.parse = (stringToParse) => {
|
||||
* add frontmatter to a string
|
||||
*/
|
||||
exports.stringify = (bodyString, frontmatterData) => {
|
||||
grayMatter.stringify(bodyString, frontmatterData);
|
||||
return grayMatter.stringify(bodyString, frontmatterData);
|
||||
};
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsMEJBQXVCO0FBQ3ZCLElBQUksVUFBVSxHQUFHLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQTtBQVF2Qzs7R0FFRztBQUNIO0lBQ0k7O09BRUc7SUFDSCxTQUFTLENBQUMsVUFBa0IsRUFBRSxlQUFvQjtRQUM5QyxNQUFNLENBQUMsaUJBQVMsQ0FBQyxVQUFVLEVBQUUsZUFBZSxDQUFDLENBQUE7SUFDakQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsS0FBSyxDQUFDLGFBQXFCO1FBQ3ZCLE1BQU0sQ0FBQyxhQUFLLENBQUMsYUFBYSxDQUFDLENBQUE7SUFDL0IsQ0FBQztDQUNKO0FBZEQsMEJBY0M7QUFFRDs7R0FFRztBQUNRLFFBQUEsS0FBSyxHQUFHLENBQUMsYUFBcUI7SUFDckMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQTtBQUNwQyxDQUFDLENBQUE7QUFFRDs7R0FFRztBQUNRLFFBQUEsU0FBUyxHQUFHLENBQUMsVUFBa0IsRUFBRSxlQUFvQjtJQUM1RCxVQUFVLENBQUMsU0FBUyxDQUFDLFVBQVUsRUFBRSxlQUFlLENBQUMsQ0FBQTtBQUNyRCxDQUFDLENBQUEifQ==
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsMEJBQXVCO0FBQ3ZCLElBQUksVUFBVSxHQUFHLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQTtBQWN2Qzs7R0FFRztBQUNIO0lBR0ksWUFBWSxVQUFxQztRQUM3QyxJQUFJLENBQUMsTUFBTSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUE7SUFDbkMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsU0FBUyxDQUFDLFVBQWtCLEVBQUUsZUFBb0I7UUFDOUMsTUFBTSxDQUFDLGlCQUFTLENBQUMsVUFBVSxFQUFFLGVBQWUsQ0FBQyxDQUFBO0lBQ2pELENBQUM7SUFFRDs7T0FFRztJQUNILEtBQUssQ0FBQyxhQUFxQjtRQUN2QixNQUFNLENBQUMsYUFBSyxDQUFDLGFBQWEsQ0FBQyxDQUFBO0lBQy9CLENBQUM7Q0FDSjtBQXBCRCwwQkFvQkM7QUFFRDs7R0FFRztBQUNRLFFBQUEsS0FBSyxHQUFHLENBQUMsYUFBcUI7SUFDckMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQTtBQUNwQyxDQUFDLENBQUE7QUFFRDs7R0FFRztBQUNRLFFBQUEsU0FBUyxHQUFHLENBQUMsVUFBa0IsRUFBRSxlQUFvQjtJQUM1RCxNQUFNLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxVQUFVLEVBQUUsZUFBZSxDQUFDLENBQUE7QUFDNUQsQ0FBQyxDQUFBIn0=
|
10
test/test.js
10
test/test.js
@ -3,7 +3,7 @@ require("typings-test");
|
||||
const should = require("should");
|
||||
const smartfm = require("../dist/index");
|
||||
describe('smartfm', function () {
|
||||
let testSmartfm = new smartfm.Smartfm;
|
||||
let testSmartfm = new smartfm.Smartfm({ fmType: 'yaml' });
|
||||
it('.parse()', function () {
|
||||
let testString = `---
|
||||
testKey: testValue
|
||||
@ -16,10 +16,10 @@ testKey2: testValue2
|
||||
should(parsedString.orig).equal(testString);
|
||||
});
|
||||
it('.stringify', function () {
|
||||
let testStringPure = `# some markdown heading
|
||||
some first row`;
|
||||
let testStringPure = `# some markdown heading\nsome first row`;
|
||||
let testStringCombined = testSmartfm.stringify(testStringPure, { testData: 'hi' });
|
||||
console.log(testStringCombined);
|
||||
let resultString = '---\ntestData: hi\n---\n# some markdown heading\nsome first row\n';
|
||||
should(resultString).equal(testStringCombined);
|
||||
});
|
||||
});
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLHdCQUFxQjtBQUNyQixpQ0FBZ0M7QUFFaEMseUNBQXdDO0FBRXhDLFFBQVEsQ0FBQyxTQUFTLEVBQUU7SUFDaEIsSUFBSSxXQUFXLEdBQUcsSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFBO0lBQ3JDLEVBQUUsQ0FBQyxVQUFVLEVBQUU7UUFDWCxJQUFJLFVBQVUsR0FBRzs7OztnQkFJVCxDQUFBO1FBQ1IsSUFBSSxZQUFZLEdBQUcsV0FBVyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUNoRCxNQUFNLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFDLFdBQVcsQ0FBQyxDQUFBO1FBQzlELE1BQU0sQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEVBQUMsWUFBWSxDQUFDLENBQUE7UUFDaEUsTUFBTSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUE7SUFDL0MsQ0FBQyxDQUFDLENBQUE7SUFDRixFQUFFLENBQUMsWUFBWSxFQUFFO1FBQ2IsSUFBSSxjQUFjLEdBQUc7ZUFDZCxDQUFBO1FBQ1AsSUFBSSxrQkFBa0IsR0FBRyxXQUFXLENBQUMsU0FBUyxDQUFDLGNBQWMsRUFBRSxFQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUMsQ0FBQyxDQUFBO1FBQ2hGLE9BQU8sQ0FBQyxHQUFHLENBQUMsa0JBQWtCLENBQUMsQ0FBQTtJQUNuQyxDQUFDLENBQUMsQ0FBQTtBQUNOLENBQUMsQ0FBQyxDQUFBIn0=
|
||||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLHdCQUFxQjtBQUNyQixpQ0FBZ0M7QUFFaEMseUNBQXdDO0FBRXhDLFFBQVEsQ0FBQyxTQUFTLEVBQUU7SUFDaEIsSUFBSSxXQUFXLEdBQUcsSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUE7SUFDekQsRUFBRSxDQUFDLFVBQVUsRUFBRTtRQUNYLElBQUksVUFBVSxHQUFHOzs7O2dCQUlULENBQUE7UUFDUixJQUFJLFlBQVksR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQ2hELE1BQU0sQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsV0FBVyxDQUFDLENBQUE7UUFDL0QsTUFBTSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxZQUFZLENBQUMsQ0FBQTtRQUNqRSxNQUFNLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQTtJQUMvQyxDQUFDLENBQUMsQ0FBQTtJQUNGLEVBQUUsQ0FBQyxZQUFZLEVBQUU7UUFDYixJQUFJLGNBQWMsR0FBRyx5Q0FBeUMsQ0FBQTtRQUM5RCxJQUFJLGtCQUFrQixHQUFHLFdBQVcsQ0FBQyxTQUFTLENBQUMsY0FBYyxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUE7UUFDbEYsSUFBSSxZQUFZLEdBQUcsbUVBQW1FLENBQUE7UUFDdEYsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxDQUFBO0lBQ2xELENBQUMsQ0FBQyxDQUFBO0FBQ04sQ0FBQyxDQUFDLENBQUEifQ==
|
20
test/test.ts
20
test/test.ts
@ -3,23 +3,23 @@ import * as should from 'should'
|
||||
|
||||
import * as smartfm from '../dist/index'
|
||||
|
||||
describe('smartfm', function() {
|
||||
let testSmartfm = new smartfm.Smartfm
|
||||
it('.parse()', function() {
|
||||
describe('smartfm', function () {
|
||||
let testSmartfm = new smartfm.Smartfm({ fmType: 'yaml' })
|
||||
it('.parse()', function () {
|
||||
let testString = `---
|
||||
testKey: testValue
|
||||
testKey2: testValue2
|
||||
---
|
||||
# some markdown`
|
||||
let parsedString = testSmartfm.parse(testString)
|
||||
should(parsedString.data).have.property('testKey','testValue')
|
||||
should(parsedString.data).have.property('testKey2','testValue2')
|
||||
should(parsedString.data).have.property('testKey', 'testValue')
|
||||
should(parsedString.data).have.property('testKey2', 'testValue2')
|
||||
should(parsedString.orig).equal(testString)
|
||||
})
|
||||
it('.stringify', function(){
|
||||
let testStringPure = `# some markdown heading
|
||||
some first row`
|
||||
let testStringCombined = testSmartfm.stringify(testStringPure, {testData: 'hi'})
|
||||
console.log(testStringCombined)
|
||||
it('.stringify', function () {
|
||||
let testStringPure = `# some markdown heading\nsome first row`
|
||||
let testStringCombined = testSmartfm.stringify(testStringPure, { testData: 'hi' })
|
||||
let resultString = '---\ntestData: hi\n---\n# some markdown heading\nsome first row\n'
|
||||
should(resultString).equal(testStringCombined)
|
||||
})
|
||||
})
|
||||
|
@ -49,5 +49,5 @@ export let parse = (stringToParse: string): IParsedFM => {
|
||||
* add frontmatter to a string
|
||||
*/
|
||||
export let stringify = (bodyString: string, frontmatterData: any) => {
|
||||
grayMatter.stringify(bodyString, frontmatterData)
|
||||
return grayMatter.stringify(bodyString, frontmatterData)
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user