@api-client/core 0.12.0 → 0.12.1

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.
Files changed (125) hide show
  1. package/build/src/amf/AmfShapeGenerator.js +3 -3
  2. package/build/src/amf/AmfShapeGenerator.js.map +1 -1
  3. package/build/src/amf/DataValueGenerator.d.ts.map +1 -1
  4. package/build/src/amf/DataValueGenerator.js +3 -2
  5. package/build/src/amf/DataValueGenerator.js.map +1 -1
  6. package/build/src/amf/models/AmfDataNode.d.ts.map +1 -1
  7. package/build/src/amf/models/AmfDataNode.js +2 -2
  8. package/build/src/amf/models/AmfDataNode.js.map +1 -1
  9. package/build/src/lib/uuid.d.ts +1 -1
  10. package/build/src/lib/uuid.js +1 -1
  11. package/build/src/lib/uuid.js.map +1 -1
  12. package/build/src/mocking/lib/History.js +8 -8
  13. package/build/src/mocking/lib/History.js.map +1 -1
  14. package/build/src/mocking/lib/HostRules.js +1 -1
  15. package/build/src/mocking/lib/HostRules.js.map +1 -1
  16. package/build/src/mocking/lib/User.js +2 -2
  17. package/build/src/mocking/lib/User.js.map +1 -1
  18. package/build/src/modeling/DataDomain.d.ts.map +1 -1
  19. package/build/src/modeling/DataDomain.js +2 -3
  20. package/build/src/modeling/DataDomain.js.map +1 -1
  21. package/build/src/modeling/DomainFile.js +2 -2
  22. package/build/src/modeling/DomainFile.js.map +1 -1
  23. package/build/src/modeling/legacy/DataAssociation.js +3 -3
  24. package/build/src/modeling/legacy/DataAssociation.js.map +1 -1
  25. package/build/src/modeling/legacy/DataEntity.js +3 -3
  26. package/build/src/modeling/legacy/DataEntity.js.map +1 -1
  27. package/build/src/modeling/legacy/DataEntityBuilder.js +2 -2
  28. package/build/src/modeling/legacy/DataEntityBuilder.js.map +1 -1
  29. package/build/src/modeling/legacy/DataModel.js +3 -3
  30. package/build/src/modeling/legacy/DataModel.js.map +1 -1
  31. package/build/src/modeling/legacy/DataNamespace.js +3 -3
  32. package/build/src/modeling/legacy/DataNamespace.js.map +1 -1
  33. package/build/src/modeling/legacy/DataProperty.js +3 -3
  34. package/build/src/modeling/legacy/DataProperty.js.map +1 -1
  35. package/build/src/models/AuthorizationData.js +3 -3
  36. package/build/src/models/AuthorizationData.js.map +1 -1
  37. package/build/src/models/CertificateFile.js +2 -2
  38. package/build/src/models/CertificateFile.js.map +1 -1
  39. package/build/src/models/ClientCertificate.js +5 -5
  40. package/build/src/models/ClientCertificate.js.map +1 -1
  41. package/build/src/models/Environment.js +6 -6
  42. package/build/src/models/Environment.js.map +1 -1
  43. package/build/src/models/Folder.js +2 -2
  44. package/build/src/models/Folder.js.map +1 -1
  45. package/build/src/models/HostRule.js +4 -4
  46. package/build/src/models/HostRule.js.map +1 -1
  47. package/build/src/models/HttpProject.js +12 -12
  48. package/build/src/models/HttpProject.js.map +1 -1
  49. package/build/src/models/Project.d.ts.map +1 -1
  50. package/build/src/models/Project.js +2 -2
  51. package/build/src/models/Project.js.map +1 -1
  52. package/build/src/models/ProjectFolder.d.ts.map +1 -1
  53. package/build/src/models/ProjectFolder.js +6 -6
  54. package/build/src/models/ProjectFolder.js.map +1 -1
  55. package/build/src/models/ProjectRequest.d.ts.map +1 -1
  56. package/build/src/models/ProjectRequest.js +8 -8
  57. package/build/src/models/ProjectRequest.js.map +1 -1
  58. package/build/src/models/ProjectSchema.js +6 -6
  59. package/build/src/models/ProjectSchema.js.map +1 -1
  60. package/build/src/models/store/DataFile.js +2 -2
  61. package/build/src/models/store/DataFile.js.map +1 -1
  62. package/build/src/models/store/File.d.ts.map +1 -1
  63. package/build/src/models/store/File.js +3 -3
  64. package/build/src/models/store/File.js.map +1 -1
  65. package/build/src/models/store/Organization.js +3 -3
  66. package/build/src/models/store/Organization.js.map +1 -1
  67. package/build/src/models/store/Permission.js +7 -7
  68. package/build/src/models/store/Permission.js.map +1 -1
  69. package/build/src/models/store/UserIdentity.js +3 -3
  70. package/build/src/models/store/UserIdentity.js.map +1 -1
  71. package/build/src/models/transformers/ArcDexieTransformer.js +4 -4
  72. package/build/src/models/transformers/ArcDexieTransformer.js.map +1 -1
  73. package/build/src/models/transformers/ArcLegacyTransformer.js +3 -3
  74. package/build/src/models/transformers/ArcLegacyTransformer.js.map +1 -1
  75. package/build/src/models/transformers/ArcPouchTransformer.js +2 -2
  76. package/build/src/models/transformers/ArcPouchTransformer.js.map +1 -1
  77. package/build/src/models/transformers/PostmanV21Transformer.js +2 -2
  78. package/build/src/models/transformers/PostmanV21Transformer.js.map +1 -1
  79. package/build/src/models/transformers/PostmanV2Transformer.js +2 -2
  80. package/build/src/models/transformers/PostmanV2Transformer.js.map +1 -1
  81. package/build/src/patch/PatchClient.js +2 -2
  82. package/build/src/patch/PatchClient.js.map +1 -1
  83. package/build/src/runtime/store/FilesSdk.js +3 -3
  84. package/build/src/runtime/store/FilesSdk.js.map +1 -1
  85. package/data/models/example-generator-api.json +18 -18
  86. package/package.json +1 -1
  87. package/src/amf/AmfShapeGenerator.ts +3 -3
  88. package/src/amf/DataValueGenerator.ts +3 -2
  89. package/src/amf/models/AmfDataNode.ts +2 -2
  90. package/src/lib/uuid.ts +1 -1
  91. package/src/mocking/lib/History.ts +8 -8
  92. package/src/mocking/lib/HostRules.ts +1 -1
  93. package/src/mocking/lib/User.ts +2 -2
  94. package/src/modeling/DataDomain.ts +2 -3
  95. package/src/modeling/DomainFile.ts +2 -2
  96. package/src/modeling/legacy/DataAssociation.ts +3 -3
  97. package/src/modeling/legacy/DataEntity.ts +3 -3
  98. package/src/modeling/legacy/DataEntityBuilder.ts +2 -2
  99. package/src/modeling/legacy/DataModel.ts +3 -3
  100. package/src/modeling/legacy/DataNamespace.ts +3 -3
  101. package/src/modeling/legacy/DataProperty.ts +3 -3
  102. package/src/models/AuthorizationData.ts +3 -3
  103. package/src/models/CertificateFile.ts +2 -2
  104. package/src/models/ClientCertificate.ts +5 -5
  105. package/src/models/Environment.ts +6 -6
  106. package/src/models/Folder.ts +2 -2
  107. package/src/models/HostRule.ts +4 -4
  108. package/src/models/HttpProject.ts +12 -12
  109. package/src/models/Project.ts +2 -2
  110. package/src/models/ProjectFolder.ts +6 -6
  111. package/src/models/ProjectRequest.ts +8 -8
  112. package/src/models/ProjectSchema.ts +6 -6
  113. package/src/models/store/DataFile.ts +2 -2
  114. package/src/models/store/File.ts +3 -3
  115. package/src/models/store/Organization.ts +3 -3
  116. package/src/models/store/Permission.ts +7 -7
  117. package/src/models/store/UserIdentity.ts +3 -3
  118. package/src/models/transformers/ArcDexieTransformer.ts +4 -4
  119. package/src/models/transformers/ArcLegacyTransformer.ts +3 -3
  120. package/src/models/transformers/ArcPouchTransformer.ts +2 -2
  121. package/src/models/transformers/PostmanV21Transformer.ts +2 -2
  122. package/src/models/transformers/PostmanV2Transformer.ts +2 -2
  123. package/src/patch/PatchClient.ts +2 -2
  124. package/src/runtime/store/FilesSdk.ts +3 -3
  125. package/tests/unit/runtime/proxy/HttpProjectProxy.spec.ts +8 -8
@@ -2,7 +2,7 @@ import { IAmfExampleTypes, modelTypeToAmfDataType } from './AmfTypes.js';
2
2
  import { AmfNamespace } from './definitions/Namespace.js';
3
3
  import { anyShape, arrayShape, fileShape, nodeShape, propertyShape, recursiveShape, scalarShape, unionShape, } from './definitions/Shapes.js';
4
4
  import { AmfDataNode } from './models/AmfDataNode.js';
5
- import v4 from '../lib/uuid.js';
5
+ import { nanoid } from 'nanoid';
6
6
  import { DataEntityKind, DataPropertyKind } from '../models/kinds.js';
7
7
  import { DataValueGenerator } from './DataValueGenerator.js';
