@osdk/maker 0.13.0-beta.8 → 0.13.0-beta.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -23,7 +23,7 @@ import { hideBin } from "yargs/helpers";
23
23
  import { defineOntology } from "../api/defineOntology.js";
24
24
  const apiNamespaceRegex = /^[a-z0-9-]+(\.[a-z0-9-]+)*\.$/;
25
25
  export default async function main(args = process.argv) {
26
- const commandLineOpts = await yargs(hideBin(args)).version("0.13.0-beta.8" ?? "").wrap(Math.min(150, yargs().terminalWidth())).strict().help().options({
26
+ const commandLineOpts = await yargs(hideBin(args)).version("0.13.0-beta.9" ?? "").wrap(Math.min(150, yargs().terminalWidth())).strict().help().options({
27
27
  input: {
28
28
  alias: "i",
29
29
  describe: "Input file",
@@ -55,12 +55,14 @@ var CREATE_OR_MODIFY_OBJECT_PARAMETER = "objectToCreateOrModifyParameter";
55
55
  // src/api/defineObject.ts
56
56
  var ISO_8601_DURATION = /^P(?!$)(?:(?:((?:\d+Y)|(?:\d+(?:\.|,)\d+Y$))?((?:\d+M)|(?:\d+(?:\.|,)\d+M$))?((?:\d+D)|(?:\d+(?:\.|,)\d+D$))?(T((?:\d+H)|(?:\d+(?:\.|,)\d+H$))?((?:\d+M)|(?:\d+(?:\.|,)\d+M$))?((?:\d+S)|(?:\d+(?:\.|,)\d+S$))?)?)|(?:\d+(?:(?:\.|,)\d+)?W))$/;
57
57
  var ISO_8601_DATETIME = /^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[+-]\d{2}:\d{2})?)?$/;
58
+ var API_NAME_PATTERN = /^([a-zA-Z][a-zA-Z0-9\\-]*)$/;
58
59
  function defineObject(objectDef) {
59
60
  const apiName = namespace + objectDef.apiName;
60
61
  const propertyApiNames = objectDef.properties ? Object.keys(objectDef.properties) : [];
61
62
  if (ontologyDefinition[OntologyEntityTypeEnum.OBJECT_TYPE][apiName] !== void 0) {
62
63
  throw new Error(`Object type with apiName ${objectDef.apiName} is already defined`);
63
64
  }
65
+ !API_NAME_PATTERN.test(objectDef.apiName) ? process.env.NODE_ENV !== "production" ? invariant5__default.default(false, `Invalid API name ${objectDef.apiName}. API names must match the regex ${API_NAME_PATTERN}.`) : invariant5__default.default(false) : void 0;
64
66
  !propertyApiNames.includes(objectDef.titlePropertyApiName) ? process.env.NODE_ENV !== "production" ? invariant5__default.default(false, `Title property ${objectDef.titlePropertyApiName} is not defined on object ${objectDef.apiName}`) : invariant5__default.default(false) : void 0;
65
67
  !propertyApiNames.includes(objectDef.primaryKeyPropertyApiName) ? process.env.NODE_ENV !== "production" ? invariant5__default.default(false, `Primary key property ${objectDef.primaryKeyPropertyApiName} does not exist on object ${objectDef.apiName}`) : invariant5__default.default(false) : void 0;
66
68
  !!objectDef.properties?.[objectDef.primaryKeyPropertyApiName]?.editOnly ? process.env.NODE_ENV !== "production" ? invariant5__default.default(false, `Primary key property ${objectDef.primaryKeyPropertyApiName} on object ${objectDef.apiName} cannot be edit-only`) : invariant5__default.default(false) : void 0;
@@ -1647,7 +1649,7 @@ function convertCardinality(cardinality) {
1647
1649
  // src/cli/main.ts
1648
1650
  var apiNamespaceRegex = /^[a-z0-9-]+(\.[a-z0-9-]+)*\.$/;
1649
1651
  async function main(args = process.argv) {
1650
- const commandLineOpts = await yargs__default.default(helpers.hideBin(args)).version("0.13.0-beta.8").wrap(Math.min(150, yargs__default.default().terminalWidth())).strict().help().options({
1652
+ const commandLineOpts = await yargs__default.default(helpers.hideBin(args)).version("0.13.0-beta.9").wrap(Math.min(150, yargs__default.default().terminalWidth())).strict().help().options({
1651
1653
  input: {
1652
1654
  alias: "i",
1653
1655
  describe: "Input file",