1.1.19 • Published 1 year ago

@slicemachine/core v1.1.19

Weekly downloads
-
License
MIT
Repository
-
Last release
1 year ago

Slice Machine Core

Primitive operations and data models for the Slicemachine world.

Structure

The core is structured in sub-packages that can be used and imported independently. Although most of the operations it provides are filesystem based, you should be able to import Models and utilities in browser-based environments.

Node-Utils

Query and parse Slicemachine data in the Filesystem

Framework

Some parts of Slicemachine are framework dependent. Use autodetectFramework to get what's identified in your package.json.

import { autodetectFramework } from "@slicemachine/core/build/node-utils";

(async () => {
  const framework = autodetectFramework("." /* project cwd */);
})();

Manifest

Slicemachine projects rely on an sm.json file to configure the behaviour of the plugin (slice-machine-ui mostly).

import * as Manifest from "@slicemachine/core/build/node-utils/manifest";
import { DEFAULT_BASE } from "@slicemachine/core/build/consts";

(async () => {
  const cwd = "./";

  // creates a manifest at path `./sm.json`
  createManifest(cwd, { apiEndpoint: "https://my-project.prismic.io/api/v2" });

  // my-project
  const maybeRepoName = maybeRepoNameFromSMFile(cwd, DEFAULT_BASE);

  patchManifest(cwd, { storybook: `https://${maybeRepoName}.vercel.app` });

  const { exists, content } = retrieveManifest(cwd);

  console.log({ exists, content }); // true, { apiEndpoint, storybook }
})();

Paths

Resolve paths in the context of a Slicemachine project.

Pkg

Work with package.json files

import {
  retrieveJsonPackage,
  patchJsonPackage,
} from "@slicemachine/core/build/node-utils";

(async () => {
  const cwd = "./";
  patchJsonPackage(cwd, { name: "new-name" });
  const { exists, content } = retrieveJsonPackage(cwd);
})();

Libraries (wip)

An essential data model in Slicemachine is Library: a set of components that hold code, Prismic Slice model, screenshots and mocks.

Once registered, retrieve them from the Filesystem

import { libraries } from "@slicemachine/core/build/libraries";

(async () => {
  const cwd = "./";
  const libs = [/* local */ "~/slices", /* in node_modules */ "shared-lib"];

  const myLibs = libraries(cwd, libs);
  /*
        [
            name: string,
            path: string,
            isLocal: boolean,
            components: [{
                from: string,
                href: string,
                pathToSlice: string,
                infos: ComponentInfo,
                model: SliceAsObject,
                migrated: boolean,
            }]
        ]

    */
})();

Models

Types (+ helpers) of Slicemachine data models

Prismic

Helpers to interact with Prismic and Prismic Shared Config object (~/.prismic)

Utils (expanding)

Various helpers to deal with Slicemachine specifics

import { pascalize, snakelize } from "@slicemachine/core/build/utils";

(async () => {
  const camelName = "camelName";

  const componentName = pascalize(camelName); // CamelName
  const prismicId = snakelize(camelName); // camel_name
})();
1.1.19

1 year ago

1.1.18

1 year ago

1.1.16

1 year ago

1.1.17

1 year ago

1.1.14-dev.0

2 years ago

1.1.15

1 year ago

1.1.14

2 years ago

1.1.14-dev.10

2 years ago

1.1.14-dev.9

2 years ago

1.1.14-dev.3

2 years ago

1.1.13

2 years ago

1.1.13-alpha.3

2 years ago

1.1.13-alpha.2

2 years ago

1.1.13-alpha.1

2 years ago

1.1.11-alpha.1

2 years ago

1.1.11-alpha.3

2 years ago

1.1.11-alpha.4

2 years ago

1.1.12

2 years ago

1.1.11

2 years ago

1.1.10

2 years ago

1.1.12-alpha.1

2 years ago

1.1.12-alpha.6

2 years ago

1.1.12-alpha.7

2 years ago

1.1.12-alpha.2

2 years ago

1.1.12-alpha.3

2 years ago

1.1.12-alpha.4

2 years ago

1.1.12-alpha.5

2 years ago

1.1.13-alpha.0

2 years ago

1.1.10-alpha.1

2 years ago

1.1.10-alpha.2

2 years ago

1.1.9

2 years ago

1.1.9-alpha.1

2 years ago

1.1.8

2 years ago

1.1.7

2 years ago

1.1.6

2 years ago

1.1.6-alpha.2

2 years ago

1.1.6-alpha.3

2 years ago

1.1.6-alpha.4

2 years ago

1.1.6-alpha.5

2 years ago

1.1.6-alpha.6

2 years ago

1.1.7-alpha.3

2 years ago

1.1.7-alpha.2

2 years ago

1.1.7-alpha.1

2 years ago

1.1.8-alpha.1

2 years ago

1.1.5

2 years ago

1.1.6-alpha.1

2 years ago

1.1.5-alpha.13

2 years ago

1.1.5-alpha.10

2 years ago

1.1.5-alpha.11

2 years ago

1.1.5-alpha.12

2 years ago

1.1.5-alpha.1

2 years ago

1.1.5-alpha.6

2 years ago

1.1.5-alpha.7

2 years ago

1.1.5-alpha.8

2 years ago

1.1.5-alpha.2

2 years ago

1.1.5-alpha.3

2 years ago

1.1.5-alpha.4

2 years ago

1.1.5-alpha.5

2 years ago

1.1.3-alpha.13

2 years ago

1.1.3-alpha.12

2 years ago

1.1.4