8
8
  /**
@@ -268,7 +268,7 @@ export class AmfShapeGenerator {
268
268
  return examples.map((current) => {
269
269
  const value = AmfDataNode.scalar(current, type).toJSON();
270
270
  const item = {
271
- id: v4(),
271
+ id: nanoid(),
272
272
  customDomainProperties: [],
273
273
  strict: true,
274
274
  types: IAmfExampleTypes,
@@ -279,7 +279,7 @@ export class AmfShapeGenerator {
279
279
  }
280
280
  _generateArrayExamples(examples, type) {
281
281
  const item = {
282
- id: v4(),
282
+ id: nanoid(),
283
283
  customDomainProperties: [],
284
284
  strict: true,
285
285
  types: IAmfExampleTypes,
@@ -1 +1 @@
1
- {"version":3,"file":"AmfShapeGenerator.js","sourceRoot":"","sources":["../../../src/amf/AmfShapeGenerator.ts"],"names":[],"mappings":"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","sourcesContent":["import { type PropertyWebBindings } from '../modeling/Bindings.js'\nimport { DataAssociation } from '../modeling/legacy/DataAssociation.js'\nimport { DataEntity } from '../modeling/legacy/DataEntity.js'\nimport { DataProperty, type DataPropertySchema } from '../modeling/legacy/DataProperty.js'\nimport { IAmfExampleTypes, modelTypeToAmfDataType } from './AmfTypes.js'\nimport { AmfNamespace } from './definitions/Namespace.js'\nimport {\n anyShape,\n arrayShape,\n fileShape,\n IApiAnyShape,\n IApiArrayShape,\n IApiDataExample,\n IApiFileShape,\n IApiNodeShape,\n IApiPropertyShape,\n IApiRecursiveShape,\n IApiScalarShape,\n IApiShape,\n IShapeUnion,\n nodeShape,\n propertyShape,\n recursiveShape,\n scalarShape,\n unionShape,\n} from './definitions/Shapes.js'\nimport { AmfDataNode } from './models/AmfDataNode.js'\nimport v4 from '../lib/uuid.js'\nimport { DataEntityKind, DataPropertyKind } from '../models/kinds.js'\nimport { DataValueGenerator } from './DataValueGenerator.js'\n\n/**\n * Serializes Data shapes (DataEntity, DataProperty, DataAssociation) to AMF-related shapes.\n *\n * This is used when defining entities (according to the `DataEntity` schema)\n * and then we want to translate this into AMF shapes.\n *\n * @deprecated This class refers to the deprecated old data domain model.\n * Use the `ShapeGenerator` with the new domain model.\n */\nexport class AmfShapeGenerator {\n #valueGenerator?: DataValueGenerator\n\n /**\n * Used with data domain value generation for entity properties.\n * Lazily loaded class only when functions are used.\n * This needs to be a class instances because some functions are incremental\n */\n get valueGenerator(): DataValueGenerator {\n if (!this.#valueGenerator) {\n this.#valueGenerator = new DataValueGenerator()\n }\n return this.#valueGenerator\n }\n\n /**\n * Serializes the Entity to the AMF node shape.\n *\n * @param input The Property to serialize.\n * @param generatedEntities The list keys of already generated entities. This prohibits recursive shape generation.\n */\n entity(input: DataEntity, generatedEntities: string[] = []): IApiNodeShape | IApiRecursiveShape {\n if (generatedEntities.includes(input.key)) {\n // create a recursive shape.\n return this._recursiveShape(input)\n }\n generatedEntities.push(input.key)\n const result = nodeShape(input.key)\n result.id = input.key\n this._updateBaseProperties(input, result)\n result.properties = []\n input.properties.forEach((item) => {\n // we check whether the property is hidden.\n // This is not happening when calling the `property()` because this method\n // always returns the AMF shape.\n const wb = item.readBinding('web') as PropertyWebBindings | undefined\n if (wb && wb.hidden) {\n return\n }\n const shape = this.property(item)\n result.properties.push(shape)\n })\n input.associations.forEach((assoc) => {\n const prop = this.associationProperty(assoc, generatedEntities)\n result.properties.push(prop)\n })\n input.getComputedParents().forEach((parent) => {\n const shape = this.entity(parent, generatedEntities)\n result.inherits.push(shape)\n })\n return result\n }\n\n /**\n * Serializes an Entity Property to the AMF property shape.\n *\n * @param input The Property to serialize.\n */\n property(input: DataProperty): IApiPropertyShape {\n const { required, key } = input\n const result = propertyShape(key)\n result.path = `${AmfNamespace.aml.vocabularies.data.key}${input.info.name}`\n if (required) {\n result.minCount = 1\n }\n result.range = this._readPropertyRange(input)\n\n // for example, Example generator needs to know the name of the property\n // as it does not look into the \"range\" object.\n this._updateBaseProperties(input, result)\n\n // sync the name of the property shape with the range, in case it was changed by the bindings\n if (result.range.name) {\n result.name = result.range.name\n }\n return result\n }\n\n /**\n * Serializes an Entity property to the AMF property shape with association\n * targets as defined in the schema configuration.\n *\n * @param input The Property to serialize.\n */\n associationProperty(input: DataAssociation, generatedEntities: string[] = []): IApiPropertyShape {\n const { required, key } = input\n const result = propertyShape(key)\n result.path = `${AmfNamespace.aml.vocabularies.data.key}${input.info.name}`\n if (required) {\n result.minCount = 1\n }\n result.range = this.associationShape(input, generatedEntities)\n this._updateBaseProperties(input, result)\n return result\n }\n\n /**\n * Generates a shape for an association. Most likely you want to use the `associationProperty()` method instead.\n *\n * @param input The data association instance.\n * @returns The range value for the PropertyShape.\n */\n associationShape(input: DataAssociation, generatedEntities: string[] = []): IShapeUnion | undefined {\n const schema = input.schema\n if (schema && schema.linked) {\n // This is a link to the schema. In an API that would be the id\n // of a resource to request the data from.\n const range = scalarShape(input.key)\n range.id = `link-${input.key}`\n range.dataType = modelTypeToAmfDataType('string')\n return range\n }\n const items = this.associationUnion(input, generatedEntities)\n if (!items) {\n return\n }\n const unionType = (schema && schema.unionType) || 'anyOf'\n if (Array.isArray(items)) {\n const range = unionShape(input.key)\n this._updateBaseProperties(input, range)\n range.anyOf = []\n if (unionType === 'anyOf') {\n range.anyOf = items\n } else if (unionType === 'allOf') {\n range.and = items\n } else if (unionType === 'oneOf') {\n range.xone = items\n } else {\n // not.\n range.not = items[0] // ?\n }\n if (input.multiple) {\n return this.refactorShapeToArray(input.key, range)\n }\n return range\n }\n if (unionType === 'not') {\n const wrapper = anyShape(input.key)\n wrapper.id = `not-shape-${input.key}`\n wrapper.not = items\n return wrapper\n }\n if (input.multiple) {\n return this.refactorShapeToArray(input.key, items)\n }\n return items\n }\n\n /**\n * Generates a shape list for an union. Most likely you want to use the `associationProperty()` method instead.\n *\n * @param input The data association instance.\n * @returns The range value for the PropertyShape.\n */\n associationUnion(input: DataAssociation, generatedEntities: string[] = []): IShapeUnion | IShapeUnion[] | undefined {\n const targets = input.getTargets().map((i) => this.entity(i, generatedEntities))\n if (!targets.length) {\n return undefined\n }\n if (targets.length > 1) {\n return targets\n }\n return targets[0]\n }\n\n /**\n * The DataProperty may have both the `schema` and the `bindings`. For AMF shape we read `schema` for\n * default value, examples, and enum values. We also look for the `web`\n * bindings for more detailed definition of a shape.\n *\n * @param input\n * @returns\n */\n protected _readPropertyRange(input: DataProperty): IApiArrayShape | IApiFileShape | IApiScalarShape {\n const bindings = input.readBinding('web') as PropertyWebBindings | undefined\n let schema: DataPropertySchema | undefined\n if (input.schema) {\n schema = input.schema\n }\n return this._createAmfSchema(input, schema, bindings)\n }\n\n protected _createAmfSchema(\n input: DataProperty,\n schema?: DataPropertySchema,\n bindings?: PropertyWebBindings\n ): IApiArrayShape | IApiFileShape | IApiScalarShape {\n const { multiple, type } = input\n if (multiple) {\n return this._generateArrayShape(input, schema, bindings)\n }\n if (type === 'binary') {\n return this._generateFileShape(input, schema, bindings)\n }\n return this._generateScalarShape(input, schema, bindings)\n }\n\n /**\n * Normally this would be part of generating a scalar schema but the the property is an array this\n * is generated on the array and not on the range.\n *\n * @param result The scalar or array shape.\n * @param schema The property schema\n * @param type The data type of the parent property as set on the `range`\n * @param isArray Whether the DataProperty is multiple\n */\n protected _setShapeSchema(\n input: DataProperty,\n result: IApiAnyShape,\n schema: DataPropertySchema,\n type: string,\n isArray?: boolean\n ): void {\n if (schema.defaultValue) {\n const { type: dfFormat } = schema.defaultValue\n const { value } = schema.defaultValue\n if (dfFormat === 'function') {\n const tmp = this.valueGenerator.generate(value, input.type)\n if (tmp !== DataValueGenerator.noValue) {\n const dt = AmfDataNode.scalar(tmp as string, dfFormat)\n result.defaultValue = dt.toJSON()\n }\n } else {\n const dt = AmfDataNode.scalar(value, type)\n result.defaultValue = dt.toJSON()\n }\n }\n if (Array.isArray(schema.enum)) {\n result.values = schema.enum.map((i) => AmfDataNode.scalar(i, type).toJSON())\n }\n if (Array.isArray(schema.examples)) {\n if (isArray) {\n result.examples = this._generateArrayExamples(schema.examples, type)\n } else {\n result.examples = this._generateExamples(schema.examples, type)\n }\n }\n }\n\n protected _generateArrayShape(\n input: DataProperty,\n schema?: DataPropertySchema,\n bindings?: PropertyWebBindings\n ): IApiArrayShape {\n const result = arrayShape(input.key)\n const { type } = input\n if (type === 'binary') {\n // we do not pass schema to the range generator as we set schema's properties on the array shape.\n result.items = this._generateFileShape(input, undefined, bindings)\n } else {\n result.items = this._generateScalarShape(input, undefined, bindings)\n }\n if (schema) {\n const type = (result.items as IApiScalarShape).dataType as string\n this._setShapeSchema(input, result, schema, type, input.multiple)\n }\n return result\n }\n\n protected _generateScalarShape(\n input: DataProperty,\n schema?: DataPropertySchema,\n bindings?: PropertyWebBindings\n ): IApiScalarShape {\n const result = scalarShape(input.key)\n this._updateBaseProperties(input, result)\n this._fillScalarShapeCommonProperties(result, input, bindings)\n if (!result.dataType) {\n result.dataType = modelTypeToAmfDataType(input.type, bindings)\n }\n if (schema) {\n this._setShapeSchema(input, result, schema, result.dataType as string, input.multiple)\n }\n return result\n }\n\n protected _generateExamples(examples: string[], type: string): IApiDataExample[] {\n return examples.map((current) => {\n const value = AmfDataNode.scalar(current, type).toJSON()\n const item: IApiDataExample = {\n id: v4(),\n customDomainProperties: [],\n strict: true,\n types: IAmfExampleTypes,\n structuredValue: value,\n }\n return item\n })\n }\n\n protected _generateArrayExamples(examples: string[], type: string): IApiDataExample[] {\n const item: IApiDataExample = {\n id: v4(),\n customDomainProperties: [],\n strict: true,\n types: IAmfExampleTypes,\n }\n const value = new AmfDataNode('array')\n examples.forEach((item) => {\n const member = AmfDataNode.scalar(item, type)\n value.addMember(member)\n })\n item.structuredValue = value.toJSON()\n return [item]\n }\n\n protected _generateFileShape(\n input: DataProperty,\n schema?: DataPropertySchema,\n bindings?: PropertyWebBindings\n ): IApiFileShape {\n // if (bindings && bindings.format === 'base64') {\n // // this is a binary format of a string shape\n // }\n const result = fileShape(input.key)\n this._updateBaseProperties(input, result)\n if (bindings) {\n if (Array.isArray(bindings.fileTypes)) {\n result.fileTypes = bindings.fileTypes\n }\n this._fillScalarShapeCommonProperties(result, input, bindings)\n if (bindings.format === 'base64') {\n result.format = AmfNamespace.w3.xmlSchema.base64Binary\n }\n }\n return result\n }\n\n protected _fillScalarShapeCommonProperties(\n result: IApiFileShape | IApiScalarShape,\n input: DataProperty,\n bindings?: PropertyWebBindings\n ): void {\n if (bindings?.name) {\n result.name = bindings.name\n }\n if (bindings?.xml) {\n result.xmlSerialization = bindings.xml\n }\n if (bindings?.pattern) {\n result.pattern = bindings.pattern\n }\n const { schema, type } = input\n if (schema) {\n if (typeof schema.multipleOf === 'number') {\n result.multipleOf = schema.multipleOf\n }\n if (typeof schema.minimum === 'number') {\n if (type === 'string') {\n result.minLength = schema.minimum\n } else {\n result.minimum = schema.minimum\n }\n }\n if (typeof schema.maximum === 'number') {\n if (type === 'string') {\n result.maxLength = schema.maximum\n } else {\n result.maximum = schema.maximum\n }\n }\n if (typeof schema.exclusiveMinimum === 'boolean') {\n result.exclusiveMinimum = schema.exclusiveMinimum\n }\n if (typeof schema.exclusiveMaximum === 'boolean') {\n result.exclusiveMaximum = schema.exclusiveMaximum\n }\n }\n if (bindings?.format) {\n switch (bindings.format) {\n case 'base64':\n result.format = AmfNamespace.w3.xmlSchema.base64Binary\n break\n case 'double':\n result.format = AmfNamespace.w3.xmlSchema.double\n break\n case 'float':\n result.format = AmfNamespace.w3.xmlSchema.float\n break\n case 'int32':\n result.format = AmfNamespace.w3.xmlSchema.integer\n break\n case 'int64':\n result.format = AmfNamespace.w3.xmlSchema.integer\n break\n }\n // result.format = bindings.format\n }\n if (typeof input.readOnly === 'boolean') {\n result.readOnly = input.readOnly\n }\n if (typeof input.writeOnly === 'boolean') {\n result.writeOnly = input.writeOnly\n }\n }\n\n protected _updateBaseProperties(input: DataProperty | DataAssociation | DataEntity, target: IApiShape): void {\n // const bindings = input.readBinding('web') as PropertyWebBindings | undefined\n target.name = input.info.name\n target.displayName = input.info.displayName\n target.description = input.info.description\n if (input.kind === DataPropertyKind) {\n target.deprecated = (input as DataProperty).deprecated\n } else if (input.kind === DataEntityKind) {\n target.deprecated = (input as DataEntity).deprecated\n }\n }\n\n protected _recursiveShape(input: DataEntity): IApiRecursiveShape {\n return recursiveShape(input.key, input.key)\n }\n\n /**\n * Translates generated schema from an array shape to the shape defined in the `items` of the array.\n *\n * @param array The source array.\n * @returns The definition of the `items` of the array.\n */\n refactorArrayToShape(array: IApiArrayShape): IShapeUnion {\n const { items } = array\n return items as IShapeUnion\n }\n\n /**\n * Translates the shape to an array shape. This happens when data model property\n * is changed from 'multiple' to not-multiple and back.\n *\n * @param id The key of the parameter or an association\n * @param shape The shape to wrap as an array.\n * @returns Array shape.\n */\n refactorShapeToArray(id: string, shape: IShapeUnion): IApiArrayShape {\n const result = arrayShape(id)\n result.items = shape\n return result\n }\n}\n"]}
1
+ {"version":3,"file":"AmfShapeGenerator.js","sourceRoot":"","sources":["../../../src/amf/AmfShapeGenerator.ts"],"names":[],"mappings":"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","sourcesContent":["import { type PropertyWebBindings } from '../modeling/Bindings.js'\nimport { DataAssociation } from '../modeling/legacy/DataAssociation.js'\nimport { DataEntity } from '../modeling/legacy/DataEntity.js'\nimport { DataProperty, type DataPropertySchema } from '../modeling/legacy/DataProperty.js'\nimport { IAmfExampleTypes, modelTypeToAmfDataType } from './AmfTypes.js'\nimport { AmfNamespace } from './definitions/Namespace.js'\nimport {\n anyShape,\n arrayShape,\n fileShape,\n IApiAnyShape,\n IApiArrayShape,\n IApiDataExample,\n IApiFileShape,\n IApiNodeShape,\n IApiPropertyShape,\n IApiRecursiveShape,\n IApiScalarShape,\n IApiShape,\n IShapeUnion,\n nodeShape,\n propertyShape,\n recursiveShape,\n scalarShape,\n unionShape,\n} from './definitions/Shapes.js'\nimport { AmfDataNode } from './models/AmfDataNode.js'\nimport { nanoid } from 'nanoid'\nimport { DataEntityKind, DataPropertyKind } from '../models/kinds.js'\nimport { DataValueGenerator } from './DataValueGenerator.js'\n\n/**\n * Serializes Data shapes (DataEntity, DataProperty, DataAssociation) to AMF-related shapes.\n *\n * This is used when defining entities (according to the `DataEntity` schema)\n * and then we want to translate this into AMF shapes.\n *\n * @deprecated This class refers to the deprecated old data domain model.\n * Use the `ShapeGenerator` with the new domain model.\n */\nexport class AmfShapeGenerator {\n #valueGenerator?: DataValueGenerator\n\n /**\n * Used with data domain value generation for entity properties.\n * Lazily loaded class only when functions are used.\n * This needs to be a class instances because some functions are incremental\n */\n get valueGenerator(): DataValueGenerator {\n if (!this.#valueGenerator) {\n this.#valueGenerator = new DataValueGenerator()\n }\n return this.#valueGenerator\n }\n\n /**\n * Serializes the Entity to the AMF node shape.\n *\n * @param input The Property to serialize.\n * @param generatedEntities The list keys of already generated entities. This prohibits recursive shape generation.\n */\n entity(input: DataEntity, generatedEntities: string[] = []): IApiNodeShape | IApiRecursiveShape {\n if (generatedEntities.includes(input.key)) {\n // create a recursive shape.\n return this._recursiveShape(input)\n }\n generatedEntities.push(input.key)\n const result = nodeShape(input.key)\n result.id = input.key\n this._updateBaseProperties(input, result)\n result.properties = []\n input.properties.forEach((item) => {\n // we check whether the property is hidden.\n // This is not happening when calling the `property()` because this method\n // always returns the AMF shape.\n const wb = item.readBinding('web') as PropertyWebBindings | undefined\n if (wb && wb.hidden) {\n return\n }\n const shape = this.property(item)\n result.properties.push(shape)\n })\n input.associations.forEach((assoc) => {\n const prop = this.associationProperty(assoc, generatedEntities)\n result.properties.push(prop)\n })\n input.getComputedParents().forEach((parent) => {\n const shape = this.entity(parent, generatedEntities)\n result.inherits.push(shape)\n })\n return result\n }\n\n /**\n * Serializes an Entity Property to the AMF property shape.\n *\n * @param input The Property to serialize.\n */\n property(input: DataProperty): IApiPropertyShape {\n const { required, key } = input\n const result = propertyShape(key)\n result.path = `${AmfNamespace.aml.vocabularies.data.key}${input.info.name}`\n if (required) {\n result.minCount = 1\n }\n result.range = this._readPropertyRange(input)\n\n // for example, Example generator needs to know the name of the property\n // as it does not look into the \"range\" object.\n this._updateBaseProperties(input, result)\n\n // sync the name of the property shape with the range, in case it was changed by the bindings\n if (result.range.name) {\n result.name = result.range.name\n }\n return result\n }\n\n /**\n * Serializes an Entity property to the AMF property shape with association\n * targets as defined in the schema configuration.\n *\n * @param input The Property to serialize.\n */\n associationProperty(input: DataAssociation, generatedEntities: string[] = []): IApiPropertyShape {\n const { required, key } = input\n const result = propertyShape(key)\n result.path = `${AmfNamespace.aml.vocabularies.data.key}${input.info.name}`\n if (required) {\n result.minCount = 1\n }\n result.range = this.associationShape(input, generatedEntities)\n this._updateBaseProperties(input, result)\n return result\n }\n\n /**\n * Generates a shape for an association. Most likely you want to use the `associationProperty()` method instead.\n *\n * @param input The data association instance.\n * @returns The range value for the PropertyShape.\n */\n associationShape(input: DataAssociation, generatedEntities: string[] = []): IShapeUnion | undefined {\n const schema = input.schema\n if (schema && schema.linked) {\n // This is a link to the schema. In an API that would be the id\n // of a resource to request the data from.\n const range = scalarShape(input.key)\n range.id = `link-${input.key}`\n range.dataType = modelTypeToAmfDataType('string')\n return range\n }\n const items = this.associationUnion(input, generatedEntities)\n if (!items) {\n return\n }\n const unionType = (schema && schema.unionType) || 'anyOf'\n if (Array.isArray(items)) {\n const range = unionShape(input.key)\n this._updateBaseProperties(input, range)\n range.anyOf = []\n if (unionType === 'anyOf') {\n range.anyOf = items\n } else if (unionType === 'allOf') {\n range.and = items\n } else if (unionType === 'oneOf') {\n range.xone = items\n } else {\n // not.\n range.not = items[0] // ?\n }\n if (input.multiple) {\n return this.refactorShapeToArray(input.key, range)\n }\n return range\n }\n if (unionType === 'not') {\n const wrapper = anyShape(input.key)\n wrapper.id = `not-shape-${input.key}`\n wrapper.not = items\n return wrapper\n }\n if (input.multiple) {\n return this.refactorShapeToArray(input.key, items)\n }\n return items\n }\n\n /**\n * Generates a shape list for an union. Most likely you want to use the `associationProperty()` method instead.\n *\n * @param input The data association instance.\n * @returns The range value for the PropertyShape.\n */\n associationUnion(input: DataAssociation, generatedEntities: string[] = []): IShapeUnion | IShapeUnion[] | undefined {\n const targets = input.getTargets().map((i) => this.entity(i, generatedEntities))\n if (!targets.length) {\n return undefined\n }\n if (targets.length > 1) {\n return targets\n }\n return targets[0]\n }\n\n /**\n * The DataProperty may have both the `schema` and the `bindings`. For AMF shape we read `schema` for\n * default value, examples, and enum values. We also look for the `web`\n * bindings for more detailed definition of a shape.\n *\n * @param input\n * @returns\n */\n protected _readPropertyRange(input: DataProperty): IApiArrayShape | IApiFileShape | IApiScalarShape {\n const bindings = input.readBinding('web') as PropertyWebBindings | undefined\n let schema: DataPropertySchema | undefined\n if (input.schema) {\n schema = input.schema\n }\n return this._createAmfSchema(input, schema, bindings)\n }\n\n protected _createAmfSchema(\n input: DataProperty,\n schema?: DataPropertySchema,\n bindings?: PropertyWebBindings\n ): IApiArrayShape | IApiFileShape | IApiScalarShape {\n const { multiple, type } = input\n if (multiple) {\n return this._generateArrayShape(input, schema, bindings)\n }\n if (type === 'binary') {\n return this._generateFileShape(input, schema, bindings)\n }\n return this._generateScalarShape(input, schema, bindings)\n }\n\n /**\n * Normally this would be part of generating a scalar schema but the the property is an array this\n * is generated on the array and not on the range.\n *\n * @param result The scalar or array shape.\n * @param schema The property schema\n * @param type The data type of the parent property as set on the `range`\n * @param isArray Whether the DataProperty is multiple\n */\n protected _setShapeSchema(\n input: DataProperty,\n result: IApiAnyShape,\n schema: DataPropertySchema,\n type: string,\n isArray?: boolean\n ): void {\n if (schema.defaultValue) {\n const { type: dfFormat } = schema.defaultValue\n const { value } = schema.defaultValue\n if (dfFormat === 'function') {\n const tmp = this.valueGenerator.generate(value, input.type)\n if (tmp !== DataValueGenerator.noValue) {\n const dt = AmfDataNode.scalar(tmp as string, dfFormat)\n result.defaultValue = dt.toJSON()\n }\n } else {\n const dt = AmfDataNode.scalar(value, type)\n result.defaultValue = dt.toJSON()\n }\n }\n if (Array.isArray(schema.enum)) {\n result.values = schema.enum.map((i) => AmfDataNode.scalar(i, type).toJSON())\n }\n if (Array.isArray(schema.examples)) {\n if (isArray) {\n result.examples = this._generateArrayExamples(schema.examples, type)\n } else {\n result.examples = this._generateExamples(schema.examples, type)\n }\n }\n }\n\n protected _generateArrayShape(\n input: DataProperty,\n schema?: DataPropertySchema,\n bindings?: PropertyWebBindings\n ): IApiArrayShape {\n const result = arrayShape(input.key)\n const { type } = input\n if (type === 'binary') {\n // we do not pass schema to the range generator as we set schema's properties on the array shape.\n result.items = this._generateFileShape(input, undefined, bindings)\n } else {\n result.items = this._generateScalarShape(input, undefined, bindings)\n }\n if (schema) {\n const type = (result.items as IApiScalarShape).dataType as string\n this._setShapeSchema(input, result, schema, type, input.multiple)\n }\n return result\n }\n\n protected _generateScalarShape(\n input: DataProperty,\n schema?: DataPropertySchema,\n bindings?: PropertyWebBindings\n ): IApiScalarShape {\n const result = scalarShape(input.key)\n this._updateBaseProperties(input, result)\n this._fillScalarShapeCommonProperties(result, input, bindings)\n if (!result.dataType) {\n result.dataType = modelTypeToAmfDataType(input.type, bindings)\n }\n if (schema) {\n this._setShapeSchema(input, result, schema, result.dataType as string, input.multiple)\n }\n return result\n }\n\n protected _generateExamples(examples: string[], type: string): IApiDataExample[] {\n return examples.map((current) => {\n const value = AmfDataNode.scalar(current, type).toJSON()\n const item: IApiDataExample = {\n id: nanoid(),\n customDomainProperties: [],\n strict: true,\n types: IAmfExampleTypes,\n structuredValue: value,\n }\n return item\n })\n }\n\n protected _generateArrayExamples(examples: string[], type: string): IApiDataExample[] {\n const item: IApiDataExample = {\n id: nanoid(),\n customDomainProperties: [],\n strict: true,\n types: IAmfExampleTypes,\n }\n const value = new AmfDataNode('array')\n examples.forEach((item) => {\n const member = AmfDataNode.scalar(item, type)\n value.addMember(member)\n })\n item.structuredValue = value.toJSON()\n return [item]\n }\n\n protected _generateFileShape(\n input: DataProperty,\n schema?: DataPropertySchema,\n bindings?: PropertyWebBindings\n ): IApiFileShape {\n // if (bindings && bindings.format === 'base64') {\n // // this is a binary format of a string shape\n // }\n const result = fileShape(input.key)\n this._updateBaseProperties(input, result)\n if (bindings) {\n if (Array.isArray(bindings.fileTypes)) {\n result.fileTypes = bindings.fileTypes\n }\n this._fillScalarShapeCommonProperties(result, input, bindings)\n if (bindings.format === 'base64') {\n result.format = AmfNamespace.w3.xmlSchema.base64Binary\n }\n }\n return result\n }\n\n protected _fillScalarShapeCommonProperties(\n result: IApiFileShape | IApiScalarShape,\n input: DataProperty,\n bindings?: PropertyWebBindings\n ): void {\n if (bindings?.name) {\n result.name = bindings.name\n }\n if (bindings?.xml) {\n result.xmlSerialization = bindings.xml\n }\n if (bindings?.pattern) {\n result.pattern = bindings.pattern\n }\n const { schema, type } = input\n if (schema) {\n if (typeof schema.multipleOf === 'number') {\n result.multipleOf = schema.multipleOf\n }\n if (typeof schema.minimum === 'number') {\n if (type === 'string') {\n result.minLength = schema.minimum\n } else {\n result.minimum = schema.minimum\n }\n }\n if (typeof schema.maximum === 'number') {\n if (type === 'string') {\n result.maxLength = schema.maximum\n } else {\n result.maximum = schema.maximum\n }\n }\n if (typeof schema.exclusiveMinimum === 'boolean') {\n result.exclusiveMinimum = schema.exclusiveMinimum\n }\n if (typeof schema.exclusiveMaximum === 'boolean') {\n result.exclusiveMaximum = schema.exclusiveMaximum\n }\n }\n if (bindings?.format) {\n switch (bindings.format) {\n case 'base64':\n result.format = AmfNamespace.w3.xmlSchema.base64Binary\n break\n case 'double':\n result.format = AmfNamespace.w3.xmlSchema.double\n break\n case 'float':\n result.format = AmfNamespace.w3.xmlSchema.float\n break\n case 'int32':\n result.format = AmfNamespace.w3.xmlSchema.integer\n break\n case 'int64':\n result.format = AmfNamespace.w3.xmlSchema.integer\n break\n }\n // result.format = bindings.format\n }\n if (typeof input.readOnly === 'boolean') {\n result.readOnly = input.readOnly\n }\n if (typeof input.writeOnly === 'boolean') {\n result.writeOnly = input.writeOnly\n }\n }\n\n protected _updateBaseProperties(input: DataProperty | DataAssociation | DataEntity, target: IApiShape): void {\n // const bindings = input.readBinding('web') as PropertyWebBindings | undefined\n target.name = input.info.name\n target.displayName = input.info.displayName\n target.description = input.info.description\n if (input.kind === DataPropertyKind) {\n target.deprecated = (input as DataProperty).deprecated\n } else if (input.kind === DataEntityKind) {\n target.deprecated = (input as DataEntity).deprecated\n }\n }\n\n protected _recursiveShape(input: DataEntity): IApiRecursiveShape {\n return recursiveShape(input.key, input.key)\n }\n\n /**\n * Translates generated schema from an array shape to the shape defined in the `items` of the array.\n *\n * @param array The source array.\n * @returns The definition of the `items` of the array.\n */\n refactorArrayToShape(array: IApiArrayShape): IShapeUnion {\n const { items } = array\n return items as IShapeUnion\n }\n\n /**\n * Translates the shape to an array shape. This happens when data model property\n * is changed from 'multiple' to not-multiple and back.\n *\n * @param id The key of the parameter or an association\n * @param shape The shape to wrap as an array.\n * @returns Array shape.\n */\n refactorShapeToArray(id: string, shape: IShapeUnion): IApiArrayShape {\n const result = arrayShape(id)\n result.items = shape\n return result\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"DataValueGenerator.d.ts","sourceRoot":"","sources":["../../../src/amf/DataValueGenerator.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAE9D,eAAO,MAAM,OAAO,eAAoB,CAAA;AAExC;;;GAGG;AACH,qBAAa,kBAAkB;IAC7B;;;OAGG;IACH,SAAS,CAAC,SAAS,SAAI;IACvB;;;OAGG;IACH,MAAM,CAAC,QAAQ,CAAC,OAAO,SAAU;IAEjC;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,GAAG,MAAM,GAAG,OAAO,OAAO;IAmBvE;;;;OAIG;IACH,SAAS,CAAC,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,OAAO;IAW7D;;;;OAIG;IACH,SAAS,CAAC,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,OAAO;IAS7D;;;;;OAKG;IACH,SAAS,CAAC,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,OAAO;IAa3D;;;;OAIG;IACH,SAAS,CAAC,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,OAAO;IAa3D;;;;;OAKG;IACH,SAAS,CAAC,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,OAAO;CAehE"}
1
+ {"version":3,"file":"DataValueGenerator.d.ts","sourceRoot":"","sources":["../../../src/amf/DataValueGenerator.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAE9D,eAAO,MAAM,OAAO,eAAoB,CAAA;AAExC;;;GAGG;AACH,qBAAa,kBAAkB;IAC7B;;;OAGG;IACH,SAAS,CAAC,SAAS,SAAI;IACvB;;;OAGG;IACH,MAAM,CAAC,QAAQ,CAAC,OAAO,SAAU;IAEjC;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,GAAG,MAAM,GAAG,OAAO,OAAO;IAmBvE;;;;OAIG;IACH,SAAS,CAAC,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,OAAO;IAY7D;;;;OAIG;IACH,SAAS,CAAC,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,OAAO;IAS7D;;;;;OAKG;IACH,SAAS,CAAC,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,OAAO;IAa3D;;;;OAIG;IACH,SAAS,CAAC,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,OAAO;IAa3D;;;;;OAKG;IACH,SAAS,CAAC,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,OAAO;CAehE"}
@@ -1,5 +1,5 @@
1
+ import { nanoid } from 'nanoid';
1
2
  import uuidV4 from '../lib/uuid.js';
2
- import { randomString } from '../lib/math/Random.js';
3
3
  export const noValue = Symbol('noValue');
4
4
  /**
5
5
  * A class to be used for generating values from pre-defined functions.
@@ -48,7 +48,8 @@ export class DataValueGenerator {
48
48
  generateString(fn) {
49
49
  switch (fn) {
50
50
  case 'random':
51
- return randomString(8);
51
+ // TODO: we need more settings controlling the random string generation.
52
+ return nanoid(8);
52
53
  case 'uuid-v4':
53
54
  return uuidV4();
54
55
  default:
@@ -1 +1 @@
1
- {"version":3,"file":"DataValueGenerator.js","sourceRoot":"","sources":["../../../src/amf/DataValueGenerator.ts"],"names":[],"mappings":"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","sourcesContent":["import uuidV4 from '../lib/uuid.js'\nimport { randomString } from '../lib/math/Random.js'\nimport { DomainPropertyType } from '../modeling/DataFormat.js'\n\nexport const noValue = Symbol('noValue')\n\n/**\n * A class to be used for generating values from pre-defined functions.\n * This is used to provide default values for data properties based on specified functions.\n */\nexport class DataValueGenerator {\n /**\n * The current value for the `number.incremental` function.\n * This counter is incremented each time an incremental number is generated.\n */\n protected increment = 0\n /**\n * A symbol representing the absence of a value.\n * Used as a return value when a function cannot generate a value of the requested type.\n */\n static readonly noValue = noValue\n\n /**\n * Generates a value based on the provided function name and data type.\n * @param fn The name of the function to use for value generation (e.g., 'random', 'uuid-v4', 'incremental').\n * @param type The data type of the value to generate (e.g., 'string', 'number', 'date', 'time', 'datetime').\n * @returns The generated value, or the `noValue` symbol if the function or type is not supported.\n */\n generate(fn: string, type: DomainPropertyType): string | typeof noValue {\n if (type === 'string') {\n return this.generateString(fn)\n }\n if (type === 'number') {\n return this.generateNumber(fn)\n }\n if (type === 'date') {\n return this.generateDate(fn)\n }\n if (type === 'time') {\n return this.generateTime(fn)\n }\n if (type === 'datetime') {\n return this.generateDateTime(fn)\n }\n return noValue\n }\n\n /**\n * Generates a string value based on the function name.\n * @param fn The name of the string generation function.\n * @returns The generated string value, or `noValue` if the function is not supported.\n */\n protected generateString(fn: string): string | typeof noValue {\n switch (fn) {\n case 'random':\n return randomString(8)\n case 'uuid-v4':\n return uuidV4()\n default:\n return noValue\n }\n }\n\n /**\n * Generates a number value based on the function name.\n * @param fn The name of the number generation function.\n * @returns The generated number value (as a string), or `noValue` if the function is not supported.\n */\n protected generateNumber(fn: string): string | typeof noValue {\n switch (fn) {\n case 'incremental':\n return `${this.increment++}`\n default:\n return noValue\n }\n }\n\n /**\n * Generates a date value based on the function name.\n * @param fn The name of the date generation function.\n * @returns The generated date value (as a string in YYYY-MM-DD format),\n * or `noValue` if the function is not supported.\n */\n protected generateDate(fn: string): string | typeof noValue {\n if (fn === 'now') {\n // Returns YYYY-MM-DD\n // @TODO: Replace with Temporal when widely available.\n const d = new Date()\n const year = d.getFullYear()\n const month = `${d.getMonth() + 1}`.padStart(2, '0')\n const day = `${d.getDate()}`.padStart(2, '0')\n return `${year}-${month}-${day}`\n }\n return noValue\n }\n\n /**\n * Generates a time value based on the function name.\n * @param fn The name of the time generation function.\n * @returns The generated time value (as a string in HH:mm:ss format), or `noValue` if the function is not supported.\n */\n protected generateTime(fn: string): string | typeof noValue {\n if (fn === 'now') {\n // Returns HH:mm:ss\n // @TODO: Replace with Temporal when widely available.\n const d = new Date()\n const hour = `${d.getHours()}`.padStart(2, '0')\n const minute = `${d.getMinutes()}`.padStart(2, '0')\n const second = `${d.getSeconds()}`.padStart(2, '0')\n return `${hour}:${minute}:${second}`\n }\n return noValue\n }\n\n /**\n * Generates a datetime value based on the function name.\n * @param fn The name of the datetime generation function.\n * @returns The generated datetime value (as a string in YYYY-MM-DDTHH:mm:ss format),\n * or `noValue` if the function is not supported.\n */\n protected generateDateTime(fn: string): string | typeof noValue {\n if (fn === 'now') {\n // Returns YYYY-MM-DDTHH:mm:ss\n // @TODO: Replace with Temporal when widely available.\n const d = new Date()\n const year = d.getFullYear()\n const month = `${d.getMonth() + 1}`.padStart(2, '0')\n const day = `${d.getDate()}`.padStart(2, '0')\n const hour = `${d.getHours()}`.padStart(2, '0')\n const minute = `${d.getMinutes()}`.padStart(2, '0')\n const second = `${d.getSeconds()}`.padStart(2, '0')\n return `${year}-${month}-${day}T${hour}:${minute}:${second}`\n }\n return noValue\n }\n}\n"]}
1
+ {"version":3,"file":"DataValueGenerator.js","sourceRoot":"","sources":["../../../src/amf/DataValueGenerator.ts"],"names":[],"mappings":"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","sourcesContent":["import { nanoid } from 'nanoid'\nimport uuidV4 from '../lib/uuid.js'\nimport { DomainPropertyType } from '../modeling/DataFormat.js'\n\nexport const noValue = Symbol('noValue')\n\n/**\n * A class to be used for generating values from pre-defined functions.\n * This is used to provide default values for data properties based on specified functions.\n */\nexport class DataValueGenerator {\n /**\n * The current value for the `number.incremental` function.\n * This counter is incremented each time an incremental number is generated.\n */\n protected increment = 0\n /**\n * A symbol representing the absence of a value.\n * Used as a return value when a function cannot generate a value of the requested type.\n */\n static readonly noValue = noValue\n\n /**\n * Generates a value based on the provided function name and data type.\n * @param fn The name of the function to use for value generation (e.g., 'random', 'uuid-v4', 'incremental').\n * @param type The data type of the value to generate (e.g., 'string', 'number', 'date', 'time', 'datetime').\n * @returns The generated value, or the `noValue` symbol if the function or type is not supported.\n */\n generate(fn: string, type: DomainPropertyType): string | typeof noValue {\n if (type === 'string') {\n return this.generateString(fn)\n }\n if (type === 'number') {\n return this.generateNumber(fn)\n }\n if (type === 'date') {\n return this.generateDate(fn)\n }\n if (type === 'time') {\n return this.generateTime(fn)\n }\n if (type === 'datetime') {\n return this.generateDateTime(fn)\n }\n return noValue\n }\n\n /**\n * Generates a string value based on the function name.\n * @param fn The name of the string generation function.\n * @returns The generated string value, or `noValue` if the function is not supported.\n */\n protected generateString(fn: string): string | typeof noValue {\n switch (fn) {\n case 'random':\n // TODO: we need more settings controlling the random string generation.\n return nanoid(8)\n case 'uuid-v4':\n return uuidV4()\n default:\n return noValue\n }\n }\n\n /**\n * Generates a number value based on the function name.\n * @param fn The name of the number generation function.\n * @returns The generated number value (as a string), or `noValue` if the function is not supported.\n */\n protected generateNumber(fn: string): string | typeof noValue {\n switch (fn) {\n case 'incremental':\n return `${this.increment++}`\n default:\n return noValue\n }\n }\n\n /**\n * Generates a date value based on the function name.\n * @param fn The name of the date generation function.\n * @returns The generated date value (as a string in YYYY-MM-DD format),\n * or `noValue` if the function is not supported.\n */\n protected generateDate(fn: string): string | typeof noValue {\n if (fn === 'now') {\n // Returns YYYY-MM-DD\n // @TODO: Replace with Temporal when widely available.\n const d = new Date()\n const year = d.getFullYear()\n const month = `${d.getMonth() + 1}`.padStart(2, '0')\n const day = `${d.getDate()}`.padStart(2, '0')\n return `${year}-${month}-${day}`\n }\n return noValue\n }\n\n /**\n * Generates a time value based on the function name.\n * @param fn The name of the time generation function.\n * @returns The generated time value (as a string in HH:mm:ss format), or `noValue` if the function is not supported.\n */\n protected generateTime(fn: string): string | typeof noValue {\n if (fn === 'now') {\n // Returns HH:mm:ss\n // @TODO: Replace with Temporal when widely available.\n const d = new Date()\n const hour = `${d.getHours()}`.padStart(2, '0')\n const minute = `${d.getMinutes()}`.padStart(2, '0')\n const second = `${d.getSeconds()}`.padStart(2, '0')\n return `${hour}:${minute}:${second}`\n }\n return noValue\n }\n\n /**\n * Generates a datetime value based on the function name.\n * @param fn The name of the datetime generation function.\n * @returns The generated datetime value (as a string in YYYY-MM-DDTHH:mm:ss format),\n * or `noValue` if the function is not supported.\n */\n protected generateDateTime(fn: string): string | typeof noValue {\n if (fn === 'now') {\n // Returns YYYY-MM-DDTHH:mm:ss\n // @TODO: Replace with Temporal when widely available.\n const d = new Date()\n const year = d.getFullYear()\n const month = `${d.getMonth() + 1}`.padStart(2, '0')\n const day = `${d.getDate()}`.padStart(2, '0')\n const hour = `${d.getHours()}`.padStart(2, '0')\n const minute = `${d.getMinutes()}`.padStart(2, '0')\n const second = `${d.getSeconds()}`.padStart(2, '0')\n return `${year}-${month}-${day}T${hour}:${minute}:${second}`\n }\n return noValue\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"AmfDataNode.d.ts","sourceRoot":"","sources":["../../../../src/amf/models/AmfDataNode.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAA;AAEjE,OAAO,EAGL,iBAAiB,EAGlB,MAAM,0BAA0B,CAAA;AAEjC,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAA;AAEzD;;GAEG;AACH,qBAAa,WAAW;IACtB,EAAE,SAAO;IAET;;;OAGG;IACH,KAAK,EAAE,MAAM,EAAE,CAAA;IAEf;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IAEb;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;IAExC;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;IAEd;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB;;OAEG;IACH,OAAO,CAAC,EAAE,WAAW,EAAE,CAAA;IAEvB,sBAAsB,EAAE,wBAAwB,EAAE,CAAK;IAEvD,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,WAAW;gBAO3C,IAAI,EAAE,iBAAiB,GAAG,aAAa;IA8CnD,MAAM,IAAI,iBAAiB;IAoC3B;;;;;OAKG;IACH,SAAS,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI;IAUlC;;;;;OAKG;IACH,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAa9B;;;;;;OAMG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI;IAUnD;;;;OAIG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;CAUnC"}
1
+ {"version":3,"file":"AmfDataNode.d.ts","sourceRoot":"","sources":["../../../../src/amf/models/AmfDataNode.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAA;AAEjE,OAAO,EAGL,iBAAiB,EAGlB,MAAM,0BAA0B,CAAA;AAEjC,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAA;AAEzD;;GAEG;AACH,qBAAa,WAAW;IACtB,EAAE,SAAW;IAEb;;;OAGG;IACH,KAAK,EAAE,MAAM,EAAE,CAAA;IAEf;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IAEb;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;IAExC;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;IAEd;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB;;OAEG;IACH,OAAO,CAAC,EAAE,WAAW,EAAE,CAAA;IAEvB,sBAAsB,EAAE,wBAAwB,EAAE,CAAK;IAEvD,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,WAAW;gBAO3C,IAAI,EAAE,iBAAiB,GAAG,aAAa;IA8CnD,MAAM,IAAI,iBAAiB;IAoC3B;;;;;OAKG;IACH,SAAS,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI;IAUlC;;;;;OAKG;IACH,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAa9B;;;;;;OAMG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI;IAUnD;;;;OAIG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;CAUnC"}
@@ -1,11 +1,11 @@
1
- import v4 from '../../lib/uuid.js';
1
+ import { nanoid } from 'nanoid';
2
2
  import { IAmfArrayNodeTypes, IAmfObjectNodeTypes, IAmfScalarNodeTypes } from '../AmfTypes.js';
3
3
  import { AmfNamespace } from '../definitions/Namespace.js';
4
4
  /**
5
5
  * A class that manipulates the AMF's DataNode node.
6
6
  */
7
7
  export class AmfDataNode {
8
- id = v4();
8
+ id = nanoid();
9
9
  /**
10
10
  * AMF domain types.
11
11
  * This is set in the constructor
@@ -1 +1 @@
1
- {"version":3,"file":"AmfDataNode.js","sourceRoot":"","sources":["../../../../src/amf/models/AmfDataNode.ts"],"names":[],"mappings":"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","sourcesContent":["import v4 from '../../lib/uuid.js'\nimport { IAmfArrayNodeTypes, IAmfObjectNodeTypes, IAmfScalarNodeTypes } from '../AmfTypes.js'\nimport { IApiCustomDomainProperty } from '../definitions/Base.js'\nimport { AmfNamespace } from '../definitions/Namespace.js'\nimport {\n IApiArrayNode,\n IApiDataNode,\n IApiDataNodeUnion,\n IApiObjectNode,\n IApiScalarNode,\n} from '../definitions/Shapes.js'\n\nexport type IDataNodeInit = 'scalar' | 'object' | 'array'\n\n/**\n * A class that manipulates the AMF's DataNode node.\n */\nexport class AmfDataNode {\n id = v4()\n\n /**\n * AMF domain types.\n * This is set in the constructor\n */\n types: string[]\n\n /**\n * The name of this data node.\n */\n name?: string\n\n /**\n * Set when the object node type\n */\n properties?: Record<string, AmfDataNode>\n\n /**\n * Scalar type value. Always a string.\n */\n value?: string\n\n /**\n * Scalar type value data type.\n */\n dataType?: string\n\n /**\n * Set when the type is array.\n */\n members?: AmfDataNode[]\n\n customDomainProperties: IApiCustomDomainProperty[] = []\n\n static scalar(value: string, type: string): AmfDataNode {\n const result = new AmfDataNode('scalar')\n result.value = value\n result.dataType = type\n return result\n }\n\n constructor(init: IApiDataNodeUnion | IDataNodeInit) {\n if (typeof init === 'string') {\n if (init === 'scalar') {\n this.types = IAmfScalarNodeTypes\n } else if (init === 'array') {\n this.types = IAmfArrayNodeTypes\n } else if (init === 'object') {\n this.types = IAmfObjectNodeTypes\n } else {\n throw new Error(`Invalid data node init option: ${init}`)\n }\n return\n }\n if (!init) {\n throw new Error(`Expected an initialization option.`)\n }\n const union = init as IApiDataNodeUnion\n const { id, types, customDomainProperties } = union\n this.id = id\n this.types = types\n this.customDomainProperties = customDomainProperties\n if (types.includes(AmfNamespace.aml.vocabularies.data.Scalar)) {\n const typed = union as IApiScalarNode\n this.value = typed.value\n this.dataType = typed.dataType\n } else if (types.includes(AmfNamespace.aml.vocabularies.data.Object)) {\n const typed = union as IApiObjectNode\n const props: Record<string, AmfDataNode> = {}\n this.properties = props\n Object.keys(typed.properties).forEach((key) => {\n const instance = new AmfDataNode(typed.properties[key])\n props[key] = instance\n })\n } else if (types.includes(AmfNamespace.aml.vocabularies.data.Array)) {\n const typed = union as IApiArrayNode\n const members: AmfDataNode[] = []\n this.members = members\n if (Array.isArray(typed.members)) {\n typed.members.forEach((member) => {\n const instance = new AmfDataNode(member)\n members.push(instance)\n })\n }\n }\n }\n\n toJSON(): IApiDataNodeUnion {\n const { id, customDomainProperties, types, name } = this\n const result: IApiDataNode = {\n id,\n types,\n customDomainProperties,\n }\n if (name) {\n result.name = name\n }\n\n if (types.includes(AmfNamespace.aml.vocabularies.data.Scalar)) {\n const typed = result as IApiScalarNode\n typed.dataType = this.dataType\n typed.value = this.value\n } else if (types.includes(AmfNamespace.aml.vocabularies.data.Object)) {\n const typed = result as IApiObjectNode\n typed.properties = {}\n const props = this.properties\n if (props) {\n Object.keys(props).forEach((key) => {\n typed.properties[key] = props[key].toJSON()\n })\n }\n } else if (types.includes(AmfNamespace.aml.vocabularies.data.Array)) {\n const typed = result as IApiArrayNode\n typed.members = []\n if (this.members) {\n this.members.forEach((member) => {\n typed.members.push(member.toJSON())\n })\n }\n }\n return result\n }\n\n /**\n * Adds a member to the list of members.\n * It throws when this is not an array node.\n *\n * @param init The member to add.\n */\n addMember(init: AmfDataNode): void {\n if (!this.types.includes(AmfNamespace.aml.vocabularies.data.Array)) {\n throw new Error(`Not an ArrayNode.`)\n }\n if (!this.members) {\n this.members = []\n }\n this.members.push(init)\n }\n\n /**\n * Removes a member from the list of members.\n * It throws when this is not an array node.\n *\n * @param id The domain id of the member to remove.\n */\n removeMember(id: string): void {\n if (!this.types.includes(AmfNamespace.aml.vocabularies.data.Array)) {\n throw new Error(`Not an ArrayNode.`)\n }\n if (!this.members) {\n return\n }\n const index = this.members.findIndex((i) => i.id === id)\n if (index >= 0) {\n this.members.splice(index, 1)\n }\n }\n\n /**\n * Adds a property to the ObjectNode.\n * It throws when this is not an object node.\n *\n * @param name The name of the property.\n * @param value The instance of the DataNode to set.\n */\n addProperty(name: string, value: AmfDataNode): void {\n if (!this.types.includes(AmfNamespace.aml.vocabularies.data.Object)) {\n throw new Error(`Not an ObjectNode.`)\n }\n if (!this.properties) {\n this.properties = {}\n }\n this.properties[name] = value\n }\n\n /**\n * Deletes a property by name.\n *\n * @param name The name of the property to delete.\n */\n removeProperty(name: string): void {\n if (!this.types.includes(AmfNamespace.aml.vocabularies.data.Object)) {\n throw new Error(`Not an ObjectNode.`)\n }\n if (!this.properties) {\n return\n }\n // eslint-disable-next-line @typescript-eslint/no-dynamic-delete\n delete this.properties[name]\n }\n}\n"]}
1
+ {"version":3,"file":"AmfDataNode.js","sourceRoot":"","sources":["../../../../src/amf/models/AmfDataNode.ts"],"names":[],"mappings":"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","sourcesContent":["import { nanoid } from 'nanoid'\nimport { IAmfArrayNodeTypes, IAmfObjectNodeTypes, IAmfScalarNodeTypes } from '../AmfTypes.js'\nimport { IApiCustomDomainProperty } from '../definitions/Base.js'\nimport { AmfNamespace } from '../definitions/Namespace.js'\nimport {\n IApiArrayNode,\n IApiDataNode,\n IApiDataNodeUnion,\n IApiObjectNode,\n IApiScalarNode,\n} from '../definitions/Shapes.js'\n\nexport type IDataNodeInit = 'scalar' | 'object' | 'array'\n\n/**\n * A class that manipulates the AMF's DataNode node.\n */\nexport class AmfDataNode {\n id = nanoid()\n\n /**\n * AMF domain types.\n * This is set in the constructor\n */\n types: string[]\n\n /**\n * The name of this data node.\n */\n name?: string\n\n /**\n * Set when the object node type\n */\n properties?: Record<string, AmfDataNode>\n\n /**\n * Scalar type value. Always a string.\n */\n value?: string\n\n /**\n * Scalar type value data type.\n */\n dataType?: string\n\n /**\n * Set when the type is array.\n */\n members?: AmfDataNode[]\n\n customDomainProperties: IApiCustomDomainProperty[] = []\n\n static scalar(value: string, type: string): AmfDataNode {\n const result = new AmfDataNode('scalar')\n result.value = value\n result.dataType = type\n return result\n }\n\n constructor(init: IApiDataNodeUnion | IDataNodeInit) {\n if (typeof init === 'string') {\n if (init === 'scalar') {\n this.types = IAmfScalarNodeTypes\n } else if (init === 'array') {\n this.types = IAmfArrayNodeTypes\n } else if (init === 'object') {\n this.types = IAmfObjectNodeTypes\n } else {\n throw new Error(`Invalid data node init option: ${init}`)\n }\n return\n }\n if (!init) {\n throw new Error(`Expected an initialization option.`)\n }\n const union = init as IApiDataNodeUnion\n const { id, types, customDomainProperties } = union\n this.id = id\n this.types = types\n this.customDomainProperties = customDomainProperties\n if (types.includes(AmfNamespace.aml.vocabularies.data.Scalar)) {\n const typed = union as IApiScalarNode\n this.value = typed.value\n this.dataType = typed.dataType\n } else if (types.includes(AmfNamespace.aml.vocabularies.data.Object)) {\n const typed = union as IApiObjectNode\n const props: Record<string, AmfDataNode> = {}\n this.properties = props\n Object.keys(typed.properties).forEach((key) => {\n const instance = new AmfDataNode(typed.properties[key])\n props[key] = instance\n })\n } else if (types.includes(AmfNamespace.aml.vocabularies.data.Array)) {\n const typed = union as IApiArrayNode\n const members: AmfDataNode[] = []\n this.members = members\n if (Array.isArray(typed.members)) {\n typed.members.forEach((member) => {\n const instance = new AmfDataNode(member)\n members.push(instance)\n })\n }\n }\n }\n\n toJSON(): IApiDataNodeUnion {\n const { id, customDomainProperties, types, name } = this\n const result: IApiDataNode = {\n id,\n types,\n customDomainProperties,\n }\n if (name) {\n result.name = name\n }\n\n if (types.includes(AmfNamespace.aml.vocabularies.data.Scalar)) {\n const typed = result as IApiScalarNode\n typed.dataType = this.dataType\n typed.value = this.value\n } else if (types.includes(AmfNamespace.aml.vocabularies.data.Object)) {\n const typed = result as IApiObjectNode\n typed.properties = {}\n const props = this.properties\n if (props) {\n Object.keys(props).forEach((key) => {\n typed.properties[key] = props[key].toJSON()\n })\n }\n } else if (types.includes(AmfNamespace.aml.vocabularies.data.Array)) {\n const typed = result as IApiArrayNode\n typed.members = []\n if (this.members) {\n this.members.forEach((member) => {\n typed.members.push(member.toJSON())\n })\n }\n }\n return result\n }\n\n /**\n * Adds a member to the list of members.\n * It throws when this is not an array node.\n *\n * @param init The member to add.\n */\n addMember(init: AmfDataNode): void {\n if (!this.types.includes(AmfNamespace.aml.vocabularies.data.Array)) {\n throw new Error(`Not an ArrayNode.`)\n }\n if (!this.members) {\n this.members = []\n }\n this.members.push(init)\n }\n\n /**\n * Removes a member from the list of members.\n * It throws when this is not an array node.\n *\n * @param id The domain id of the member to remove.\n */\n removeMember(id: string): void {\n if (!this.types.includes(AmfNamespace.aml.vocabularies.data.Array)) {\n throw new Error(`Not an ArrayNode.`)\n }\n if (!this.members) {\n return\n }\n const index = this.members.findIndex((i) => i.id === id)\n if (index >= 0) {\n this.members.splice(index, 1)\n }\n }\n\n /**\n * Adds a property to the ObjectNode.\n * It throws when this is not an object node.\n *\n * @param name The name of the property.\n * @param value The instance of the DataNode to set.\n */\n addProperty(name: string, value: AmfDataNode): void {\n if (!this.types.includes(AmfNamespace.aml.vocabularies.data.Object)) {\n throw new Error(`Not an ObjectNode.`)\n }\n if (!this.properties) {\n this.properties = {}\n }\n this.properties[name] = value\n }\n\n /**\n * Deletes a property by name.\n *\n * @param name The name of the property to delete.\n */\n removeProperty(name: string): void {\n if (!this.types.includes(AmfNamespace.aml.vocabularies.data.Object)) {\n throw new Error(`Not an ObjectNode.`)\n }\n if (!this.properties) {\n return\n }\n // eslint-disable-next-line @typescript-eslint/no-dynamic-delete\n delete this.properties[name]\n }\n}\n"]}
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * @see http://stackoverflow.com/a/21963136/1127848
5
5
  * @example "92329D39-6F5C-4520-ABFC-AAB64544E172"
6
- * @return {string} Generated value
6
+ * @return Generated value
7
7
  */
8
8
  export default function v4(): string;
9
9
  //# sourceMappingURL=uuid.d.ts.map
@@ -7,7 +7,7 @@ for (let i = 0; i < 256; i++) {
7
7
  *
8
8
  * @see http://stackoverflow.com/a/21963136/1127848
9
9
  * @example "92329D39-6F5C-4520-ABFC-AAB64544E172"
10
- * @return {string} Generated value
10
+ * @return Generated value
11
11
  */
12
12
  export default function v4() {
13
13
  const d0 = (Math.random() * 0xffffffff) | 0;
@@ -1 +1 @@
1
- {"version":3,"file":"uuid.js","sourceRoot":"","sources":["../../../src/lib/uuid.ts"],"names":[],"mappings":"AAAA,MAAM,GAAG,GAAa,EAAE,CAAA;AACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IAC7B,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;AAC/C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,UAAU,EAAE;IACxB,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,CAAA;IAC3C,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,CAAA;IAC3C,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,CAAA;IAC3C,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,CAAA;IAC3C,OAAO,CACL,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC;QACd,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;QACrB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;QACtB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;QACtB,GAAG;QACH,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC;QACd,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;QACrB,GAAG;QACH,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;QAC/B,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;QACtB,GAAG;QACH,GAAG,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;QACvB,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;QACrB,GAAG;QACH,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;QACtB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;QACtB,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC;QACd,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;QACrB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;QACtB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,CACvB,CAAA;AACH,CAAC","sourcesContent":["const lut: string[] = []\nfor (let i = 0; i < 256; i++) {\n lut[i] = (i < 16 ? '0' : '') + i.toString(16)\n}\n\n/**\n * Generate a RFC4122, version 4 ID.\n *\n * @see http://stackoverflow.com/a/21963136/1127848\n * @example \"92329D39-6F5C-4520-ABFC-AAB64544E172\"\n * @return {string} Generated value\n */\nexport default function v4(): string {\n const d0 = (Math.random() * 0xffffffff) | 0\n const d1 = (Math.random() * 0xffffffff) | 0\n const d2 = (Math.random() * 0xffffffff) | 0\n const d3 = (Math.random() * 0xffffffff) | 0\n return (\n lut[d0 & 0xff] +\n lut[(d0 >> 8) & 0xff] +\n lut[(d0 >> 16) & 0xff] +\n lut[(d0 >> 24) & 0xff] +\n '-' +\n lut[d1 & 0xff] +\n lut[(d1 >> 8) & 0xff] +\n '-' +\n lut[((d1 >> 16) & 0x0f) | 0x40] +\n lut[(d1 >> 24) & 0xff] +\n '-' +\n lut[(d2 & 0x3f) | 0x80] +\n lut[(d2 >> 8) & 0xff] +\n '-' +\n lut[(d2 >> 16) & 0xff] +\n lut[(d2 >> 24) & 0xff] +\n lut[d3 & 0xff] +\n lut[(d3 >> 8) & 0xff] +\n lut[(d3 >> 16) & 0xff] +\n lut[(d3 >> 24) & 0xff]\n )\n}\n"]}
1
+ {"version":3,"file":"uuid.js","sourceRoot":"","sources":["../../../src/lib/uuid.ts"],"names":[],"mappings":"AAAA,MAAM,GAAG,GAAa,EAAE,CAAA;AACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IAC7B,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;AAC/C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,UAAU,EAAE;IACxB,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,CAAA;IAC3C,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,CAAA;IAC3C,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,CAAA;IAC3C,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,CAAA;IAC3C,OAAO,CACL,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC;QACd,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;QACrB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;QACtB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;QACtB,GAAG;QACH,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC;QACd,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;QACrB,GAAG;QACH,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;QAC/B,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;QACtB,GAAG;QACH,GAAG,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;QACvB,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;QACrB,GAAG;QACH,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;QACtB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;QACtB,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC;QACd,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;QACrB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;QACtB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,CACvB,CAAA;AACH,CAAC","sourcesContent":["const lut: string[] = []\nfor (let i = 0; i < 256; i++) {\n lut[i] = (i < 16 ? '0' : '') + i.toString(16)\n}\n\n/**\n * Generate a RFC4122, version 4 ID.\n *\n * @see http://stackoverflow.com/a/21963136/1127848\n * @example \"92329D39-6F5C-4520-ABFC-AAB64544E172\"\n * @return Generated value\n */\nexport default function v4(): string {\n const d0 = (Math.random() * 0xffffffff) | 0\n const d1 = (Math.random() * 0xffffffff) | 0\n const d2 = (Math.random() * 0xffffffff) | 0\n const d3 = (Math.random() * 0xffffffff) | 0\n return (\n lut[d0 & 0xff] +\n lut[(d0 >> 8) & 0xff] +\n lut[(d0 >> 16) & 0xff] +\n lut[(d0 >> 24) & 0xff] +\n '-' +\n lut[d1 & 0xff] +\n lut[(d1 >> 8) & 0xff] +\n '-' +\n lut[((d1 >> 16) & 0x0f) | 0x40] +\n lut[(d1 >> 24) & 0xff] +\n '-' +\n lut[(d2 & 0x3f) | 0x80] +\n lut[(d2 >> 8) & 0xff] +\n '-' +\n lut[(d2 >> 16) & 0xff] +\n lut[(d2 >> 24) & 0xff] +\n lut[d3 & 0xff] +\n lut[(d3 >> 8) & 0xff] +\n lut[(d3 >> 16) & 0xff] +\n lut[(d3 >> 24) & 0xff]\n )\n}\n"]}
@@ -46,7 +46,7 @@ export class History {
46
46
  result.user = this.random.pickOne(init.user);
47
47
  }
48
48
  else {
49
- result.user = this.types.uuid();
49
+ result.user = this.types.string(21);
50
50
  }
51
51
  if (typeof init.project === 'string') {
52
52
  result.project = init.project;
@@ -55,7 +55,7 @@ export class History {
55
55
  result.project = this.random.pickOne(init.project);
56
56
  }
57
57
  else if (init.project) {
58
- result.project = this.types.uuid();
58
+ result.project = this.types.string(21);
59
59
  }
60
60
  if (typeof init.request === 'string') {
61
61
  result.request = init.request;
@@ -64,7 +64,7 @@ export class History {
64
64
  result.request = this.random.pickOne(init.request);
65
65
  }
66
66
  else if (init.request) {
67
- result.request = this.types.uuid();
67
+ result.request = this.types.string(21);
68
68
  }
69
69
  if (typeof init.app === 'string') {
70
70
  result.app = init.app;
@@ -73,7 +73,7 @@ export class History {
73
73
  result.app = this.random.pickOne(init.app);
74
74
  }
75
75
  else if (init.app) {
76
- result.app = this.types.uuid();
76
+ result.app = this.types.string(21);
77
77
  }
78
78
  return result;
79
79
  }
@@ -83,7 +83,7 @@ export class History {
83
83
  if (usersSize && typeof init.user === 'undefined') {
84
84
  const users = [];
85
85
  for (let i = 0; i < usersSize; i++) {
86
- users.push(this.types.uuid());
86
+ users.push(this.types.string(21));
87
87
  }
88
88
  copy.user = users;
89
89
  }
@@ -97,21 +97,21 @@ export class History {
97
97
  if (projectsSize && typeof init.project === 'undefined') {
98
98
  const project = [];
99
99
  for (let i = 0; i < projectsSize; i++) {
100
- project.push(this.types.uuid());
100
+ project.push(this.types.string(21));
101
101
  }
102
102
  copy.project = project;
103
103
  }
104
104
  if (requestsSize && typeof init.request === 'undefined') {
105
105
  const requests = [];
106
106
  for (let i = 0; i < requestsSize; i++) {
107
- requests.push(this.types.uuid());
107
+ requests.push(this.types.string(21));
108
108
  }
109
109
  copy.request = requests;
110
110
  }
111
111
  if (appsSize && typeof init.app === 'undefined') {
112
112
  const apps = [];
113
113
  for (let i = 0; i < appsSize; i++) {
114
- apps.push(this.types.uuid());
114
+ apps.push(this.types.string(21));
115
115
  }
116
116
  copy.app = apps;
117
117
  }
@@ -1 +1 @@
1
- {"version":3,"file":"History.js","sourceRoot":"","sources":["../../../../src/mocking/lib/History.ts"],"names":[],"mappings":"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","sourcesContent":["import { Internet, Types, IDataMockInit, Person, Random, ITypeDateTimeInit } from '@pawel-up/data-mock'\n// import { randomValue } from '@pawel-up/data-mock/src/lib/Http.js';\nimport { IHttpHistory, Kind as HttpHistoryKind } from '../../models/HttpHistory.js'\nimport { Request, IRequestLogInit } from './Request.js'\n\nexport interface IHttpHistoryInit {\n /**\n * Either organization id, list of organizations to pick one or whether to generate a organization.\n */\n organization?: boolean | string | string[]\n /**\n * User is always generated per store requirements.\n */\n user?: string | string[]\n /**\n * Either project id, list of projects to pick one or whether to generate a project.\n */\n project?: boolean | string | string[]\n /**\n * Either request id, list of requests to pick one or whether to generate a request.\n */\n request?: boolean | string | string[]\n /**\n * Either app id, list of apps to pick one or whether to generate an app.\n */\n app?: boolean | string | string[]\n /**\n * The log init options\n */\n log?: IRequestLogInit\n /**\n * The created time init options.\n */\n created?: ITypeDateTimeInit\n}\n\nexport interface IHttpHistoryListInit extends IHttpHistoryInit {\n /**\n * When set it generates as many user IDs.\n * Ignored when the `user` is set.\n */\n usersSize?: number\n /**\n * When set it generates as many organization ids.\n * Ignored when the `organization` is set.\n */\n organizationSize?: number\n /**\n * When set it generates as many project ids.\n * Ignored when the `project` is set.\n */\n projectsSize?: number\n /**\n * When set it generates as many request ids.\n * Ignored when the `request` is set.\n */\n requestsSize?: number\n /**\n * When set it generates as many app ids.\n * Ignored when the `app` is set.\n */\n appsSize?: number\n}\n\nexport class History {\n person: Person\n types: Types\n internet: Internet\n random: Random\n request: Request\n\n constructor(init: IDataMockInit = {}) {\n this.person = new Person(init)\n this.types = new Types(init.seed)\n this.internet = new Internet(init)\n this.random = new Random(init.seed)\n this.request = new Request(init)\n }\n\n async httpHistory(init: IHttpHistoryInit = {}): Promise<IHttpHistory> {\n const date = this.types.datetime(init.created)\n const result: IHttpHistory = {\n kind: HttpHistoryKind,\n created: date.getTime(),\n log: await this.request.log(init.log),\n user: '',\n app: '',\n key: '',\n project: '',\n request: '',\n organization: '',\n }\n date.setHours(0, 0, 0, 0)\n result.midnight = date.getTime()\n\n if (typeof init.organization === 'string') {\n result.organization = init.organization\n } else if (Array.isArray(init.organization)) {\n result.organization = this.random.pickOne(init.organization)\n } else if (init.organization) {\n result.organization = this.types.string(10)\n }\n\n if (typeof init.user === 'string') {\n result.user = init.user\n } else if (Array.isArray(init.user)) {\n result.user = this.random.pickOne(init.user)\n } else {\n result.user = this.types.uuid()\n }\n\n if (typeof init.project === 'string') {\n result.project = init.project\n } else if (Array.isArray(init.project)) {\n result.project = this.random.pickOne(init.project)\n } else if (init.project) {\n result.project = this.types.uuid()\n }\n\n if (typeof init.request === 'string') {\n result.request = init.request\n } else if (Array.isArray(init.request)) {\n result.request = this.random.pickOne(init.request)\n } else if (init.request) {\n result.request = this.types.uuid()\n }\n\n if (typeof init.app === 'string') {\n result.app = init.app\n } else if (Array.isArray(init.app)) {\n result.app = this.random.pickOne(init.app)\n } else if (init.app) {\n result.app = this.types.uuid()\n }\n return result\n }\n\n async httpHistoryList(size = 25, init: IHttpHistoryListInit = {}): Promise<IHttpHistory[]> {\n const { usersSize, organizationSize, projectsSize, requestsSize, appsSize } = init\n const copy = { ...init }\n if (usersSize && typeof init.user === 'undefined') {\n const users: string[] = []\n for (let i = 0; i < usersSize; i++) {\n users.push(this.types.uuid())\n }\n copy.user = users\n }\n if (organizationSize && typeof init.organization === 'undefined') {\n const organization: string[] = []\n for (let i = 0; i < organizationSize; i++) {\n organization.push(this.types.string(10))\n }\n copy.organization = organization\n }\n if (projectsSize && typeof init.project === 'undefined') {\n const project: string[] = []\n for (let i = 0; i < projectsSize; i++) {\n project.push(this.types.uuid())\n }\n copy.project = project\n }\n if (requestsSize && typeof init.request === 'undefined') {\n const requests: string[] = []\n for (let i = 0; i < requestsSize; i++) {\n requests.push(this.types.uuid())\n }\n copy.request = requests\n }\n if (appsSize && typeof init.app === 'undefined') {\n const apps: string[] = []\n for (let i = 0; i < appsSize; i++) {\n apps.push(this.types.uuid())\n }\n copy.app = apps\n }\n\n const result: IHttpHistory[] = []\n for (let i = 0; i < size; i++) {\n result.push(await this.httpHistory(copy))\n }\n return result\n }\n}\n"]}
1
+ {"version":3,"file":"History.js","sourceRoot":"","sources":["../../../../src/mocking/lib/History.ts"],"names":[],"mappings":"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","sourcesContent":["import { Internet, Types, IDataMockInit, Person, Random, ITypeDateTimeInit } from '@pawel-up/data-mock'\n// import { randomValue } from '@pawel-up/data-mock/src/lib/Http.js';\nimport { IHttpHistory, Kind as HttpHistoryKind } from '../../models/HttpHistory.js'\nimport { Request, IRequestLogInit } from './Request.js'\n\nexport interface IHttpHistoryInit {\n /**\n * Either organization id, list of organizations to pick one or whether to generate a organization.\n */\n organization?: boolean | string | string[]\n /**\n * User is always generated per store requirements.\n */\n user?: string | string[]\n /**\n * Either project id, list of projects to pick one or whether to generate a project.\n */\n project?: boolean | string | string[]\n /**\n * Either request id, list of requests to pick one or whether to generate a request.\n */\n request?: boolean | string | string[]\n /**\n * Either app id, list of apps to pick one or whether to generate an app.\n */\n app?: boolean | string | string[]\n /**\n * The log init options\n */\n log?: IRequestLogInit\n /**\n * The created time init options.\n */\n created?: ITypeDateTimeInit\n}\n\nexport interface IHttpHistoryListInit extends IHttpHistoryInit {\n /**\n * When set it generates as many user IDs.\n * Ignored when the `user` is set.\n */\n usersSize?: number\n /**\n * When set it generates as many organization ids.\n * Ignored when the `organization` is set.\n */\n organizationSize?: number\n /**\n * When set it generates as many project ids.\n * Ignored when the `project` is set.\n */\n projectsSize?: number\n /**\n * When set it generates as many request ids.\n * Ignored when the `request` is set.\n */\n requestsSize?: number\n /**\n * When set it generates as many app ids.\n * Ignored when the `app` is set.\n */\n appsSize?: number\n}\n\nexport class History {\n person: Person\n types: Types\n internet: Internet\n random: Random\n request: Request\n\n constructor(init: IDataMockInit = {}) {\n this.person = new Person(init)\n this.types = new Types(init.seed)\n this.internet = new Internet(init)\n this.random = new Random(init.seed)\n this.request = new Request(init)\n }\n\n async httpHistory(init: IHttpHistoryInit = {}): Promise<IHttpHistory> {\n const date = this.types.datetime(init.created)\n const result: IHttpHistory = {\n kind: HttpHistoryKind,\n created: date.getTime(),\n log: await this.request.log(init.log),\n user: '',\n app: '',\n key: '',\n project: '',\n request: '',\n organization: '',\n }\n date.setHours(0, 0, 0, 0)\n result.midnight = date.getTime()\n\n if (typeof init.organization === 'string') {\n result.organization = init.organization\n } else if (Array.isArray(init.organization)) {\n result.organization = this.random.pickOne(init.organization)\n } else if (init.organization) {\n result.organization = this.types.string(10)\n }\n\n if (typeof init.user === 'string') {\n result.user = init.user\n } else if (Array.isArray(init.user)) {\n result.user = this.random.pickOne(init.user)\n } else {\n result.user = this.types.string(21)\n }\n\n if (typeof init.project === 'string') {\n result.project = init.project\n } else if (Array.isArray(init.project)) {\n result.project = this.random.pickOne(init.project)\n } else if (init.project) {\n result.project = this.types.string(21)\n }\n\n if (typeof init.request === 'string') {\n result.request = init.request\n } else if (Array.isArray(init.request)) {\n result.request = this.random.pickOne(init.request)\n } else if (init.request) {\n result.request = this.types.string(21)\n }\n\n if (typeof init.app === 'string') {\n result.app = init.app\n } else if (Array.isArray(init.app)) {\n result.app = this.random.pickOne(init.app)\n } else if (init.app) {\n result.app = this.types.string(21)\n }\n return result\n }\n\n async httpHistoryList(size = 25, init: IHttpHistoryListInit = {}): Promise<IHttpHistory[]> {\n const { usersSize, organizationSize, projectsSize, requestsSize, appsSize } = init\n const copy = { ...init }\n if (usersSize && typeof init.user === 'undefined') {\n const users: string[] = []\n for (let i = 0; i < usersSize; i++) {\n users.push(this.types.string(21))\n }\n copy.user = users\n }\n if (organizationSize && typeof init.organization === 'undefined') {\n const organization: string[] = []\n for (let i = 0; i < organizationSize; i++) {\n organization.push(this.types.string(10))\n }\n copy.organization = organization\n }\n if (projectsSize && typeof init.project === 'undefined') {\n const project: string[] = []\n for (let i = 0; i < projectsSize; i++) {\n project.push(this.types.string(21))\n }\n copy.project = project\n }\n if (requestsSize && typeof init.request === 'undefined') {\n const requests: string[] = []\n for (let i = 0; i < requestsSize; i++) {\n requests.push(this.types.string(21))\n }\n copy.request = requests\n }\n if (appsSize && typeof init.app === 'undefined') {\n const apps: string[] = []\n for (let i = 0; i < appsSize; i++) {\n apps.push(this.types.string(21))\n }\n copy.app = apps\n }\n\n const result: IHttpHistory[] = []\n for (let i = 0; i < size; i++) {\n result.push(await this.httpHistory(copy))\n }\n return result\n }\n}\n"]}
@@ -13,7 +13,7 @@ export class HostRules {
13
13
  */
14
14
  rule() {
15
15
  const result = {
16
- key: this.types.uuid(),
16
+ key: this.types.string(21),
17
17
  from: this.internet.uri(),
18
18
  to: this.internet.uri(),
19
19
  enabled: this.types.boolean(),
@@ -1 +1 @@
1
- {"version":3,"file":"HostRules.js","sourceRoot":"","sources":["../../../../src/mocking/lib/HostRules.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAiB,MAAM,qBAAqB,CAAA;AAG3E,MAAM,OAAO,SAAS;IACpB,KAAK,CAAO;IACZ,KAAK,CAAO;IACZ,QAAQ,CAAU;IAElB,YAAY,OAAsB,EAAE;QAClC,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACjC,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,CAAA;QAC5B,IAAI,CAAC,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAA;IACpC,CAAC;IAED;;OAEG;IACH,IAAI;QACF,MAAM,MAAM,GAAc;YACxB,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;YACtB,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE;YACzB,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE;YACvB,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE;YAC7B,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE;SAChC,CAAA;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,IAAI,GAAG,EAAE;QACb,MAAM,MAAM,GAAG,EAAE,CAAA;QACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;QAC1B,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC;CACF","sourcesContent":["import { Lorem, Types, Internet, IDataMockInit } from '@pawel-up/data-mock'\nimport { IHostRule } from '../../models/HostRule.js'\n\nexport class HostRules {\n types: Types\n lorem: Lorem\n internet: Internet\n\n constructor(init: IDataMockInit = {}) {\n this.types = new Types(init.seed)\n this.lorem = new Lorem(init)\n this.internet = new Internet(init)\n }\n\n /**\n * Generates random host rule data object.\n */\n rule(): IHostRule {\n const result: IHostRule = {\n key: this.types.uuid(),\n from: this.internet.uri(),\n to: this.internet.uri(),\n enabled: this.types.boolean(),\n comment: this.lorem.paragraph(),\n }\n return result\n }\n\n /**\n * Generates a list of host rules.\n *\n * @param size Number of items to generate. Default to 25.\n * @return List of datastore entries.\n */\n rules(size = 25): IHostRule[] {\n const result = []\n for (let i = 0; i < size; i++) {\n result.push(this.rule())\n }\n return result\n }\n}\n"]}
1
+ {"version":3,"file":"HostRules.js","sourceRoot":"","sources":["../../../../src/mocking/lib/HostRules.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAiB,MAAM,qBAAqB,CAAA;AAG3E,MAAM,OAAO,SAAS;IACpB,KAAK,CAAO;IACZ,KAAK,CAAO;IACZ,QAAQ,CAAU;IAElB,YAAY,OAAsB,EAAE;QAClC,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACjC,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,CAAA;QAC5B,IAAI,CAAC,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAA;IACpC,CAAC;IAED;;OAEG;IACH,IAAI;QACF,MAAM,MAAM,GAAc;YACxB,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;YAC1B,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE;YACzB,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE;YACvB,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE;YAC7B,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE;SAChC,CAAA;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,IAAI,GAAG,EAAE;QACb,MAAM,MAAM,GAAG,EAAE,CAAA;QACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;QAC1B,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC;CACF","sourcesContent":["import { Lorem, Types, Internet, IDataMockInit } from '@pawel-up/data-mock'\nimport { IHostRule } from '../../models/HostRule.js'\n\nexport class HostRules {\n types: Types\n lorem: Lorem\n internet: Internet\n\n constructor(init: IDataMockInit = {}) {\n this.types = new Types(init.seed)\n this.lorem = new Lorem(init)\n this.internet = new Internet(init)\n }\n\n /**\n * Generates random host rule data object.\n */\n rule(): IHostRule {\n const result: IHostRule = {\n key: this.types.string(21),\n from: this.internet.uri(),\n to: this.internet.uri(),\n enabled: this.types.boolean(),\n comment: this.lorem.paragraph(),\n }\n return result\n }\n\n /**\n * Generates a list of host rules.\n *\n * @param size Number of items to generate. Default to 25.\n * @return List of datastore entries.\n */\n rules(size = 25): IHostRule[] {\n const result = []\n for (let i = 0; i < size; i++) {\n result.push(this.rule())\n }\n return result\n }\n}\n"]}
@@ -14,7 +14,7 @@ export class User {
14
14
  user(init = {}) {
15
15
  const result = {
16
16
  kind: UserKind,
17
- key: this.types.uuid(),
17
+ key: this.types.string(21),
18
18
  name: this.person.name(),
19
19
  };
20
20
  if (!init.noEmail) {
@@ -32,7 +32,7 @@ export class User {
32
32
  }
33
33
  if (!init.noProvider) {
34
34
  result.provider = {
35
- refreshToken: this.types.uuid(),
35
+ refreshToken: this.types.string(21),
36
36
  };
37
37
  }
38
38
  return result;
@@ -1 +1 @@
1
- {"version":3,"file":"User.js","sourceRoot":"","sources":["../../../../src/mocking/lib/User.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAiB,MAAM,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AACpF,OAAO,EAAS,IAAI,IAAI,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AAQpE,MAAM,OAAO,IAAI;IACf,MAAM,CAAQ;IACd,KAAK,CAAO;IACZ,QAAQ,CAAU;IAClB,MAAM,CAAQ;IAEd,YAAY,OAAsB,EAAE;QAClC,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAA;QAC9B,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACjC,IAAI,CAAC,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAA;QAClC,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACrC,CAAC;IAED,IAAI,CAAC,OAAkB,EAAE;QACvB,MAAM,MAAM,GAAU;YACpB,IAAI,EAAE,QAAQ;YACd,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;YACtB,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;SACzB,CAAA;QACD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,CAAC,KAAK,GAAG;gBACb;oBACE,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE;oBAC5B,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE;iBAC/B;aACF,CAAA;QACH,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,MAAM,CAAC,OAAO,GAAG;gBACf,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;aAC5B,CAAA;QACH,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,CAAC,QAAQ,GAAG;gBAChB,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;aAChC,CAAA;QACH,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC;CACF","sourcesContent":["import { Internet, Types, IDataMockInit, Person, Random } from '@pawel-up/data-mock'\nimport { IUser, Kind as UserKind } from '../../models/store/User.js'\n\nexport interface IUserInit {\n noEmail?: boolean\n noPicture?: boolean\n noProvider?: boolean\n}\n\nexport class User {\n person: Person\n types: Types\n internet: Internet\n random: Random\n\n constructor(init: IDataMockInit = {}) {\n this.person = new Person(init)\n this.types = new Types(init.seed)\n this.internet = new Internet(init)\n this.random = new Random(init.seed)\n }\n\n user(init: IUserInit = {}): IUser {\n const result: IUser = {\n kind: UserKind,\n key: this.types.uuid(),\n name: this.person.name(),\n }\n if (!init.noEmail) {\n result.email = [\n {\n email: this.internet.email(),\n verified: this.types.boolean(),\n },\n ]\n }\n if (!init.noPicture) {\n result.picture = {\n url: this.internet.avatar(),\n }\n }\n if (!init.noProvider) {\n result.provider = {\n refreshToken: this.types.uuid(),\n }\n }\n return result\n }\n}\n"]}
1
+ {"version":3,"file":"User.js","sourceRoot":"","sources":["../../../../src/mocking/lib/User.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAiB,MAAM,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AACpF,OAAO,EAAS,IAAI,IAAI,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AAQpE,MAAM,OAAO,IAAI;IACf,MAAM,CAAQ;IACd,KAAK,CAAO;IACZ,QAAQ,CAAU;IAClB,MAAM,CAAQ;IAEd,YAAY,OAAsB,EAAE;QAClC,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,CAAA;QAC9B,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACjC,IAAI,CAAC,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAA;QAClC,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACrC,CAAC;IAED,IAAI,CAAC,OAAkB,EAAE;QACvB,MAAM,MAAM,GAAU;YACpB,IAAI,EAAE,QAAQ;YACd,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;YAC1B,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;SACzB,CAAA;QACD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,CAAC,KAAK,GAAG;gBACb;oBACE,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE;oBAC5B,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE;iBAC/B;aACF,CAAA;QACH,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,MAAM,CAAC,OAAO,GAAG;gBACf,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;aAC5B,CAAA;QACH,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,CAAC,QAAQ,GAAG;gBAChB,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;aACpC,CAAA;QACH,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC;CACF","sourcesContent":["import { Internet, Types, IDataMockInit, Person, Random } from '@pawel-up/data-mock'\nimport { IUser, Kind as UserKind } from '../../models/store/User.js'\n\nexport interface IUserInit {\n noEmail?: boolean\n noPicture?: boolean\n noProvider?: boolean\n}\n\nexport class User {\n person: Person\n types: Types\n internet: Internet\n random: Random\n\n constructor(init: IDataMockInit = {}) {\n this.person = new Person(init)\n this.types = new Types(init.seed)\n this.internet = new Internet(init)\n this.random = new Random(init.seed)\n }\n\n user(init: IUserInit = {}): IUser {\n const result: IUser = {\n kind: UserKind,\n key: this.types.string(21),\n name: this.person.name(),\n }\n if (!init.noEmail) {\n result.email = [\n {\n email: this.internet.email(),\n verified: this.types.boolean(),\n },\n ]\n }\n if (!init.noPicture) {\n result.picture = {\n url: this.internet.avatar(),\n }\n }\n if (!init.noProvider) {\n result.provider = {\n refreshToken: this.types.string(21),\n }\n }\n return result\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"DataDomain.d.ts","sourceRoot":"","sources":["../../../src/modeling/DataDomain.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DataDomain.d.ts","sourceRoot":"","sources":["../../../src/modeling/DataDomain.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import v4 from '../lib/uuid.js';
1
+ import { nanoid } from 'nanoid';
2
2
  import { DomainAssociationKind, DataDomainKind, DomainEntityKind, DomainModelKind, DomainNamespaceKind, DomainPropertyKind, } from '../models/kinds.js';
3
3
  import { DomainNamespace } from './DomainNamespace.js';
4
4
  import { DomainModel } from './DomainModel.js';
@@ -127,8 +127,7 @@ export class DataDomain extends EventTarget {
127
127
  get fields() { return this.#fields_accessor_storage; }
128
128
  set fields(value) { this.#fields_accessor_storage = value; }
129
129
  static createSchema(input = {}) {
130
- // We have to stay with UUID for data domains as the API expects it for File keys.
131
- const { key = v4(), fields } = input;
130
+ const { key = nanoid(), fields } = input;
132
131
  const info = Thing.fromJSON(input.info, { name: 'Unnamed domain' }).toJSON();
133
132
  const result = {
134
133
  kind: DataDomainKind,