@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.
- package/dist/esm/core/schemas/internal/addDynamicSlugValidation.js +10 -1
- package/dist/esm/core/schemas/internal/addDynamicSlugValidation.js.map +1 -1
- package/dist/esm/core/schemas/internal/metrics/editorToEntity.js +5 -0
- package/dist/esm/core/schemas/internal/metrics/editorToEntity.js.map +1 -1
- package/dist/node/core/schemas/internal/addDynamicSlugValidation.js +10 -1
- package/dist/node/core/schemas/internal/addDynamicSlugValidation.js.map +1 -1
- package/dist/node/core/schemas/internal/metrics/editorToEntity.js +5 -0
- package/dist/node/core/schemas/internal/metrics/editorToEntity.js.map +1 -1
- package/package.json +1 -1
|
@@ -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: {
|
|
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;
|
|
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: {
|
|
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;
|
|
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;
|
|
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"}
|