@esri/hub-common 11.2.0 → 11.3.0

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.
@@ -0,0 +1,25 @@
1
+ import { __rest } from "tslib";
2
+ import { getPortalUrl } from "./get-portal-url";
3
+ import { btoa } from "abab";
4
+ import { _getHubUrlFromPortalHostname } from "./_get-hub-url-from-portal-hostname";
5
+ /**
6
+ * Builds a Hub "campaign" URL used as a single entry-point into
7
+ * Hub from external links, i.e. push notifications, emails, sms, etc,
8
+ * from which we can capture campaign-related telemetry before redirecting
9
+ * the user off to a provided destination.
10
+ * @param options.portal A string IPortal IHubRequestOptions or IRequestOptions object
11
+ * @param options.uri A URI that provides additional context for how to parse the provide meta
12
+ * @param options.meta An object of metadata for the campaign URL
13
+ * @param options.redirectURL A redirect URL
14
+ * @returns string A campaign URL
15
+ */
16
+ export function getCampaignUrl(options) {
17
+ const { portal } = options, data = __rest(options, ["portal"]);
18
+ const portalUrl = getPortalUrl(portal);
19
+ const hubURL = _getHubUrlFromPortalHostname(portalUrl);
20
+ const url = new URL(`${hubURL}/c`);
21
+ const b64Data = btoa(JSON.stringify(data));
22
+ url.searchParams.set("d", b64Data);
23
+ return url.toString();
24
+ }
25
+ //# sourceMappingURL=get-campaign-url.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-campaign-url.js","sourceRoot":"","sources":["../../../src/urls/get-campaign-url.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGhD,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,4BAA4B,EAAE,MAAM,qCAAqC,CAAC;AASnF;;;;;;;;;;GAUG;AACH,MAAM,UAAU,cAAc,CAAC,OAA6B;IAC1D,MAAM,EAAE,MAAM,KAAc,OAAO,EAAhB,IAAI,UAAK,OAAO,EAA7B,UAAmB,CAAU,CAAC;IACpC,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,4BAA4B,CAAC,SAAS,CAAC,CAAC;IACvD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,MAAM,IAAI,CAAC,CAAC;IACnC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3C,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACnC,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;AACxB,CAAC"}
@@ -18,6 +18,7 @@ export * from "./getHubApiFromPortalUrl";
18
18
  export * from "./getPortalBaseFromOrgUrl";
19
19
  export * from "./getGroupHomeUrl";
20
20
  export * from "./getUserHomeUrl";
21
+ export * from "./get-campaign-url";
21
22
  const MAP_OR_FEATURE_SERVER_URL_REGEX = /\/(map|feature)server/i;
22
23
  /**
23
24
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/urls/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iBAAiB,CAAC;AAChC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AAEjC,MAAM,+BAA+B,GAAG,wBAAwB,CAAC;AAEjE;;;;GAIG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,GAAW,EAAE,EAAE;IACrD,OAAO,+BAA+B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACnD,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,GAAW,EAAE,EAAE;IACnD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACzD,MAAM,YAAY,GAAG,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;IACvC,OAAO,YAAY,IAAI,GAAG,UAAU,CAAC,YAAY,CAAC,UAAU,CAAC;AAC/D,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/urls/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iBAAiB,CAAC;AAChC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AAEnC,MAAM,+BAA+B,GAAG,wBAAwB,CAAC;AAEjE;;;;GAIG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,GAAW,EAAE,EAAE;IACrD,OAAO,+BAA+B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACnD,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,GAAW,EAAE,EAAE;IACnD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACzD,MAAM,YAAY,GAAG,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;IACvC,OAAO,YAAY,IAAI,GAAG,UAAU,CAAC,YAAY,CAAC,UAAU,CAAC;AAC/D,CAAC,CAAC"}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getCampaignUrl = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const get_portal_url_1 = require("./get-portal-url");
6
+ const abab_1 = require("abab");
7
+ const _get_hub_url_from_portal_hostname_1 = require("./_get-hub-url-from-portal-hostname");
8
+ /**
9
+ * Builds a Hub "campaign" URL used as a single entry-point into
10
+ * Hub from external links, i.e. push notifications, emails, sms, etc,
11
+ * from which we can capture campaign-related telemetry before redirecting
12
+ * the user off to a provided destination.
13
+ * @param options.portal A string IPortal IHubRequestOptions or IRequestOptions object
14
+ * @param options.uri A URI that provides additional context for how to parse the provide meta
15
+ * @param options.meta An object of metadata for the campaign URL
16
+ * @param options.redirectURL A redirect URL
17
+ * @returns string A campaign URL
18
+ */
19
+ function getCampaignUrl(options) {
20
+ const { portal } = options, data = tslib_1.__rest(options, ["portal"]);
21
+ const portalUrl = get_portal_url_1.getPortalUrl(portal);
22
+ const hubURL = _get_hub_url_from_portal_hostname_1._getHubUrlFromPortalHostname(portalUrl);
23
+ const url = new URL(`${hubURL}/c`);
24
+ const b64Data = abab_1.btoa(JSON.stringify(data));
25
+ url.searchParams.set("d", b64Data);
26
+ return url.toString();
27
+ }
28
+ exports.getCampaignUrl = getCampaignUrl;
29
+ //# sourceMappingURL=get-campaign-url.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-campaign-url.js","sourceRoot":"","sources":["../../../src/urls/get-campaign-url.ts"],"names":[],"mappings":";;;;AACA,qDAAgD;AAGhD,+BAA4B;AAC5B,2FAAmF;AASnF;;;;;;;;;;GAUG;AACH,SAAgB,cAAc,CAAC,OAA6B;IAC1D,MAAM,EAAE,MAAM,KAAc,OAAO,EAAhB,IAAI,kBAAK,OAAO,EAA7B,UAAmB,CAAU,CAAC;IACpC,MAAM,SAAS,GAAG,6BAAY,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,gEAA4B,CAAC,SAAS,CAAC,CAAC;IACvD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,MAAM,IAAI,CAAC,CAAC;IACnC,MAAM,OAAO,GAAG,WAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3C,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACnC,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;AACxB,CAAC;AARD,wCAQC"}
@@ -22,6 +22,7 @@ tslib_1.__exportStar(require("./getHubApiFromPortalUrl"), exports);
22
22
  tslib_1.__exportStar(require("./getPortalBaseFromOrgUrl"), exports);
