sanity-plugin-aprimo 0.4.2 → 1.0.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.
Files changed (39) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +5 -6
  3. package/dist/index.d.ts +95 -0
  4. package/dist/index.js +266 -21
  5. package/dist/index.js.map +1 -1
  6. package/package.json +52 -49
  7. package/dist/arrayFunctions.js +0 -116
  8. package/dist/arrayFunctions.js.map +0 -1
  9. package/dist/components/AprimoCDNPreview.js +0 -26
  10. package/dist/components/AprimoCDNPreview.js.map +0 -1
  11. package/dist/components/AprimoCDNWidget.js +0 -163
  12. package/dist/components/AprimoCDNWidget.js.map +0 -1
  13. package/dist/components/AprimoDiff.js +0 -45
  14. package/dist/components/AprimoDiff.js.map +0 -1
  15. package/dist/components/AprimoPreview.js +0 -137
  16. package/dist/components/AprimoPreview.js.map +0 -1
  17. package/dist/components/AprimoWidget.js +0 -247
  18. package/dist/components/AprimoWidget.js.map +0 -1
  19. package/dist/components/ImagePreview.js +0 -32
  20. package/dist/components/ImagePreview.js.map +0 -1
  21. package/dist/components/RenditionSelector.js +0 -49
  22. package/dist/components/RenditionSelector.js.map +0 -1
  23. package/dist/components/SecretsConfigView.js +0 -49
  24. package/dist/components/SecretsConfigView.js.map +0 -1
  25. package/dist/schema/AprimoAsset.js +0 -120
  26. package/dist/schema/AprimoAsset.js.map +0 -1
  27. package/dist/schema/AprimoCDNAsset.js +0 -54
  28. package/dist/schema/AprimoCDNAsset.js.map +0 -1
  29. package/dist/typings.d.js +0 -2
  30. package/dist/typings.d.js.map +0 -1
  31. package/dist/utils/auth.js +0 -41
  32. package/dist/utils/auth.js.map +0 -1
  33. package/dist/utils/getRenditions.js +0 -31
  34. package/dist/utils/getRenditions.js.map +0 -1
  35. package/dist/utils/index.js +0 -45
  36. package/dist/utils/index.js.map +0 -1
  37. package/dist/utils/openSelector.js +0 -36
  38. package/dist/utils/openSelector.js.map +0 -1
  39. package/sanity.json +0 -20
