@esri/hub-common 17.13.0 → 17.13.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.
@@ -19,11 +19,20 @@ export const addDynamicSlugValidation = (schema, options) => {
19
19
  // add conditional validation to ensure slug is unique
20
20
  const allOf = cloneObject(schema.allOf) || [];
21
21
  const { pattern } = _slug;
22
+ // remove pattern from base schema so the form doesn't always apply the pattern
23
+ // validation. We will add it back to the allOf conditionally
24
+ delete _slug.pattern;
22
25
  const { id } = options;
23
26
  allOf.push({
27
+ // only enforce the pattern if slug has been entered
28
+ if: { properties: { _slug: { minLength: 1 } } },
29
+ then: { properties: { _slug: { pattern } } },
30
+ }, {
24
31
  // only do async isUniqueSlug check if the slug is valid
25
32
  if: { properties: { _slug: { pattern } } },
26
- then: { properties: { _slug: { isUniqueSlug: { id, orgUrlKey } } } },
33
+ then: {
34
+ properties: { _slug: { isUniqueSlug: { id, orgUrlKey } } },
35
+ },
27
36
  });
28
37
  const clone = cloneObject(schema);
29
38
  clone.properties._slug = _slug;
@@ -1 +1 @@
1
- {"version":3,"file":"addDynamicSlugValidation.js","sourceRoot":"","sources":["../../../../../src/core/schemas/internal/addDynamicSlugValidation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAM5C;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACtC,MAA4B,EAC5B,OAAsB,EACA,EAAE;;IACxB,MAAM,KAAK,GAAG,WAAW,OAAC,MAAM,CAAC,UAAU,0CAAE,KAAK,CAAe,CAAC;IAClE,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,MAAM,CAAC;KACf;IACD,yBAAyB;IACzB,MAAM,EAAE,SAAS,EAAE,GAAG,OAAoB,CAAC;IAC3C,KAAK,CAAC,SAAS,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAC9C,sDAAsD;IACtD,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IAC9C,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAC1B,MAAM,EAAE,EAAE,EAAE,GAAG,OAAoB,CAAC;IACpC,KAAK,CAAC,IAAI,CAAC;QACT,wDAAwD;QACxD,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QAC1C,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,EAAS,EAAE,EAAE;KAC5E,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAClC,KAAK,CAAC,UAAU,CAAC,KAAK,GAAG,KAAK,CAAC;IAC/B,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;IACpB,OAAO,KAAK,CAAC;AACf,CAAC,CAAC"}
1
+ {"version":3,"file":"addDynamicSlugValidation.js","sourceRoot":"","sources":["../../../../../src/core/schemas/internal/addDynamicSlugValidation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAM5C;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACtC,MAA4B,EAC5B,OAAsB,EACA,EAAE;;IACxB,MAAM,KAAK,GAAG,WAAW,OAAC,MAAM,CAAC,UAAU,0CAAE,KAAK,CAAe,CAAC;IAClE,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,MAAM,CAAC;KACf;IACD,yBAAyB;IACzB,MAAM,EAAE,SAAS,EAAE,GAAG,OAAoB,CAAC;IAC3C,KAAK,CAAC,SAAS,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAC9C,sDAAsD;IACtD,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IAE9C,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAC1B,+EAA+E;IAC/E,6DAA6D;IAC7D,OAAO,KAAK,CAAC,OAAO,CAAC;IAErB,MAAM,EAAE,EAAE,EAAE,GAAG,OAAoB,CAAC;IAEpC,KAAK,CAAC,IAAI,CACR;QACE,oDAAoD;QACpD,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE;QAC/C,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;KAC7C,EACD;QACE,wDAAwD;QACxD,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QAC1C,IAAI,EAAE;YACJ,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,EAAS,EAAE;SAClE;KACF,CACF,CAAC;IAEF,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAClC,KAAK,CAAC,UAAU,CAAC,KAAK,GAAG,KAAK,CAAC;IAC/B,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;IACpB,OAAO,KAAK,CAAC;AACf,CAAC,CAAC"}
@@ -23,6 +23,11 @@ export function editorToEntity(editor, portal) {
23
23
  // ensure the slug is truncated
24
24
  entity.slug = truncateSlug(_slug, entity.orgUrlKey);
25
25
  }
26
+ else {
27
+ // if no slug is passed in, save an empty string as the slug, so that
28
+ // it is not saved as the orgUrlKey truncated with an empty string
29
+ entity.slug = "";
30
+ }
26
31
  return entity;
27
32
  }
28
33
  //# sourceMappingURL=editorToEntity.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"editorToEntity.js","sourceRoot":"","sources":["../../../../../../src/core/schemas/internal/metrics/editorToEntity.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAEjE,oEAAoE;AACpE;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAC5B,MAA4C,EAC5C,MAAe;;IAEf,yDAAyD;IACzD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAC3B,OAAO,MAAM,CAAC,KAAK,CAAC;IAEpB,kEAAkE;IAClE,yBAAyB;IACzB,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAmB,CAAC;IACrD,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;IAEvE,wCAAwC;IACxC,MAAM,CAAC,MAAM,SAAG,MAAM,CAAC,QAAQ,0CAAE,MAAM,CAAC;IAExC,IAAI,KAAK,EAAE;QACT,+BAA+B;QAC/B,MAAM,CAAC,IAAI,GAAG,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;KACrD;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"editorToEntity.js","sourceRoot":"","sources":["../../../../../../src/core/schemas/internal/metrics/editorToEntity.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AAEjE,oEAAoE;AACpE;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAC5B,MAA4C,EAC5C,MAAe;;IAEf,yDAAyD;IACzD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAC3B,OAAO,MAAM,CAAC,KAAK,CAAC;IAEpB,kEAAkE;IAClE,yBAAyB;IACzB,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAmB,CAAC;IACrD,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;IAEvE,wCAAwC;IACxC,MAAM,CAAC,MAAM,SAAG,MAAM,CAAC,QAAQ,0CAAE,MAAM,CAAC;IAExC,IAAI,KAAK,EAAE;QACT,+BAA+B;QAC/B,MAAM,CAAC,IAAI,GAAG,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;KACrD;SAAM;QACL,qEAAqE;QACrE,kEAAkE;QAClE,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;KAClB;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -22,11 +22,20 @@ exports.addDynamicSlugValidation = (schema, options) => {
22
22
  // add conditional validation to ensure slug is unique
23
23
  const allOf = util_1.cloneObject(schema.allOf) || [];
24
24
  const { pattern } = _slug;
25
+ // remove pattern from base schema so the form doesn't always apply the pattern
26
+ // validation. We will add it back to the allOf conditionally
27
+ delete _slug.pattern;
25
28
  const { id } = options;
26
29
  allOf.push({
30
+ // only enforce the pattern if slug has been entered
31
+ if: { properties: { _slug: { minLength: 1 } } },
32
+ then: { properties: { _slug: { pattern } } },
33
+ }, {
27
34
  // only do async isUniqueSlug check if the slug is valid
28
35
  if: { properties: { _slug: { pattern } } },
29
- then: { properties: { _slug: { isUniqueSlug: { id, orgUrlKey } } } },
36
+ then: {
37
+ properties: { _slug: { isUniqueSlug: { id, orgUrlKey } } },
38
+ },
30
39
  });
31
40
  const clone = util_1.cloneObject(schema);
32
41
  clone.properties._slug = _slug;
@@ -1 +1 @@
1
- {"version":3,"file":"addDynamicSlugValidation.js","sourceRoot":"","sources":["../../../../../src/core/schemas/internal/addDynamicSlugValidation.ts"],"names":[],"mappings":";;;AACA,0DAAkE;AAClE,wCAA4C;AAM5C;;;;;;GAMG;AACU,QAAA,wBAAwB,GAAG,CACtC,MAA4B,EAC5B,OAAsB,EACA,EAAE;;IACxB,MAAM,KAAK,GAAG,kBAAW,OAAC,MAAM,CAAC,UAAU,0CAAE,KAAK,CAAe,CAAC;IAClE,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,MAAM,CAAC;KACf;IACD,yBAAyB;IACzB,MAAM,EAAE,SAAS,EAAE,GAAG,OAAoB,CAAC;IAC3C,KAAK,CAAC,SAAS,GAAG,wBAAgB,CAAC,SAAS,CAAC,CAAC;IAC9C,sDAAsD;IACtD,MAAM,KAAK,GAAG,kBAAW,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IAC9C,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAC1B,MAAM,EAAE,EAAE,EAAE,GAAG,OAAoB,CAAC;IACpC,KAAK,CAAC,IAAI,CAAC;QACT,wDAAwD;QACxD,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QAC1C,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,EAAS,EAAE,EAAE;KAC5E,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,kBAAW,CAAC,MAAM,CAAC,CAAC;IAClC,KAAK,CAAC,UAAU,CAAC,KAAK,GAAG,KAAK,CAAC;IAC/B,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;IACpB,OAAO,KAAK,CAAC;AACf,CAAC,CAAC"}
1
+ {"version":3,"file":"addDynamicSlugValidation.js","sourceRoot":"","sources":["../../../../../src/core/schemas/internal/addDynamicSlugValidation.ts"],"names":[],"mappings":";;;AACA,0DAAkE;AAClE,wCAA4C;AAM5C;;;;;;GAMG;AACU,QAAA,wBAAwB,GAAG,CACtC,MAA4B,EAC5B,OAAsB,EACA,EAAE;;IACxB,MAAM,KAAK,GAAG,kBAAW,OAAC,MAAM,CAAC,UAAU,0CAAE,KAAK,CAAe,CAAC;IAClE,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,MAAM,CAAC;KACf;IACD,yBAAyB;IACzB,MAAM,EAAE,SAAS,EAAE,GAAG,OAAoB,CAAC;IAC3C,KAAK,CAAC,SAAS,GAAG,wBAAgB,CAAC,SAAS,CAAC,CAAC;IAC9C,sDAAsD;IACtD,MAAM,KAAK,GAAG,kBAAW,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IAE9C,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAC1B,+EAA+E;IAC/E,6DAA6D;IAC7D,OAAO,KAAK,CAAC,OAAO,CAAC;IAErB,MAAM,EAAE,EAAE,EAAE,GAAG,OAAoB,CAAC;IAEpC,KAAK,CAAC,IAAI,CACR;QACE,oDAAoD;QACpD,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE;QAC/C,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;KAC7C,EACD;QACE,wDAAwD;QACxD,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QAC1C,IAAI,EAAE;YACJ,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,EAAS,EAAE;SAClE;KACF,CACF,CAAC;IAEF,MAAM,KAAK,GAAG,kBAAW,CAAC,MAAM,CAAC,CAAC;IAClC,KAAK,CAAC,UAAU,CAAC,KAAK,GAAG,KAAK,CAAC;IAC/B,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;IACpB,OAAO,KAAK,CAAC;AACf,CAAC,CAAC"}
@@ -26,6 +26,11 @@ function editorToEntity(editor, portal) {
26
26
  // ensure the slug is truncated
27
27
  entity.slug = slugs_1.truncateSlug(_slug, entity.orgUrlKey);
28
28
  }
29
+ else {
30
+ // if no slug is passed in, save an empty string as the slug, so that
31
+ // it is not saved as the orgUrlKey truncated with an empty string
32
+ entity.slug = "";
33
+ }
29
34
  return entity;
30
35
  }
31
36
  exports.editorToEntity = editorToEntity;
@@ -1 +1 @@
1
- {"version":3,"file":"editorToEntity.js","sourceRoot":"","sources":["../../../../../../src/core/schemas/internal/metrics/editorToEntity.ts"],"names":[],"mappings":";;;AACA,2CAA+C;AAE/C,6DAAiE;AAEjE,oEAAoE;AACpE;;;;;;GAMG;AACH,SAAgB,cAAc,CAC5B,MAA4C,EAC5C,MAAe;;IAEf,yDAAyD;IACzD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAC3B,OAAO,MAAM,CAAC,KAAK,CAAC;IAEpB,kEAAkE;IAClE,yBAAyB;IACzB,MAAM,MAAM,GAAG,kBAAW,CAAC,MAAM,CAAmB,CAAC;IACrD,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;IAEvE,wCAAwC;IACxC,MAAM,CAAC,MAAM,SAAG,MAAM,CAAC,QAAQ,0CAAE,MAAM,CAAC;IAExC,IAAI,KAAK,EAAE;QACT,+BAA+B;QAC/B,MAAM,CAAC,IAAI,GAAG,oBAAY,CAAC,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;KACrD;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAtBD,wCAsBC"}
1
+ {"version":3,"file":"editorToEntity.js","sourceRoot":"","sources":["../../../../../../src/core/schemas/internal/metrics/editorToEntity.ts"],"names":[],"mappings":";;;AACA,2CAA+C;AAE/C,6DAAiE;AAEjE,oEAAoE;AACpE;;;;;;GAMG;AACH,SAAgB,cAAc,CAC5B,MAA4C,EAC5C,MAAe;;IAEf,yDAAyD;IACzD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAC3B,OAAO,MAAM,CAAC,KAAK,CAAC;IAEpB,kEAAkE;IAClE,yBAAyB;IACzB,MAAM,MAAM,GAAG,kBAAW,CAAC,MAAM,CAAmB,CAAC;IACrD,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;IAEvE,wCAAwC;IACxC,MAAM,CAAC,MAAM,SAAG,MAAM,CAAC,QAAQ,0CAAE,MAAM,CAAC;IAExC,IAAI,KAAK,EAAE;QACT,+BAA+B;QAC/B,MAAM,CAAC,IAAI,GAAG,oBAAY,CAAC,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;KACrD;SAAM;QACL,qEAAqE;QACrE,kEAAkE;QAClE,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;KAClB;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AA1BD,wCA0BC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@esri/hub-common",
3
- "version": "17.13.0",
3
+ "version": "17.13.1",
4
4
  "description": "Common TypeScript types and utility functions for @esri/hub.js.",
5
5
  "main": "dist/node/index.js",
6
6
  "module": "dist/esm/index.js",