2 years ago

1.1.3

2 years ago

1.1.4-alpha.0

2 years ago

1.1.3-alpha.11

2 years ago

1.1.3-alpha.10

2 years ago

1.1.2

2 years ago

1.1.2-alpha.17

2 years ago

1.1.2-alpha.18

2 years ago

1.1.2-alpha.19

2 years ago

1.1.2-alpha.20

2 years ago

1.1.2-alpha.21

2 years ago

1.1.3-alpha.1

2 years ago

1.1.3-alpha.0

2 years ago

1.1.3-alpha.3

2 years ago

1.1.3-alpha.2

2 years ago

1.1.3-alpha.9

2 years ago

1.1.3-alpha.8

2 years ago

1.1.3-alpha.5

2 years ago

1.1.3-alpha.4

2 years ago

1.1.3-alpha.7

2 years ago

1.1.3-alpha.6

2 years ago

1.1.1-alpha.15

2 years ago

1.1.1-alpha.16

2 years ago

1.1.1-alpha.13

2 years ago

1.1.1-alpha.14

2 years ago

1.1.1-alpha.19

2 years ago

1.1.1-alpha.17

2 years ago

1.1.1-alpha.18

2 years ago

1.1.1-alpha.11

2 years ago

1.1.1-alpha.12

2 years ago

1.1.1-alpha.10

2 years ago

1.1.1-alpha.8

2 years ago

1.1.1-alpha.9

2 years ago

1.1.1-alpha.6

2 years ago

1.1.1-alpha.7

2 years ago

1.1.1-alpha.24

2 years ago

1.1.1-alpha.4

2 years ago

1.1.1-alpha.5

2 years ago

1.1.1-alpha.2

2 years ago

1.1.1-alpha.3

2 years ago

1.1.1-alpha.22

2 years ago

1.1.1-alpha.0

2 years ago

1.1.1-alpha.23

2 years ago

1.1.1-alpha.1

2 years ago

1.1.1-alpha.20

2 years ago

1.1.1-alpha.21

2 years ago

1.1.1

2 years ago

1.0.2-alpha.51

2 years ago

1.1.0

2 years ago

1.0.2-alpha.50

2 years ago

1.1.2-alpha.7

2 years ago

1.1.2-alpha.8

2 years ago

1.1.2-alpha.5

2 years ago

1.1.2-alpha.6

2 years ago

1.1.2-alpha.9

2 years ago

1.1.2-alpha.10

2 years ago

1.1.2-alpha.11

2 years ago

1.1.2-alpha.12

2 years ago

1.1.2-alpha.13

2 years ago

1.1.2-alpha.14

2 years ago

1.1.2-alpha.15

2 years ago

1.1.2-alpha.0

2 years ago

1.1.2-alpha.16

2 years ago

1.1.2-alpha.3

2 years ago

1.1.2-alpha.4

2 years ago

1.1.2-alpha.1

2 years ago

1.1.2-alpha.2

2 years ago

1.0.2-alpha.30

2 years ago

1.0.2-alpha.33

2 years ago

1.0.2-alpha.34

2 years ago

1.0.2-alpha.31

2 years ago

1.0.2-alpha.32

2 years ago

1.0.2-alpha.37

2 years ago

1.0.2-alpha.38

2 years ago

1.0.2-alpha.35

2 years ago

1.0.2-alpha.36

2 years ago

1.0.2-alpha.39

2 years ago

1.0.2-alpha.40

2 years ago

1.0.2-alpha.44

2 years ago

1.0.2-alpha.45

2 years ago

1.0.2-alpha.42

2 years ago

1.0.2-alpha.43

2 years ago

1.0.2-alpha.48

2 years ago

1.0.2-alpha.49

2 years ago

1.0.2-alpha.46

2 years ago

1.0.2-alpha.47

2 years ago

1.0.2-alpha.23

2 years ago

1.0.2-alpha.26

2 years ago

1.0.2-alpha.27

2 years ago

1.0.2-alpha.24

2 years ago

1.0.2-alpha.25

2 years ago

1.0.2-alpha.28

2 years ago

1.0.2-alpha.29

2 years ago

1.0.1

2 years ago

1.0.2-alpha.11

2 years ago

1.0.2-alpha.8

2 years ago

1.0.2-alpha.12

2 years ago

1.0.2-alpha.9

2 years ago

1.0.2-alpha.10

2 years ago

1.0.2-alpha.7

2 years ago

1.0.2-alpha.15

2 years ago

1.0.2-alpha.16

2 years ago

1.0.2-alpha.13

2 years ago

1.0.2-alpha.14

2 years ago

1.0.2-alpha.19

2 years ago

1.0.2-alpha.17

2 years ago

1.0.2-alpha.18

2 years ago

1.0.2-alpha.4

2 years ago

1.0.2-alpha.5

2 years ago

1.0.2-alpha.2

2 years ago

1.0.2-alpha.3

2 years ago

1.0.2-alpha.1

2 years ago

1.0.2-alpha.22

2 years ago

1.0.2-alpha.20

2 years ago

1.0.2-alpha.21

2 years ago

1.0.1-beta.2

2 years ago

1.0.1-beta.1

2 years ago

1.0.1-beta.0

2 years ago

1.0.1-beta.3

2 years ago

0.0.1

2 years ago

0.1.1-alpha.0

2 years ago

1.0.0

2 years ago

0.1.1-beta-2

2 years ago

0.1.1-beta

3 years ago

0.1.2

3 years ago

0.1.1

3 years ago

0.1.0

3 years ago