@@ -1,116 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- var _react = _interopRequireWildcard(require("react"));
9
-
10
- var _default2 = _interopRequireDefault(require("part:@sanity/components/buttons/default"));
11
-
12
- var _patchEvent = _interopRequireWildcard(require("part:@sanity/form-builder/patch-event"));
13
-
14
- var _functionsDefault = _interopRequireDefault(require("part:@sanity/form-builder/input/array/functions-default"));
15
-
16
- var _sanitySecrets = require("sanity-secrets");
17
-
18
- var _SecretsConfigView = _interopRequireWildcard(require("./components/SecretsConfigView"));
19
-
20
- var _AprimoAsset = _interopRequireDefault(require("./schema/AprimoAsset"));
21
-
22
- var _utils = require("./utils");
23
-
24
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
25
-
26
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
27
-
28
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
29
-
30
- function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
31
-
32
- function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
33
-
34
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
35
-
36
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
37
-
38
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
39
-
40
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
41
-
42
- function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
43
-
44
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
45
-
46
- var AssetListFunctions = props => {
47
- var _useSecrets = (0, _sanitySecrets.useSecrets)(_SecretsConfigView.namespace),
48
- secrets = _useSecrets.secrets,
49
- loading = _useSecrets.loading;
50
-
51
- var _useState = (0, _react.useState)(false),
52
- _useState2 = _slicedToArray(_useState, 2),
53
- showSettings = _useState2[0],
54
- setShowSettings = _useState2[1];
55
-
56
- var _useState3 = (0, _react.useState)(false),
57
- _useState4 = _slicedToArray(_useState3, 2),
58
- isLoading = _useState4[0],
59
- setIsLoading = _useState4[1];
60
-
61
- var aprimoAssetType = props.type.of.find(t => t.name === _AprimoAsset.default.name);
62
- var onCreateValue = props.onCreateValue,
63
- onChange = props.onChange;
64
-
65
- var setAssets = assets => {
66
- var items = assets.map(asset => Object.assign({}, asset, {
67
- // Schema version. In case we ever change our schema.
68
- _version: 1
69
- }, onCreateValue(aprimoAssetType)));
70
- onChange(_patchEvent.default.from((0, _patchEvent.setIfMissing)([]), (0, _patchEvent.insert)(items, 'after', [-1])));
71
- };
72
-
73
- (0, _react.useEffect)(() => {
74
- var handleMessageEvent = /*#__PURE__*/function () {
75
- var _ref = _asyncToGenerator(function* (event) {
76
- // Ensure only messages from the Aprimo Content Selector are handled
77
- if (secrets && event.origin === "https://".concat(secrets.tenantName, ".dam.aprimo.com")) {
78
- if (event.data.result === 'cancel') {
79
- setIsLoading(false);
80
- return;
81
- } else if (event.data.selection && isLoading) {
82
- setIsLoading(false);
83
- setAssets(event.data.selection);
84
- }
85
- }
86
- });
87
-
88
- return function handleMessageEvent(_x) {
89
- return _ref.apply(this, arguments);
90
- };
91
- }();
92
-
93
- window.addEventListener('message', handleMessageEvent); //cleanup
94
-
95
- return () => window.removeEventListener('message', handleMessageEvent);
96
- }, [secrets, isLoading]);
97
-
98
- var actions = /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_default2.default, {
99
- enabled: props.readOnly !== true && !loading ? 1 : undefined,
100
- inverted: true,
101
- onClick: () => {
102
- setIsLoading(true);
103
- (0, _utils.openSelector)(secrets.tenantName, 'multiple');
104
- }
105
- }, "Add multiple"), /*#__PURE__*/_react.default.createElement(_default2.default, {
106
- onClick: () => setShowSettings(true)
107
- }, "Configure"));
108
-
109
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, showSettings && /*#__PURE__*/_react.default.createElement(_SecretsConfigView.default, {
110
- onClose: () => setShowSettings(false)
111
- }), /*#__PURE__*/_react.default.createElement(_functionsDefault.default, props, aprimoAssetType && actions));
112
- };
113
-
114
- var _default = AssetListFunctions;
115
- exports.default = _default;
116
- //# sourceMappingURL=arrayFunctions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/arrayFunctions.jsx"],"names":["AssetListFunctions","props","namespace","secrets","loading","showSettings","setShowSettings","isLoading","setIsLoading","aprimoAssetType","type","of","find","t","name","aprimoAsset","onCreateValue","onChange","setAssets","assets","items","map","asset","Object","assign","_version","PatchEvent","from","handleMessageEvent","event","origin","tenantName","data","result","selection","window","addEventListener","removeEventListener","actions","readOnly","undefined"],"mappings":"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","sourcesContent":["import React, { useEffect, useState } from 'react'\nimport Button from 'part:@sanity/components/buttons/default'\nimport PatchEvent, {\n setIfMissing,\n insert,\n} from 'part:@sanity/form-builder/patch-event'\nimport DefaultArrayFunctions from 'part:@sanity/form-builder/input/array/functions-default'\n\nimport { useSecrets } from 'sanity-secrets'\nimport SecretsConfigView, { namespace } from './components/SecretsConfigView'\nimport aprimoAsset from './schema/AprimoAsset'\nimport { openSelector } from './utils'\n\nconst AssetListFunctions = props => {\n const { secrets, loading } = useSecrets(namespace)\n const [showSettings, setShowSettings] = useState(false)\n const [isLoading, setIsLoading] = useState(false)\n\n const aprimoAssetType = props.type.of.find(t => t.name === aprimoAsset.name)\n\n const { onCreateValue, onChange } = props\n\n const setAssets = assets => {\n const items = assets.map(asset =>\n Object.assign(\n {},\n asset,\n {\n // Schema version. In case we ever change our schema.\n _version: 1,\n },\n onCreateValue(aprimoAssetType)\n )\n )\n onChange(PatchEvent.from(setIfMissing([]), insert(items, 'after', [-1])))\n }\n\n useEffect(() => {\n const handleMessageEvent = async event => {\n // Ensure only messages from the Aprimo Content Selector are handled\n if (\n secrets &&\n event.origin === `https://${secrets.tenantName}.dam.aprimo.com`\n ) {\n if (event.data.result === 'cancel') {\n setIsLoading(false)\n return\n } else if (event.data.selection && isLoading) {\n setIsLoading(false)\n setAssets(event.data.selection)\n }\n }\n }\n\n window.addEventListener('message', handleMessageEvent)\n //cleanup\n return () => window.removeEventListener('message', handleMessageEvent)\n }, [secrets, isLoading])\n\n const actions = (\n <>\n <Button\n enabled={(props.readOnly !== true && !loading) ? 1 : undefined}\n inverted\n onClick={() => {\n setIsLoading(true)\n openSelector(secrets.tenantName, 'multiple')\n }}\n >\n Add multiple\n </Button>\n <Button onClick={() => setShowSettings(true)}>Configure</Button>\n </>\n )\n\n return (\n <>\n {showSettings && (\n <SecretsConfigView onClose={() => setShowSettings(false)} />\n )}\n <DefaultArrayFunctions {...props}>\n {aprimoAssetType && actions}\n </DefaultArrayFunctions>\n </>\n )\n}\n\nexport default AssetListFunctions\n"],"file":"arrayFunctions.js"}
@@ -1,26 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- var _react = _interopRequireDefault(require("react"));
9
-
10
- var _ImagePreview = _interopRequireDefault(require("./ImagePreview"));
11
-
12
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
-
14
- var AprimoCDNPreview = _ref => {
15
- var value = _ref.value,
16
- layout = _ref.layout;
17
- var url = value && value.rendition && value.rendition.publicuri;
18
- return /*#__PURE__*/_react.default.createElement(_ImagePreview.default, {
19
- url: url,
20
- layout: layout
21
- });
22
- };
23
-
24
- var _default = AprimoCDNPreview;
25
- exports.default = _default;
26
- //# sourceMappingURL=AprimoCDNPreview.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/AprimoCDNPreview.tsx"],"names":["AprimoCDNPreview","value","layout","url","rendition","publicuri"],"mappings":";;;;;;;AAAA;;AACA;;;;AAOA,IAAMA,gBAAgB,GAAG,QAAuC;AAAA,MAApCC,KAAoC,QAApCA,KAAoC;AAAA,MAA7BC,MAA6B,QAA7BA,MAA6B;AAC9D,MAAMC,GAAG,GAAGF,KAAK,IAAIA,KAAK,CAACG,SAAf,IAA4BH,KAAK,CAACG,SAAN,CAAgBC,SAAxD;AACA,sBAAO,6BAAC,qBAAD;AAAc,IAAA,GAAG,EAAEF,GAAnB;AAAwB,IAAA,MAAM,EAAED;AAAhC,IAAP;AACD,CAHD;;eAKeF,gB","sourcesContent":["import React from 'react'\nimport ImagePreview from './ImagePreview'\n\ntype ComponentProps = {\n layout?: 'default' | 'block'\n value: Record<string, any>\n}\n\nconst AprimoCDNPreview = ({ value, layout }: ComponentProps) => {\n const url = value && value.rendition && value.rendition.publicuri\n return <ImagePreview url={url} layout={layout} />\n}\n\nexport default AprimoCDNPreview\n"],"file":"AprimoCDNPreview.js"}
@@ -1,163 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- var _react = _interopRequireWildcard(require("react"));
9
-
10
- var _patchEvent = _interopRequireWildcard(require("part:@sanity/form-builder/patch-event"));
11
-
12
- var _buttonGrid = _interopRequireDefault(require("part:@sanity/components/buttons/button-grid"));
13
-
14
- var _default2 = _interopRequireDefault(require("part:@sanity/components/buttons/default"));
15
-
16
- var _default3 = _interopRequireDefault(require("part:@sanity/components/fieldsets/default"));
17
-
18
- var _pluginIcon = _interopRequireDefault(require("part:@sanity/base/plugin-icon"));
19
-
20
- var _styledComponents = _interopRequireDefault(require("styled-components"));
21
-
22
- var _AprimoPreview = _interopRequireDefault(require("./AprimoPreview"));
23
-
24
- var _sanitySecrets = require("sanity-secrets");
25
-
26
- var _nanoid = require("nanoid");
27
-
28
- var _SecretsConfigView = _interopRequireWildcard(require("./SecretsConfigView"));
29
-
30
- var _utils = require("../utils");
31
-
32
- var _templateObject;
33
-
34
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
35
-
36
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
37
-
38
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
39
-
40
- function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
41
-
42
- function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
43
-
44
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
45
-
46
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
47
-
48
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
49
-
50
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
51
-
52
- function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
53
-
54
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
55
-
56
- function _taggedTemplateLiteral(strings, raw) { if (!raw) { raw = strings.slice(0); } return Object.freeze(Object.defineProperties(strings, { raw: { value: Object.freeze(raw) } })); }
57
-
58
- var SetupButtonContainer = _styledComponents.default.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n position: relative;\n display: block;\n font-size: 0.8em;\n transform: translate(0%, -10%);\n"])));
59
-
60
- var AprimoCDNWidget = props => {
61
- var value = props.value,
62
- type = props.type,
63
- markers = props.markers,
64
- level = props.level,
65
- readOnly = props.readOnly,
66
- presence = props.presence,
67
- onChange = props.onChange;
68
-
69
- var removeValue = () => {
70
- onChange(_patchEvent.default.from([(0, _patchEvent.unset)()]));
71
- };
72
-
73
- var _useState = (0, _react.useState)(false),
74
- _useState2 = _slicedToArray(_useState, 2),
75
- showSettings = _useState2[0],
76
- setShowSettings = _useState2[1]; //this keeps track of which component is requesting an asset
77
-
78
-
79
- var _useState3 = (0, _react.useState)(false),
80
- _useState4 = _slicedToArray(_useState3, 2),
81
- isLoading = _useState4[0],
82
- setIsLoading = _useState4[1];
83
-
84
- var _useSecrets = (0, _sanitySecrets.useSecrets)(_SecretsConfigView.namespace),
85
- secrets = _useSecrets.secrets;
86
-
87
- var setAsset = asset => {
88
- asset._key = value && value._key ? value._key : (0, _nanoid.nanoid)();
89
- onChange(_patchEvent.default.from(asset ? (0, _patchEvent.set)(asset) : (0, _patchEvent.unset)()));
90
- };
91
-
92
- (0, _react.useEffect)(() => {
93
- var handleMessageEvent = /*#__PURE__*/function () {
94
- var _ref = _asyncToGenerator(function* (event) {
95
- // Ensure only messages from the Aprimo Content Selector are handled
96
- if (secrets && event.origin === "https://".concat(secrets.tenantName, ".dam.aprimo.com")) {
97
- //if cancel, get out of fetching state
98
- if (event.data.result === 'cancel') {
99
- setIsLoading(false);
100
- return;
101
- } else if (event.data.selection && event.data.selection[0] && isLoading) {
102
- setAsset(event.data.selection[0]);
103
- setIsLoading(false);
104
- }
105
- }
106
- });
107
-
108
- return function handleMessageEvent(_x) {
109
- return _ref.apply(this, arguments);
110
- };
111
- }();
112
-
113
- window.addEventListener('message', handleMessageEvent); //cleanup
114
-
115
- return () => window.removeEventListener('message', handleMessageEvent);
116
- }, [secrets, isLoading]);
117
-
118
- var action = selectType => secrets ? () => {
119
- setIsLoading(true);
120
- (0, _utils.openSelector)(secrets.tenantName, selectType);
121
- } : () => setShowSettings(true);
122
-
123
- return /*#__PURE__*/_react.default.createElement("div", null, showSettings && /*#__PURE__*/_react.default.createElement(_SecretsConfigView.default, {
124
- onClose: () => setShowSettings(false)
125
- }), /*#__PURE__*/_react.default.createElement(SetupButtonContainer, null, /*#__PURE__*/_react.default.createElement(_default2.default, {
126
- color: "primary",
127
- icon: _pluginIcon.default,
128
- kind: "simple",
129
- title: "Configure",
130
- tabIndex: 1,
131
- onClick: () => setShowSettings(true)
132
- })), /*#__PURE__*/_react.default.createElement(_default3.default, {
133
- markers: markers,
134
- presence: presence,
135
- legend: type.title,
136
- description: type.description,
137
- level: level
138
- }, /*#__PURE__*/_react.default.createElement("div", {
139
- style: {
140
- textAlign: 'center'
141
- }
142
- }, /*#__PURE__*/_react.default.createElement(_AprimoPreview.default, {
143
- value: value
144
- })), /*#__PURE__*/_react.default.createElement(_buttonGrid.default, {
145
- align: "start"
146
- }, /*#__PURE__*/_react.default.createElement(_default2.default, {
147
- disabled: readOnly,
148
- inverted: true,
149
- title: "Select an asset",
150
- kind: "default",
151
- onClick: action('singlerendition')
152
- }, "Select\u2026"), /*#__PURE__*/_react.default.createElement(_default2.default, {
153
- disabled: readOnly || !value,
154
- color: "danger",
155
- inverted: true,
156
- title: "Remove asset",
157
- onClick: removeValue
158
- }, "Remove"))));
159
- };
160
-
161
- var _default = AprimoCDNWidget;
162
- exports.default = _default;
163
- //# sourceMappingURL=AprimoCDNWidget.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/AprimoCDNWidget.tsx"],"names":["SetupButtonContainer","styled","div","AprimoCDNWidget","props","value","type","markers","level","readOnly","presence","onChange","removeValue","PatchEvent","from","showSettings","setShowSettings","isLoading","setIsLoading","namespace","secrets","setAsset","asset","_key","handleMessageEvent","event","origin","tenantName","data","result","selection","window","addEventListener","removeEventListener","action","selectType","SetupIcon","title","description","textAlign"],"mappings":";;;;;;;AAAA;;AACA;;AAEA;;AACA;;AACA;;AACA;;AAGA;;AACA;;AACA;;AACA;;AAEA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,IAAMA,oBAAoB,GAAGC,0BAAOC,GAAV,yKAA1B;;AAiBA,IAAMC,eAAe,GAAIC,KAAD,IAAkB;AACxC,MAAQC,KAAR,GAAsED,KAAtE,CAAQC,KAAR;AAAA,MAAeC,IAAf,GAAsEF,KAAtE,CAAeE,IAAf;AAAA,MAAqBC,OAArB,GAAsEH,KAAtE,CAAqBG,OAArB;AAAA,MAA8BC,KAA9B,GAAsEJ,KAAtE,CAA8BI,KAA9B;AAAA,MAAqCC,QAArC,GAAsEL,KAAtE,CAAqCK,QAArC;AAAA,MAA+CC,QAA/C,GAAsEN,KAAtE,CAA+CM,QAA/C;AAAA,MAAyDC,QAAzD,GAAsEP,KAAtE,CAAyDO,QAAzD;;AAEA,MAAMC,WAAW,GAAG,MAAM;AACxBD,IAAAA,QAAQ,CAACE,oBAAWC,IAAX,CAAgB,CAAC,wBAAD,CAAhB,CAAD,CAAR;AACD,GAFD;;AAIA,kBAAwC,qBAAS,KAAT,CAAxC;AAAA;AAAA,MAAOC,YAAP;AAAA,MAAqBC,eAArB,iBAPwC,CASxC;;;AACA,mBAAkC,qBAAS,KAAT,CAAlC;AAAA;AAAA,MAAOC,SAAP;AAAA,MAAkBC,YAAlB;;AAEA,oBAAoB,+BAAoBC,4BAApB,CAApB;AAAA,MAAQC,OAAR,eAAQA,OAAR;;AAEA,MAAMC,QAAQ,GAAIC,KAAD,IAAgC;AAC/CA,IAAAA,KAAK,CAACC,IAAN,GAAalB,KAAK,IAAIA,KAAK,CAACkB,IAAf,GAAsBlB,KAAK,CAACkB,IAA5B,GAAmC,qBAAhD;AACAZ,IAAAA,QAAQ,CAACE,oBAAWC,IAAX,CAAgBQ,KAAK,GAAG,qBAAIA,KAAJ,CAAH,GAAgB,wBAArC,CAAD,CAAR;AACD,GAHD;;AAKA,wBAAU,MAAM;AACd,QAAME,kBAAkB;AAAA,mCAAG,WAAOC,KAAP,EAA+B;AACxD;AACA,YACEL,OAAO,IACPK,KAAK,CAACC,MAAN,uBAA4BN,OAAO,CAACO,UAApC,oBAFF,EAGE;AACA;AACA,cAAIF,KAAK,CAACG,IAAN,CAAWC,MAAX,KAAsB,QAA1B,EAAoC;AAClCX,YAAAA,YAAY,CAAC,KAAD,CAAZ;AACA;AACD,WAHD,MAGO,IACLO,KAAK,CAACG,IAAN,CAAWE,SAAX,IACAL,KAAK,CAACG,IAAN,CAAWE,SAAX,CAAqB,CAArB,CADA,IAEAb,SAHK,EAIL;AACAI,YAAAA,QAAQ,CAACI,KAAK,CAACG,IAAN,CAAWE,SAAX,CAAqB,CAArB,CAAD,CAAR;AACAZ,YAAAA,YAAY,CAAC,KAAD,CAAZ;AACD;AACF;AACF,OAnBuB;;AAAA,sBAAlBM,kBAAkB;AAAA;AAAA;AAAA,OAAxB;;AAqBAO,IAAAA,MAAM,CAACC,gBAAP,CAAwB,SAAxB,EAAmCR,kBAAnC,EAtBc,CAuBd;;AACA,WAAO,MAAMO,MAAM,CAACE,mBAAP,CAA2B,SAA3B,EAAsCT,kBAAtC,CAAb;AACD,GAzBD,EAyBG,CAACJ,OAAD,EAAUH,SAAV,CAzBH;;AA2BA,MAAMiB,MAAM,GAAIC,UAAD,IACbf,OAAO,GACH,MAAM;AACJF,IAAAA,YAAY,CAAC,IAAD,CAAZ;AACA,6BAAaE,OAAO,CAACO,UAArB,EAAiCQ,UAAjC;AACD,GAJE,GAKH,MAAMnB,eAAe,CAAC,IAAD,CAN3B;;AAQA,sBACE,0CACGD,YAAY,iBACX,6BAAC,0BAAD;AAAmB,IAAA,OAAO,EAAE,MAAMC,eAAe,CAAC,KAAD;AAAjD,IAFJ,eAIE,6BAAC,oBAAD,qBACE,6BAAC,iBAAD;AACE,IAAA,KAAK,EAAC,SADR;AAEE,IAAA,IAAI,EAAEoB,mBAFR;AAGE,IAAA,IAAI,EAAC,QAHP;AAIE,IAAA,KAAK,EAAC,WAJR;AAKE,IAAA,QAAQ,EAAE,CALZ;AAME,IAAA,OAAO,EAAE,MAAMpB,eAAe,CAAC,IAAD;AANhC,IADF,CAJF,eAcE,6BAAC,iBAAD;AACE,IAAA,OAAO,EAAET,OADX;AAEE,IAAA,QAAQ,EAAEG,QAFZ;AAGE,IAAA,MAAM,EAAEJ,IAAI,CAAC+B,KAHf;AAIE,IAAA,WAAW,EAAE/B,IAAI,CAACgC,WAJpB;AAKE,IAAA,KAAK,EAAE9B;AALT,kBAOE;AAAK,IAAA,KAAK,EAAE;AAAE+B,MAAAA,SAAS,EAAE;AAAb;AAAZ,kBACE,6BAAC,sBAAD;AAAe,IAAA,KAAK,EAAElC;AAAtB,IADF,CAPF,eAWE,6BAAC,mBAAD;AAAY,IAAA,KAAK,EAAC;AAAlB,kBACE,6BAAC,iBAAD;AACE,IAAA,QAAQ,EAAEI,QADZ;AAEE,IAAA,QAAQ,MAFV;AAGE,IAAA,KAAK,EAAC,iBAHR;AAIE,IAAA,IAAI,EAAC,SAJP;AAKE,IAAA,OAAO,EAAEyB,MAAM,CAAC,iBAAD;AALjB,oBADF,eAUE,6BAAC,iBAAD;AACE,IAAA,QAAQ,EAAEzB,QAAQ,IAAI,CAACJ,KADzB;AAEE,IAAA,KAAK,EAAC,QAFR;AAGE,IAAA,QAAQ,MAHV;AAIE,IAAA,KAAK,EAAC,cAJR;AAKE,IAAA,OAAO,EAAEO;AALX,cAVF,CAXF,CAdF,CADF;AAiDD,CAvGD;;eAyGeT,e","sourcesContent":["import React, { useEffect, useState } from 'react'\nimport PatchEvent, { set, unset } from 'part:@sanity/form-builder/patch-event'\n//TODO: pjut all these in sanity-ui\nimport ButtonGrid from 'part:@sanity/components/buttons/button-grid'\nimport Button from 'part:@sanity/components/buttons/default'\nimport Fieldset from 'part:@sanity/components/fieldsets/default'\nimport SetupIcon from 'part:@sanity/base/plugin-icon'\nimport { Marker } from '@sanity/types'\n\nimport styled from 'styled-components'\nimport AprimoPreview from './AprimoPreview'\nimport { useSecrets } from 'sanity-secrets'\nimport { nanoid } from 'nanoid'\n\nimport SecretsConfigView, { Secrets, namespace } from './SecretsConfigView'\nimport { openSelector } from '../utils'\n\nconst SetupButtonContainer = styled.div`\n position: relative;\n display: block;\n font-size: 0.8em;\n transform: translate(0%, -10%);\n`\n\ntype Props = {\n type: Record<string, any>\n onChange: (patches: any) => void\n value: any | undefined\n level: number\n readOnly: boolean\n markers: Marker[]\n presence: any[]\n}\n\nconst AprimoCDNWidget = (props: Props) => {\n const { value, type, markers, level, readOnly, presence, onChange } = props\n\n const removeValue = () => {\n onChange(PatchEvent.from([unset()]))\n }\n\n const [showSettings, setShowSettings] = useState(false)\n\n //this keeps track of which component is requesting an asset\n const [isLoading, setIsLoading] = useState(false)\n\n const { secrets } = useSecrets<Secrets>(namespace)\n\n const setAsset = (asset: Record<string, any>) => {\n asset._key = value && value._key ? value._key : nanoid()\n onChange(PatchEvent.from(asset ? set(asset) : unset()))\n }\n\n useEffect(() => {\n const handleMessageEvent = async (event: MessageEvent) => {\n // Ensure only messages from the Aprimo Content Selector are handled\n if (\n secrets &&\n event.origin === `https://${secrets.tenantName}.dam.aprimo.com`\n ) {\n //if cancel, get out of fetching state\n if (event.data.result === 'cancel') {\n setIsLoading(false)\n return\n } else if (\n event.data.selection &&\n event.data.selection[0] &&\n isLoading\n ) {\n setAsset(event.data.selection[0])\n setIsLoading(false)\n }\n }\n }\n\n window.addEventListener('message', handleMessageEvent)\n //cleanup\n return () => window.removeEventListener('message', handleMessageEvent)\n }, [secrets, isLoading])\n\n const action = (selectType: string) =>\n secrets\n ? () => {\n setIsLoading(true)\n openSelector(secrets.tenantName, selectType)\n }\n : () => setShowSettings(true)\n\n return (\n <div>\n {showSettings && (\n <SecretsConfigView onClose={() => setShowSettings(false)} />\n )}\n <SetupButtonContainer>\n <Button\n color=\"primary\"\n icon={SetupIcon}\n kind=\"simple\"\n title=\"Configure\"\n tabIndex={1}\n onClick={() => setShowSettings(true)}\n />\n </SetupButtonContainer>\n <Fieldset\n markers={markers}\n presence={presence}\n legend={type.title}\n description={type.description}\n level={level}\n >\n <div style={{ textAlign: 'center' }}>\n <AprimoPreview value={value} />\n </div>\n\n <ButtonGrid align=\"start\">\n <Button\n disabled={readOnly}\n inverted\n title=\"Select an asset\"\n kind=\"default\"\n onClick={action('singlerendition')}\n >\n Select…\n </Button>\n <Button\n disabled={readOnly || !value}\n color=\"danger\"\n inverted\n title=\"Remove asset\"\n onClick={removeValue}\n >\n Remove\n </Button>\n </ButtonGrid>\n </Fieldset>\n </div>\n )\n}\n\nexport default AprimoCDNWidget\n"],"file":"AprimoCDNWidget.js"}
@@ -1,45 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- var _react = _interopRequireDefault(require("react"));
9
-
10
- var _diff = require("@sanity/field/diff");
11
-
12
- var _AprimoCDNPreview = _interopRequireDefault(require("./AprimoCDNPreview"));
13
-
14
- var _AprimoPreview = _interopRequireDefault(require("./AprimoPreview"));
15
-
16
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
-
18
- var findPreviewComponent = schemaName => {
19
- switch (schemaName) {
20
- case 'aprimo.cdnasset':
21
- return _AprimoCDNPreview.default;
22
-
23
- case 'aprimo.asset':
24
- return _AprimoPreview.default;
25
-
26
- default:
27
- return () => /*#__PURE__*/_react.default.createElement("div", null);
28
- }
29
- };
30
-
31
- var AprimoDiff = _ref => {
32
- var diff = _ref.diff,
33
- schemaType = _ref.schemaType;
34
- console.log('diffFromTo', _diff.DiffFromTo);
35
- var previewComponent = findPreviewComponent(schemaType.name);
36
- return /*#__PURE__*/_react.default.createElement(_diff.DiffFromTo, {
37
- diff: diff,
38
- schemaType: schemaType,
39
- previewComponent: previewComponent
40
- });
41
- };
42
-
43
- var _default = AprimoDiff;
44
- exports.default = _default;
45
- //# sourceMappingURL=AprimoDiff.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/AprimoDiff.tsx"],"names":["findPreviewComponent","schemaName","AprimoCDNPreview","AprimoPreview","AprimoDiff","diff","schemaType","console","log","DiffFromTo","previewComponent","name"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;;;AAEA,IAAMA,oBAAoB,GAAIC,UAAD,IAAwB;AACnD,UAAQA,UAAR;AACE,SAAK,iBAAL;AACE,aAAOC,yBAAP;;AACF,SAAK,cAAL;AACE,aAAOC,sBAAP;;AACF;AACE,aAAO,mBAAM,yCAAb;AANJ;AAQD,CATD;;AAWA,IAAMC,UAAU,GAAG,QAMb;AAAA,MALJC,IAKI,QALJA,IAKI;AAAA,MAJJC,UAII,QAJJA,UAII;AACJC,EAAAA,OAAO,CAACC,GAAR,CAAY,YAAZ,EAA0BC,gBAA1B;AACA,MAAMC,gBAAgB,GAAGV,oBAAoB,CAACM,UAAU,CAACK,IAAZ,CAA7C;AACA,sBACE,6BAAC,gBAAD;AACE,IAAA,IAAI,EAAEN,IADR;AAEE,IAAA,UAAU,EAAEC,UAFd;AAGE,IAAA,gBAAgB,EAAEI;AAHpB,IADF;AAOD,CAhBD;;eAkBeN,U","sourcesContent":["import React from 'react'\nimport { DiffFromTo, SchemaType } from '@sanity/field/diff'\nimport AprimoCDNPreview from './AprimoCDNPreview'\nimport AprimoPreview from './AprimoPreview'\n\nconst findPreviewComponent = (schemaName: string) => {\n switch (schemaName) {\n case 'aprimo.cdnasset':\n return AprimoCDNPreview\n case 'aprimo.asset':\n return AprimoPreview\n default:\n return () => <div />\n }\n}\n\nconst AprimoDiff = ({\n diff,\n schemaType,\n}: {\n diff: any\n schemaType: SchemaType\n}) => {\n console.log('diffFromTo', DiffFromTo)\n const previewComponent = findPreviewComponent(schemaType.name)\n return (\n <DiffFromTo\n diff={diff}\n schemaType={schemaType}\n previewComponent={previewComponent}\n />\n )\n}\n\nexport default AprimoDiff\n"],"file":"AprimoDiff.js"}
@@ -1,137 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
-
8
- var _react = _interopRequireWildcard(require("react"));
9
-
10
- var _sanitySecrets = require("sanity-secrets");
11
-
12
- var _auth = require("../utils/auth");
13
-
14
- var _SecretsConfigView = require("./SecretsConfigView");
15
-
16
- var _ImagePreview = _interopRequireDefault(require("./ImagePreview"));
17
-
18
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
-
20
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
21
-
22
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
23
-
24
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
25
-
26
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
27
-
28
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
29
-
30
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
31
-
32
- function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
33
-
34
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
35
-
36
- function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
37
-
38
- function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
39
-
40
- var getPreviewUrl = /*#__PURE__*/function () {
41
- var _ref = _asyncToGenerator(function* (secrets, token, recordId) {
42
- if (secrets && secrets.tenantName && token && recordId) {
43
- var headers = {
44
- Authorization: "Bearer ".concat(token),
45
- 'select-record': 'preview',
46
- 'API-Version': '1'
47
- };
48
- return fetch("https://".concat(secrets.tenantName, ".dam.aprimo.com/api/core/record/").concat(recordId), {
49
- headers
50
- }).then(res => res.json());
51
- } else {
52
- return '';
53
- }
54
- });
55
-
56
- return function getPreviewUrl(_x, _x2, _x3) {
57
- return _ref.apply(this, arguments);
58
- };
59
- }();
60
-
61
- var AprimoPreview = _ref2 => {
62
- var value = _ref2.value,
63
- layout = _ref2.layout;
64
-
65
- var _useSecrets = (0, _sanitySecrets.useSecrets)(_SecretsConfigView.namespace),
66
- secrets = _useSecrets.secrets;
67
-
68
- var _useState = (0, _react.useState)(null),
69
- _useState2 = _slicedToArray(_useState, 2),
70
- url = _useState2[0],
71
- setUrl = _useState2[1];
72
-
73
- var _useState3 = (0, _react.useState)(null),
74
- _useState4 = _slicedToArray(_useState3, 2),
75
- token = _useState4[0],
76
- setToken = _useState4[1]; // //TODO: do a video for videos?
77
- // const contentType = 'image'
78
-
79
-
80
- (0, _react.useEffect)(() => {
81
- var fetchToken = /*#__PURE__*/function () {
82
- var _ref3 = _asyncToGenerator(function* () {
83
- var token = localStorage.getItem('aprimoToken');
84
-
85
- if (!token && secrets) {
86
- yield (0, _auth.setAuthToken)(secrets);
87
- token = localStorage.getItem('aprimoToken');
88
- }
89
-
90
- setToken(token);
91
- });
92
-
93
- return function fetchToken() {
94
- return _ref3.apply(this, arguments);
95
- };
96
- }();
97
-
98
- fetchToken();
99
- }, [value, secrets]);
100
- (0, _react.useEffect)(() => {
101
- var fetchUrl = /*#__PURE__*/function () {
102
- var _ref4 = _asyncToGenerator(function* () {
103
- if (token && secrets) {
104
- try {
105
- var recordInfo = yield getPreviewUrl(secrets, token, value.id);
106
- var previewUrl = recordInfo._embedded.preview.uri; //TODO: do something for vid
107
- // const contentType = recordInfo.contentType
108
-
109
- setUrl(previewUrl);
110
- } catch (e) {
111
- //thrown for 401
112
- //reset the token, which will rerun this callback
113
- yield (0, _auth.setAuthToken)(secrets);
114
-
115
- var _token = localStorage.getItem('aprimoToken');
116
-
117
- setToken(_token);
118
- }
119
- }
120
- });
121
-
122
- return function fetchUrl() {
123
- return _ref4.apply(this, arguments);
124
- };
125
- }();
126
-
127
- fetchUrl();
128
- }, [value, secrets, token]);
129
- return /*#__PURE__*/_react.default.createElement(_ImagePreview.default, {
130
- url: url,
131
- layout: layout
132
- });
133
- };
134
-
135
- var _default = AprimoPreview;
136
- exports.default = _default;
137
- //# sourceMappingURL=AprimoPreview.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/components/AprimoPreview.tsx"],"names":["getPreviewUrl","secrets","token","recordId","tenantName","headers","Authorization","fetch","then","res","json","AprimoPreview","value","layout","namespace","url","setUrl","setToken","fetchToken","localStorage","getItem","fetchUrl","recordInfo","id","previewUrl","_embedded","preview","uri","e"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;AAQA,IAAMA,aAAa;AAAA,+BAAG,WACpBC,OADoB,EAEpBC,KAFoB,EAGpBC,QAHoB,EAIjB;AACH,QAAIF,OAAO,IAAIA,OAAO,CAACG,UAAnB,IAAiCF,KAAjC,IAA0CC,QAA9C,EAAwD;AACtD,UAAME,OAAO,GAAG;AACdC,QAAAA,aAAa,mBAAYJ,KAAZ,CADC;AAEd,yBAAiB,SAFH;AAGd,uBAAe;AAHD,OAAhB;AAMA,aAAOK,KAAK,mBACCN,OAAO,CAACG,UADT,6CACsDD,QADtD,GAEV;AACEE,QAAAA;AADF,OAFU,CAAL,CAKLG,IALK,CAKAC,GAAG,IAAIA,GAAG,CAACC,IAAJ,EALP,CAAP;AAMD,KAbD,MAaO;AACL,aAAO,EAAP;AACD;AACF,GArBkB;;AAAA,kBAAbV,aAAa;AAAA;AAAA;AAAA,GAAnB;;AAuBA,IAAMW,aAAa,GAAG,SAAuC;AAAA,MAApCC,KAAoC,SAApCA,KAAoC;AAAA,MAA7BC,MAA6B,SAA7BA,MAA6B;;AAC3D,oBAAoB,+BAAoBC,4BAApB,CAApB;AAAA,MAAQb,OAAR,eAAQA,OAAR;;AACA,kBAAsB,qBAAS,IAAT,CAAtB;AAAA;AAAA,MAAOc,GAAP;AAAA,MAAYC,MAAZ;;AACA,mBAA0B,qBAAwB,IAAxB,CAA1B;AAAA;AAAA,MAAOd,KAAP;AAAA,MAAce,QAAd,iBAH2D,CAI3D;AACA;;;AAEA,wBAAU,MAAM;AACd,QAAMC,UAAU;AAAA,oCAAG,aAAY;AAC7B,YAAIhB,KAAK,GAAGiB,YAAY,CAACC,OAAb,CAAqB,aAArB,CAAZ;;AACA,YAAI,CAAClB,KAAD,IAAUD,OAAd,EAAuB;AACrB,gBAAM,wBAAaA,OAAb,CAAN;AACAC,UAAAA,KAAK,GAAGiB,YAAY,CAACC,OAAb,CAAqB,aAArB,CAAR;AACD;;AACDH,QAAAA,QAAQ,CAACf,KAAD,CAAR;AACD,OAPe;;AAAA,sBAAVgB,UAAU;AAAA;AAAA;AAAA,OAAhB;;AASAA,IAAAA,UAAU;AACX,GAXD,EAWG,CAACN,KAAD,EAAQX,OAAR,CAXH;AAaA,wBAAU,MAAM;AACd,QAAMoB,QAAQ;AAAA,oCAAG,aAAY;AAC3B,YAAInB,KAAK,IAAID,OAAb,EAAsB;AACpB,cAAI;AACF,gBAAMqB,UAAU,SAAStB,aAAa,CAACC,OAAD,EAAUC,KAAV,EAAiBU,KAAK,CAACW,EAAvB,CAAtC;AACA,gBAAMC,UAAU,GAAGF,UAAU,CAACG,SAAX,CAAqBC,OAArB,CAA6BC,GAAhD,CAFE,CAGF;AACA;;AACAX,YAAAA,MAAM,CAACQ,UAAD,CAAN;AACD,WAND,CAME,OAAOI,CAAP,EAAU;AACV;AACA;AACA,kBAAM,wBAAa3B,OAAb,CAAN;;AACA,gBAAMC,MAAK,GAAGiB,YAAY,CAACC,OAAb,CAAqB,aAArB,CAAd;;AACAH,YAAAA,QAAQ,CAACf,MAAD,CAAR;AACD;AACF;AACF,OAhBa;;AAAA,sBAARmB,QAAQ;AAAA;AAAA;AAAA,OAAd;;AAiBAA,IAAAA,QAAQ;AACT,GAnBD,EAmBG,CAACT,KAAD,EAAQX,OAAR,EAAiBC,KAAjB,CAnBH;AAqBA,sBAAO,6BAAC,qBAAD;AAAc,IAAA,GAAG,EAAEa,GAAnB;AAAwB,IAAA,MAAM,EAAEF;AAAhC,IAAP;AACD,CA1CD;;eA4CeF,a","sourcesContent":["import React, { useEffect, useState } from 'react'\nimport { useSecrets } from 'sanity-secrets'\nimport { setAuthToken } from '../utils/auth'\nimport { Secrets, namespace } from './SecretsConfigView'\nimport ImagePreview from './ImagePreview'\n\ntype ComponentProps = {\n layout?: 'default' | 'block'\n value: Record<string, any>\n title?: string | null\n}\n\nconst getPreviewUrl = async (\n secrets: Secrets | undefined,\n token: string,\n recordId: string\n) => {\n if (secrets && secrets.tenantName && token && recordId) {\n const headers = {\n Authorization: `Bearer ${token}`,\n 'select-record': 'preview',\n 'API-Version': '1',\n }\n\n return fetch(\n `https://${secrets.tenantName}.dam.aprimo.com/api/core/record/${recordId}`,\n {\n headers,\n }\n ).then(res => res.json())\n } else {\n return ''\n }\n}\n\nconst AprimoPreview = ({ value, layout }: ComponentProps) => {\n const { secrets } = useSecrets<Secrets>(namespace)\n const [url, setUrl] = useState(null)\n const [token, setToken] = useState<string | null>(null)\n // //TODO: do a video for videos?\n // const contentType = 'image'\n\n useEffect(() => {\n const fetchToken = async () => {\n let token = localStorage.getItem('aprimoToken') as string\n if (!token && secrets) {\n await setAuthToken(secrets)\n token = localStorage.getItem('aprimoToken') as string\n }\n setToken(token)\n }\n\n fetchToken()\n }, [value, secrets])\n\n useEffect(() => {\n const fetchUrl = async () => {\n if (token && secrets) {\n try {\n const recordInfo = await getPreviewUrl(secrets, token, value.id)\n const previewUrl = recordInfo._embedded.preview.uri\n //TODO: do something for vid\n // const contentType = recordInfo.contentType\n setUrl(previewUrl)\n } catch (e) {\n //thrown for 401\n //reset the token, which will rerun this callback\n await setAuthToken(secrets)\n const token = localStorage.getItem('aprimoToken') as string\n setToken(token)\n }\n }\n }\n fetchUrl()\n }, [value, secrets, token])\n\n return <ImagePreview url={url} layout={layout} />\n}\n\nexport default AprimoPreview\n"],"file":"AprimoPreview.js"}