23
23
  tslib_1.__exportStar(require("./getGroupHomeUrl"), exports);
24
24
  tslib_1.__exportStar(require("./getUserHomeUrl"), exports);
25
+ tslib_1.__exportStar(require("./get-campaign-url"), exports);
25
26
  const MAP_OR_FEATURE_SERVER_URL_REGEX = /\/(map|feature)server/i;
26
27
  /**
27
28
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/urls/index.ts"],"names":[],"mappings":";;;;AAAA,kCAAqC;AACrC,sDAA4B;AAC5B,qEAA2C;AAC3C,+DAAqC;AACrC,2DAAiC;AACjC,2DAAiC;AACjC,6DAAmC;AACnC,2DAAiC;AACjC,qEAA2C;AAC3C,0DAAgC;AAChC,wEAA8C;AAC9C,oEAA0C;AAC1C,8DAAoC;AACpC,6DAAmC;AACnC,8DAAoC;AACpC,wEAA8C;AAC9C,mEAAyC;AACzC,oEAA0C;AAC1C,4DAAkC;AAClC,2DAAiC;AAEjC,MAAM,+BAA+B,GAAG,wBAAwB,CAAC;AAEjE;;;;GAIG;AACU,QAAA,uBAAuB,GAAG,CAAC,GAAW,EAAE,EAAE;IACrD,OAAO,+BAA+B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACnD,CAAC,CAAC;AAEF;;;;;GAKG;AACU,QAAA,qBAAqB,GAAG,CAAC,GAAW,EAAE,EAAE;IACnD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACzD,MAAM,YAAY,GAAG,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;IACvC,OAAO,YAAY,IAAI,GAAG,iBAAU,CAAC,YAAY,CAAC,UAAU,CAAC;AAC/D,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/urls/index.ts"],"names":[],"mappings":";;;;AAAA,kCAAqC;AACrC,sDAA4B;AAC5B,qEAA2C;AAC3C,+DAAqC;AACrC,2DAAiC;AACjC,2DAAiC;AACjC,6DAAmC;AACnC,2DAAiC;AACjC,qEAA2C;AAC3C,0DAAgC;AAChC,wEAA8C;AAC9C,oEAA0C;AAC1C,8DAAoC;AACpC,6DAAmC;AACnC,8DAAoC;AACpC,wEAA8C;AAC9C,mEAAyC;AACzC,oEAA0C;AAC1C,4DAAkC;AAClC,2DAAiC;AACjC,6DAAmC;AAEnC,MAAM,+BAA+B,GAAG,wBAAwB,CAAC;AAEjE;;;;GAIG;AACU,QAAA,uBAAuB,GAAG,CAAC,GAAW,EAAE,EAAE;IACrD,OAAO,+BAA+B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACnD,CAAC,CAAC;AAEF;;;;;GAKG;AACU,QAAA,qBAAqB,GAAG,CAAC,GAAW,EAAE,EAAE;IACnD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACzD,MAAM,YAAY,GAAG,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;IACvC,OAAO,YAAY,IAAI,GAAG,iBAAU,CAAC,YAAY,CAAC,UAAU,CAAC;AAC/D,CAAC,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { IHubRequestOptions } from "../types";
2
+ import { IPortal } from "@esri/arcgis-rest-portal";
3
+ import { IRequestOptions } from "@esri/arcgis-rest-request";
4
+ interface IBuildHubCampaignUrl {
5
+ portal: string | IPortal | IHubRequestOptions | IRequestOptions;
6
+ uri: string;
7
+ meta: any;
8
+ redirectUrl: string;
9
+ }
10
+ /**
11
+ * Builds a Hub "campaign" URL used as a single entry-point into
12
+ * Hub from external links, i.e. push notifications, emails, sms, etc,
13
+ * from which we can capture campaign-related telemetry before redirecting
14
+ * the user off to a provided destination.
15
+ * @param options.portal A string IPortal IHubRequestOptions or IRequestOptions object
16
+ * @param options.uri A URI that provides additional context for how to parse the provide meta
17
+ * @param options.meta An object of metadata for the campaign URL
18
+ * @param options.redirectURL A redirect URL
19
+ * @returns string A campaign URL
20
+ */
21
+ export declare function getCampaignUrl(options: IBuildHubCampaignUrl): string;
22
+ export {};
@@ -17,6 +17,7 @@ export * from "./getHubApiFromPortalUrl";
17
17
  export * from "./getPortalBaseFromOrgUrl";
18
18
  export * from "./getGroupHomeUrl";
19
19
  export * from "./getUserHomeUrl";
20
+ export * from "./get-campaign-url";
20
21
  /**
21
22
  *
22
23
  * @param url
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@esri/hub-common",
3
- "version": "11.2.0",
3
+ "version": "11.3.0",
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",