How to use where clause in Knex
Create refunds with Stripe
Load HTML with Cheerio
How to send POST request with Axios
Find intersection of array in Lodash
Powered by Official white Bloop logo with a period

Terms / Privacy / Search / Support

  • import { Architect } from "@angular-devkit/architect";
    import { TestingArchitectHost } from "@angular-devkit/architect/testing";
    import { schema } from "@angular-devkit/core";
    import { promises as fs } from "fs";
    
    describe("Copy File Builder", () => {
      let architect: Architect;
      let architectHost: TestingArchitectHost;
    
      beforeEach(async () => {
        const registry = new schema.CoreSchemaRegistry();
        registry.addPostTransform(
          schema.transforms.addUndefinedDefaults
        );
    
        // TestingArchitectHost() takes workspace and current directories.
        // Since we don't use those, both are the same in this case.
        architectHost = new TestingArchitectHost(
          __dirname,
          __dirname
        );
        architect = new Architect(architectHost, registry);
    
        // This will either take a Node package name, or a path to the directory
        // for the package.json file.
        await architectHost.addBuilderFromPackage("..");
      });
    
      it("can copy files", async () => {
        // A "run" can have multiple outputs, and contains progress information.
        const run = await architect.scheduleBuilder(
          "@example/copy-file:copy",
          {
            source: "package.json",
            destination: "package-copy.json",
          }
        );
    
        // The "result" member (of type BuilderOutput) is the next output.
        const output = await run.result;
    
        // Stop the builder from running. This stops Architect from keeping
        // the builder-associated states in memory, since builders keep waiting
        // to be scheduled.
        await run.stop();
    
        // Expect that the copied file is the same as its source.
        const sourceContent = await fs.readFile(
          "package.json",
          "utf8"
        );
        const destinationContent = await fs.readFile(
          "package-copy.json",
          "utf8"
        );
        expect(destinationContent).toBe(sourceContent);
      });
    });
    
    Docs
    0
  • import { Architect } from "@angular-devkit/architect";
    import { TestingArchitectHost } from "@angular-devkit/architect/testing";
    import { schema } from "@angular-devkit/core";
    import { promises as fs } from "fs";
    
    describe("Copy File Builder", () => {
      let architect: Architect;
      let architectHost: TestingArchitectHost;
    
      beforeEach(async () => {
        const registry = new schema.CoreSchemaRegistry();
        registry.addPostTransform(
          schema.transforms.addUndefinedDefaults
        );
    
        // TestingArchitectHost() takes workspace and current directories.
        // Since we don't use those, both are the same in this case.
        architectHost = new TestingArchitectHost(
          __dirname,
          __dirname
        );
        architect = new Architect(architectHost, registry);
    
        // This will either take a Node package name, or a path to the directory
        // for the package.json file.
        await architectHost.addBuilderFromPackage("..");
      });
    
      it("can copy files", async () => {
        // A "run" can have multiple outputs, and contains progress information.
        const run = await architect.scheduleBuilder(
          "@example/copy-file:copy",
          {
            source: "package.json",
            destination: "package-copy.json",
          }
        );
    
        // The "result" member (of type BuilderOutput) is the next output.
        const output = await run.result;
    
        // Stop the builder from running. This stops Architect from keeping
        // the builder-associated states in memory, since builders keep waiting
        // to be scheduled.
        await run.stop();
    
        // Expect that the copied file is the same as its source.
        const sourceContent = await fs.readFile(
          "package.json",
          "utf8"
        );
        const destinationContent = await fs.readFile(
          "package-copy.json",
          "utf8"
        );
        expect(destinationContent).toBe(sourceContent);
      });
    });
    
    Docs
    0
  • import { NodeJsSyncHost } from "@angular-devkit/core/node";
    import { workspaces } from "@angular-devkit/core";
    
    async function demonstrate() {
      const host = workspaces.createWorkspaceHost(
        new NodeJsSyncHost()
      );
      const { workspace } = await workspaces.readWorkspace(
        "path/to/workspace/directory/",
        host
      );
    
      const project = workspace.projects.get("my-app");
      if (!project) {
        throw new Error("my-app does not exist");
      }
    
      const buildTarget = project.targets.get("build");
      if (!buildTarget) {
        throw new Error("build target does not exist");
      }
    
      buildTarget.options.optimization = true;
    
      await workspaces.writeWorkspace(workspace, host);
    }
    
    demonstrate();
    
    Docs
    0
  • import {
      Rule,
      Tree,
      SchematicsException,
      apply,
      url,
      applyTemplates,
      move,
      chain,
      mergeWith,
    } from "@angular-devkit/schematics";
    
    import {
      strings,
      normalize,
      virtualFs,
      workspaces,
    } from "@angular-devkit/core";
    
    import { Schema as MyServiceSchema } from "./schema";
    
    function createHost(tree: Tree): workspaces.WorkspaceHost {
      return {
        async readFile(path: string): Promise {
          const data = tree.read(path);
          if (!data) {
            throw new SchematicsException("File not found.");
          }
          return virtualFs.fileBufferToString(data);
        },
        async writeFile(
          path: string,
          data: string
        ): Promise {
          return tree.overwrite(path, data);
        },
        async isDirectory(path: string): Promise {
          return (
            !tree.exists(path) &&
            tree.getDir(path).subfiles.length > 0
          );
        },
        async isFile(path: string): Promise {
          return tree.exists(path);
        },
      };
    }
    
    export function myService(options: MyServiceSchema): Rule {
      return async (tree: Tree) => {
        const host = createHost(tree);
        const { workspace } = await workspaces.readWorkspace(
          "/",
          host
        );
    
        if (!options.project) {
          options.project = workspace.extensions.defaultProject;
        }
    
        const project = workspace.projects.get(options.project);
        if (!project) {
          throw new SchematicsException(
            `Invalid project name: ${options.project}`
          );
        }
    
        const projectType =
          project.extensions.projectType === "application"
            ? "app"
            : "lib";
    
        if (options.path === undefined) {
          options.path = `${project.sourceRoot}/${projectType}`;
        }
    
        const templateSource = apply(url("./files"), [
          applyTemplates({
            classify: strings.classify,
            dasherize: strings.dasherize,
            name: options.name,
          }),
          move(normalize(options.path as string)),
        ]);
    
        return chain([mergeWith(templateSource)]);
      };
    }
    
    Docs
    0
  • import {
      Rule,
      Tree,
      SchematicsException,
      apply,
      url,
      applyTemplates,
      move,
      chain,
      mergeWith,
    } from "@angular-devkit/schematics";
    
    import {
      strings,
      normalize,
      virtualFs,
      workspaces,
    } from "@angular-devkit/core";
    
    import { Schema as MyServiceSchema } from "./schema";
    
    function createHost(tree: Tree): workspaces.WorkspaceHost {
      return {
        async readFile(path: string): Promise {
          const data = tree.read(path);
          if (!data) {
            throw new SchematicsException("File not found.");
          }
          return virtualFs.fileBufferToString(data);
        },
        async writeFile(
          path: string,
          data: string
        ): Promise {
          return tree.overwrite(path, data);
        },
        async isDirectory(path: string): Promise {
          return (
            !tree.exists(path) &&
            tree.getDir(path).subfiles.length > 0
          );
        },
        async isFile(path: string): Promise {
          return tree.exists(path);
        },
      };
    }
    
    export function myService(options: MyServiceSchema): Rule {
      return async (tree: Tree) => {
        const host = createHost(tree);
        const { workspace } = await workspaces.readWorkspace(
          "/",
          host
        );
    
        if (!options.project) {
          options.project = workspace.extensions.defaultProject;
        }
    
        const project = workspace.projects.get(options.project);
        if (!project) {
          throw new SchematicsException(
            `Invalid project name: ${options.project}`
          );
        }
    
        const projectType =
          project.extensions.projectType === "application"
            ? "app"
            : "lib";
    
        if (options.path === undefined) {
          options.path = `${project.sourceRoot}/${projectType}`;
        }
    
        const templateSource = apply(url("./files"), [
          applyTemplates({
            classify: strings.classify,
            dasherize: strings.dasherize,
            name: options.name,
          }),
          move(normalize(options.path as string)),
        ]);
    
        return chain([mergeWith(templateSource)]);
      };
    }
    
    Docs
    0
  • Powered by Official black Bloop logo with a period
    download the IDE extension

    View other examples