Using a better demo naming system

This commit is contained in:
Dolan
2019-08-06 23:08:21 +01:00
parent 82fef4c2b1
commit b741db3050
51 changed files with 22 additions and 15 deletions

View File

@ -1,3 +1,5 @@
// Highlighting text
// Import from 'docx' rather than '../build' if you install from npm
import * as fs from "fs";
import { AlignmentType, Document, Header, Packer, Paragraph, TextRun } from "../build";

View File

@ -1,3 +1,5 @@
// Shading text
// Import from 'docx' rather than '../build' if you install from npm
import * as fs from "fs";
import { AlignmentType, Document, Header, Packer, Paragraph, ShadingType, TextRun } from "../build";
@ -18,7 +20,7 @@ doc.addSection({
font: {
name: "Garamond",
},
shadow: {
shading: {
type: ShadingType.REVERSE_DIAGONAL_STRIPE,
color: "00FFFF",
fill: "FF0000",

View File

@ -19,13 +19,16 @@ prompt.start();
prompt.get(schema, (_, result) => {
const demoNumber = result.number;
const filePath = `./demo/demo${demoNumber}.ts`;
const files = fs.readdirSync("./demo").filter((fn) => fn.startsWith(demoNumber));
if (!fs.existsSync(filePath)) {
console.error(`demo${demoNumber} does not exist: ${filePath}`);
if (files.length === 0) {
console.error(`demo number ${demoNumber} does not exist`);
return;
}
console.log(`Running demo ${demoNumber}`);
const filePath = `./demo/${files[0]}`;
console.log(`Running demo ${demoNumber}: ${files[0]}`);
if (shelljs.exec(`npm run ts-node -- ${filePath}`).code === 0) {
console.log("Document created successfully");
} else {

View File

@ -205,7 +205,7 @@ export class LevelBase extends XmlComponent {
}
public shadow(value: string, fill: string, color: string): Level {
this.addRunProperty(new formatting.Shadow(value, fill, color));
this.addRunProperty(new formatting.Shading(value, fill, color));
return this;
}
// --------------------- Paragraph formatting ------------------------ //

View File

@ -201,7 +201,7 @@ export class HighlightComplexScript extends XmlComponent {
}
}
export class Shadow extends XmlComponent {
export class Shading extends XmlComponent {
constructor(value: string, fill: string, color: string) {
super("w:shd");
this.root.push(

View File

@ -158,7 +158,7 @@ describe("Run", () => {
describe("#shadow()", () => {
it("it should add shadow to the properties", () => {
const run = new Run({
shadow: {
shading: {
type: ShadingType.PERCENT_10,
fill: "00FFFF",
color: "FF0000",

View File

@ -15,7 +15,7 @@ import {
Italics,
ItalicsComplexScript,
RightToLeft,
Shadow,
Shading,
ShadowComplexScript,
Size,
SizeComplexScript,
@ -51,7 +51,7 @@ export interface IRunOptions {
readonly hint?: string;
};
readonly highlight?: string;
readonly shadow?: {
readonly shading?: {
readonly type: ShadingType;
readonly fill: string;
readonly color: string;
@ -130,9 +130,9 @@ export class Run extends XmlComponent {
this.properties.push(new HighlightComplexScript(options.highlight));
}
if (options.shadow) {
this.properties.push(new Shadow(options.shadow.type, options.shadow.fill, options.shadow.color));
this.properties.push(new ShadowComplexScript(options.shadow.type, options.shadow.fill, options.shadow.color));
if (options.shading) {
this.properties.push(new Shading(options.shading.type, options.shading.fill, options.shading.color));
this.properties.push(new ShadowComplexScript(options.shading.type, options.shading.fill, options.shading.color));
}
}

View File

@ -64,6 +64,6 @@ export class CharacterStyle extends Style {
}
public shadow(value: string, fill: string, color: string): CharacterStyle {
return this.addRunProperty(new formatting.Shadow(value, fill, color));
return this.addRunProperty(new formatting.Shading(value, fill, color));
}
}

View File

@ -119,7 +119,7 @@ export class ParagraphStyle extends Style {
}
public shadow(value: string, fill: string, color: string): ParagraphStyle {
return this.addRunProperty(new formatting.Shadow(value, fill, color));
return this.addRunProperty(new formatting.Shading(value, fill, color));
}
// --------------------- Paragraph formatting ------------------------ //