sanity-plugin-aprimo 1.0.1 → 1.0.3
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/index.d.ts +5 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +45 -43
- package/dist/index.js.map +1 -1
- package/package.json +8 -9
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as sanity2 from "sanity";
|
|
2
2
|
import { ObjectInputProps, SchemaType } from "sanity";
|
|
3
3
|
import React$1 from "react";
|
|
4
4
|
interface AprimoCDNAsset {
|
|
@@ -25,7 +25,7 @@ interface AprimoAsset {
|
|
|
25
25
|
interface AprimoConfig {
|
|
26
26
|
tenantName: string;
|
|
27
27
|
}
|
|
28
|
-
declare const aprimoPlugin:
|
|
28
|
+
declare const aprimoPlugin: sanity2.Plugin<Partial<AprimoConfig>>;
|
|
29
29
|
declare function AprimoDiff({
|
|
30
30
|
diff,
|
|
31
31
|
schemaType
|
|
@@ -44,7 +44,7 @@ declare const AprimoCDNAssetSchema: {
|
|
|
44
44
|
fields: ({
|
|
45
45
|
type: string;
|
|
46
46
|
name: string;
|
|
47
|
-
fields?:
|
|
47
|
+
fields?: undefined;
|
|
48
48
|
} | {
|
|
49
49
|
type: string;
|
|
50
50
|
name: string;
|
|
@@ -89,8 +89,8 @@ declare const AprimoAssetSchema: {
|
|
|
89
89
|
declare const AprimoAdditionalFileSchema: {
|
|
90
90
|
type: "object";
|
|
91
91
|
name: "aprimo.additionalFile";
|
|
92
|
-
} & Omit<
|
|
93
|
-
preview?:
|
|
92
|
+
} & Omit<sanity2.ObjectDefinition, "preview"> & {
|
|
93
|
+
preview?: sanity2.PreviewConfig<Record<string, string>, Record<never, any>> | undefined;
|
|
94
94
|
};
|
|
95
95
|
export { type AprimoAdditionalFile, AprimoAdditionalFileSchema, type AprimoAsset, AprimoAssetSchema, type AprimoCDNAsset, AprimoCDNAssetSchema, type AprimoConfig, AprimoWidget, aprimoPlugin };
|
|
96
96
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":["AprimoCDNAsset","AprimoAdditionalFile","AprimoAsset","AprimoConfig","AprimoConfig","aprimoPlugin","Partial","
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":["AprimoCDNAsset","AprimoAdditionalFile","AprimoAsset","AprimoConfig","AprimoConfig","aprimoPlugin","Partial","sanity2","Plugin","SchemaType","AprimoDiff","diff","schemaType","React","JSX","Element","ObjectInputProps","AprimoCDNAsset","AprimoAsset","AprimoConfig","AprimoWidgetProps","AprimoWidget","React","JSX","Element","React","AprimoDiff","AprimoWidget","AprimoCDNAssetSchema","url","title","JSX","Element","AprimoWidget","AprimoAssetSchema","AprimoAdditionalFileSchema","sanity3","ObjectDefinition","Omit","Record","PreviewConfig"],"sources":["../src/types.d.ts","../src/plugin.d.ts","../src/components/AprimoDiff.d.ts","../src/components/AprimoWidget.d.ts","../src/schema/AprimoCDNAsset.d.ts","../src/schema/AprimoAsset.d.ts","../src/schema/AdditionalFile.d.ts"],"sourcesContent":["export interface AprimoCDNAsset {\n id: string;\n title: string;\n rendition: {\n id: string;\n publicuri: string;\n };\n _key?: string;\n}\nexport interface AprimoAdditionalFile {\n additionalFileId: string;\n fileName: string;\n label: string;\n type: string;\n}\nexport interface AprimoAsset {\n id: string;\n title: string;\n additionalFile?: AprimoAdditionalFile;\n _key?: string;\n}\nexport interface AprimoConfig {\n tenantName: string;\n}\n//# sourceMappingURL=types.d.ts.map","import type { AprimoConfig } from './types';\nexport declare const aprimoPlugin: import(\"sanity\").Plugin<Partial<AprimoConfig>>;\n//# sourceMappingURL=plugin.d.ts.map","import { type SchemaType } from 'sanity';\nexport declare function AprimoDiff({ diff, schemaType }: {\n diff: any;\n schemaType: SchemaType;\n}): React.JSX.Element;\n//# sourceMappingURL=AprimoDiff.d.ts.map","import { type ObjectInputProps } from 'sanity';\nimport type { AprimoCDNAsset, AprimoAsset, AprimoConfig } from '../types';\nexport interface AprimoWidgetProps extends ObjectInputProps<AprimoCDNAsset | AprimoAsset> {\n pluginConfig: AprimoConfig;\n}\nexport declare function AprimoWidget(props: AprimoWidgetProps): React.JSX.Element;\n//# sourceMappingURL=AprimoWidget.d.ts.map","import type React from 'react';\nimport { AprimoDiff } from '../components/AprimoDiff';\nimport { AprimoWidget } from '../components/AprimoWidget';\nexport declare const AprimoCDNAssetSchema: {\n type: string;\n name: string;\n title: string;\n fields: ({\n type: string;\n name: string;\n fields?: undefined;\n } | {\n type: string;\n name: string;\n fields: {\n type: string;\n name: string;\n }[];\n })[];\n components: {\n input: typeof AprimoWidget;\n diff: typeof AprimoDiff;\n };\n preview: {\n select: {\n url: string;\n title: string;\n };\n prepare({ url, title }: {\n url: string;\n title: string;\n }): {\n title: string;\n media: React.JSX.Element;\n };\n };\n};\n//# sourceMappingURL=AprimoCDNAsset.d.ts.map","import { AprimoWidget } from '../components/AprimoWidget';\nexport declare const AprimoAssetSchema: {\n type: string;\n name: string;\n title: string;\n fields: {\n type: string;\n name: string;\n }[];\n components: {\n input: typeof AprimoWidget;\n };\n};\n//# sourceMappingURL=AprimoAsset.d.ts.map","export declare const AprimoAdditionalFileSchema: {\n type: \"object\";\n name: \"aprimo.additionalFile\";\n} & Omit<import(\"sanity\").ObjectDefinition, \"preview\"> & {\n preview?: import(\"sanity\").PreviewConfig<Record<string, string>, Record<never, any>> | undefined;\n};\n//# sourceMappingURL=AdditionalFile.d.ts.map"],"mappings":";;;UAAiBA,cAAAA;;;;IAAAA,EAAAA,EAAAA,MAAAA;IASAC,SAAAA,EAAAA,MAAAA;EAMAC,CAAAA;EAMAC,IAAAA,CAAAA,EAAAA,MAAAA;;ACpBIE,UDQJJ,oBAAAA,CCRgE;EAAdG,gBAAAA,EAAAA,MAAAA;EAARE,QAAAA,EAAAA,MAAAA;EAAOC,KAAdC,EAAAA,MAAAA;EAAM,IAAA,EAAA,MAAA;;ACAlCE,UFcPR,WAAAA,CEdiB;EAAGS,EAAAA,EAAAA,MAAAA;EAAMC,KAAAA,EAAAA,MAAAA;EAE3BH,cAAAA,CAAAA,EFeKR,oBEfLQ;EACZI,IAAMC,CAAAA,EAAIC,MAAAA;;UFiBGZ,YAAAA;EGnBAiB,UAAAA,EAAAA,MAAAA;;cFDIf,cAA6CE,OAAAA,CAAdC,OAAOF,QAAQF;iBCA3CM,UAAAA;;;AFDxB;;cEGgBD;AFHhB,CAAA,CAAA,EEIII,KAAAA,CAAMC,GAAAA,CAAIC,OFJiB;UGEdK,iBAAAA,SAA0BJ,iBAAiBC,iBAAiBC;gBAC3DC;AHHlB;AASiBlB,iBGJOoB,YAAAA,CHIa,KAAA,EGJOD,iBHIP,CAAA,EGJ2BE,KAAAA,CAAMC,GAAAA,CAAIC,OHIrC;cINhBI;EJHJ5B,IAAAA,EAAAA,MAAAA;EASAC,IAAAA,EAAAA,MAAAA;EAMAC,KAAAA,EAAAA,MAAAA;EAMAC,MAAAA,EAAAA,CAAAA;;ICpBIE,IAAAA,EAAAA,MAA4D;IAAdD,MAAAA,CAAAA,EAAAA,SAAAA;EAARE,CAAAA,GAAAA;IAAOC,IAAdC,EAAAA,MAAAA;IAAM,IAAA,EAAA,MAAA;;MCAlCE,IAAAA,EAAU,MAAA;MAAGC,IAAAA,EAAAA,MAAAA;IAAMC,CAAAA,EAAAA;EAE3BH,CAAAA,CAAAA,EAAAA;EACZI,UAAUE,EAAAA;IAAO,KAAA,EAAA,OEgBCY,YFhBD;iBEiBAD;EDnBJN,CAAAA;EAA2CH,OAAAA,EAAAA;IAAiBC,MAAAA,EAAAA;MAC3DC,GAAAA,EAAAA,MAAAA;MADyBH,KAAAA,EAAAA,MAAAA;IAAgB,CAAA;IAGnCK,OAAAA,CAAAA;MAAAA,GAAY;MAAA;ICedM,CDfc,EAAQP;;MCFvBQ,KAAAA,EAAAA,MAAAA;IAiBCD,CAAAA,CAAAA,EAAAA;MACDD,KAAAA,EAAAA,MAAAA;MAOHG,KAAAA,EAKCJ,OAAAA,CAAMM,GAAAA,CAAIC,OALXH;IAAKC,CAAAA;EAKJL,CAAAA;CAAiB;cChCfS;;;ELDJlC,KAAAA,EAAAA,MAAAA;EASAC,MAAAA,EAAAA;IAMAC,IAAAA,EAAAA,MAAW;IAMXC,IAAAA,EAAAA,MAAY;;ECpBRE,UAAAA,EAAAA;IAA8CD,KAAAA,EAAAA,OIS7C6B,YJT6C7B;EAARE,CAAAA;CAAOC;cKD7C4B;;;IAGjBG,KAEHF,OAAAA,CAFyBC,gBAAAA;ENHTrC,OAAAA,CAAAA,EMI0DoC,OAAAA,CAA5CI,aNJA,CMIcD,MNJd,CAAA,MAAA,EAAA,MAAA,CAAA,EMIsCA,MNJtC,CAAA,KAAA,EAAA,GAAA,CAAA,CAAA,GAAA,SAAA;AAS/B,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -56,7 +56,7 @@ function AprimoFilePreview(t0) {
|
|
|
56
56
|
}, $[0] = damUrl, $[1] = t1) : t1 = $[1];
|
|
57
57
|
const onClick = t1;
|
|
58
58
|
let t2;
|
|
59
|
-
$[2] === Symbol.for("react.memo_cache_sentinel") ? (t2 = /* @__PURE__ */ jsx(Label, { as: "p", children: "Aprimo File Asset" }), $[2] = t2) : t2 = $[2];
|
|
59
|
+
$[2] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (t2 = /* @__PURE__ */ jsx(Label, { as: "p", children: "Aprimo File Asset" }), $[2] = t2) : t2 = $[2];
|
|
60
60
|
let t3;
|
|
61
61
|
$[3] !== assetName ? (t3 = /* @__PURE__ */ jsxs(Stack, { space: 3, children: [
|
|
62
62
|
t2,
|
|
@@ -72,7 +72,7 @@ function AprimoFilePreview(t0) {
|
|
|
72
72
|
}
|
|
73
73
|
const isAprimoCDNAsset = (value) => value && value.hasOwnProperty("rendition"), isAprimoAsset = (value) => value && value.hasOwnProperty("id");
|
|
74
74
|
function AprimoWidget(props) {
|
|
75
|
-
const $ = c(
|
|
75
|
+
const $ = c(32), {
|
|
76
76
|
value,
|
|
77
77
|
readOnly,
|
|
78
78
|
onChange,
|
|
@@ -86,68 +86,63 @@ function AprimoWidget(props) {
|
|
|
86
86
|
onChange(PatchEvent.from(unset()));
|
|
87
87
|
}, $[0] = onChange, $[1] = t1) : t1 = $[1];
|
|
88
88
|
const removeValue = t1, [isLoading, setIsLoading] = useState(!1);
|
|
89
|
-
let t2;
|
|
90
|
-
$[2] !== onChange ? (t2 = (
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
let t3;
|
|
95
|
-
$[4] !== _key || $[5] !== isLoading || $[6] !== setAsset || $[7] !== tenantName ? (t3 = () => {
|
|
96
|
-
const handleMessageEvent = async (event) => {
|
|
89
|
+
let t2, t3;
|
|
90
|
+
$[2] !== _key || $[3] !== isLoading || $[4] !== onChange || $[5] !== tenantName ? (t2 = () => {
|
|
91
|
+
const setAsset = (asset) => {
|
|
92
|
+
onChange(PatchEvent.from(asset ? set(asset) : unset()));
|
|
93
|
+
}, handleMessageEvent = async (event) => {
|
|
97
94
|
tenantName && event.origin === `https://${tenantName || ""}.dam.aprimo.com` && (event.data.result === "cancel" ? setIsLoading(!1) : event.data.selection && event.data.selection[0] && isLoading && (setAsset(_key ? {
|
|
98
95
|
...event.data.selection[0],
|
|
99
96
|
_key
|
|
100
97
|
} : event.data.selection[0]), setIsLoading(!1)));
|
|
101
98
|
};
|
|
102
99
|
return window.addEventListener("message", handleMessageEvent), () => window.removeEventListener("message", handleMessageEvent);
|
|
103
|
-
}, $[
|
|
100
|
+
}, t3 = [tenantName, isLoading, _key, onChange], $[2] = _key, $[3] = isLoading, $[4] = onChange, $[5] = tenantName, $[6] = t2, $[7] = t3) : (t2 = $[6], t3 = $[7]), useEffect(t2, t3);
|
|
104
101
|
let t4;
|
|
105
|
-
$[
|
|
106
|
-
let t5;
|
|
107
|
-
$[13] !== schemaType.name || $[14] !== tenantName ? (t5 = () => {
|
|
102
|
+
$[8] !== schemaType.name || $[9] !== tenantName ? (t4 = () => {
|
|
108
103
|
const selectType = schemaType.name === "aprimo.cdnasset" ? "singlerendition" : "singlefile";
|
|
109
104
|
setIsLoading(!0), openSelector(tenantName, selectType);
|
|
110
|
-
}, $[
|
|
111
|
-
const action =
|
|
112
|
-
let
|
|
105
|
+
}, $[8] = schemaType.name, $[9] = tenantName, $[10] = t4) : t4 = $[10];
|
|
106
|
+
const action = t4;
|
|
107
|
+
let t5;
|
|
113
108
|
bb0: {
|
|
114
109
|
if (value && schemaType.name === "aprimo.cdnasset" && isAprimoCDNAsset(value)) {
|
|
115
|
-
let
|
|
116
|
-
$[
|
|
110
|
+
let t62;
|
|
111
|
+
$[11] !== value ? (t62 = /* @__PURE__ */ jsx(AprimoCDNPreview, { value, layout: "default" }), $[11] = value, $[12] = t62) : t62 = $[12], t5 = t62;
|
|
117
112
|
break bb0;
|
|
118
113
|
} else if (value && schemaType.name === "aprimo.asset" && isAprimoAsset(value)) {
|
|
119
|
-
let
|
|
120
|
-
$[
|
|
114
|
+
let t62;
|
|
115
|
+
$[13] !== tenantName || $[14] !== value ? (t62 = /* @__PURE__ */ jsx(AprimoFilePreview, { value, tenantName }), $[13] = tenantName, $[14] = value, $[15] = t62) : t62 = $[15], t5 = t62;
|
|
121
116
|
break bb0;
|
|
122
117
|
}
|
|
123
|
-
|
|
118
|
+
t5 = null;
|
|
124
119
|
}
|
|
125
|
-
const preview =
|
|
120
|
+
const preview = t5;
|
|
126
121
|
if (!tenantName) {
|
|
127
|
-
let
|
|
128
|
-
return $[
|
|
122
|
+
let t62;
|
|
123
|
+
return $[16] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (t62 = /* @__PURE__ */ jsx(Box, { padding: 3, children: /* @__PURE__ */ jsx(Card, { padding: 4, radius: 2, shadow: 1, tone: "caution", children: /* @__PURE__ */ jsx(Text, { children: "The tenant name has not been set in the configuration for the Aprimo plugin. Please add a tenant name." }) }) }), $[16] = t62) : t62 = $[16], t62;
|
|
129
124
|
}
|
|
125
|
+
let t6;
|
|
126
|
+
$[17] !== preview ? (t6 = /* @__PURE__ */ jsx(Box, { children: preview }), $[17] = preview, $[18] = t6) : t6 = $[18];
|
|
130
127
|
let t7;
|
|
131
|
-
$[
|
|
132
|
-
let t8;
|
|
133
|
-
$[24] === Symbol.for("react.memo_cache_sentinel") ? (t8 = {
|
|
128
|
+
$[19] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (t7 = {
|
|
134
129
|
gridTemplateColumns: "repeat(auto-fit, minmax(100px, 1fr))"
|
|
135
|
-
}, $[
|
|
136
|
-
let
|
|
137
|
-
$[
|
|
138
|
-
const
|
|
130
|
+
}, $[19] = t7) : t7 = $[19];
|
|
131
|
+
let t8;
|
|
132
|
+
$[20] !== action || $[21] !== readOnly ? (t8 = /* @__PURE__ */ jsx(Button, { disabled: readOnly, mode: "ghost", title: "Select an asset", kind: "default", onClick: action, children: "Select\u2026" }), $[20] = action, $[21] = readOnly, $[22] = t8) : t8 = $[22];
|
|
133
|
+
const t9 = readOnly || !value;
|
|
134
|
+
let t10;
|
|
135
|
+
$[23] !== removeValue || $[24] !== t9 ? (t10 = /* @__PURE__ */ jsx(Button, { disabled: t9, color: "danger", mode: "ghost", title: "Remove asset", onClick: removeValue, children: "Remove" }), $[23] = removeValue, $[24] = t9, $[25] = t10) : t10 = $[25];
|
|
139
136
|
let t11;
|
|
140
|
-
$[
|
|
137
|
+
$[26] !== t10 || $[27] !== t8 ? (t11 = /* @__PURE__ */ jsxs(Grid, { gap: 1, style: t7, children: [
|
|
138
|
+
t8,
|
|
139
|
+
t10
|
|
140
|
+
] }), $[26] = t10, $[27] = t8, $[28] = t11) : t11 = $[28];
|
|
141
141
|
let t12;
|
|
142
|
-
$[
|
|
143
|
-
|
|
142
|
+
return $[29] !== t11 || $[30] !== t6 ? (t12 = /* @__PURE__ */ jsxs(Box, { children: [
|
|
143
|
+
t6,
|
|
144
144
|
t11
|
|
145
|
-
] }), $[
|
|
146
|
-
let t13;
|
|
147
|
-
return $[34] !== t12 || $[35] !== t7 ? (t13 = /* @__PURE__ */ jsxs(Box, { children: [
|
|
148
|
-
t7,
|
|
149
|
-
t12
|
|
150
|
-
] }), $[34] = t12, $[35] = t7, $[36] = t13) : t13 = $[36], t13;
|
|
145
|
+
] }), $[29] = t11, $[30] = t6, $[31] = t12) : t12 = $[31], t12;
|
|
151
146
|
}
|
|
152
147
|
const AprimoAdditionalFileSchema = defineType({
|
|
153
148
|
name: "aprimo.additionalFile",
|
|
@@ -229,7 +224,7 @@ const AprimoCDNAssetSchema = {
|
|
|
229
224
|
}) {
|
|
230
225
|
return {
|
|
231
226
|
title,
|
|
232
|
-
media: /* @__PURE__ */ jsx("img", { src: url, style: {
|
|
227
|
+
media: /* @__PURE__ */ jsx("img", { src: url, alt: "", style: {
|
|
233
228
|
height: "100%",
|
|
234
229
|
width: "100%"
|
|
235
230
|
} })
|
|
@@ -250,7 +245,14 @@ const AprimoCDNAssetSchema = {
|
|
|
250
245
|
components: {
|
|
251
246
|
input: (props) => isObjectInputProps(props) && (isType(props.schemaType, AprimoCDNAssetSchema.name) || isType(props.schemaType, AprimoAssetSchema.name)) ? (
|
|
252
247
|
// @ts-expect-error - TODO: fix this
|
|
253
|
-
/* @__PURE__ */ jsx(
|
|
248
|
+
/* @__PURE__ */ jsx(
|
|
249
|
+
AprimoWidget,
|
|
250
|
+
{
|
|
251
|
+
...props,
|
|
252
|
+
value: props.value,
|
|
253
|
+
pluginConfig: reqConfig
|
|
254
|
+
}
|
|
255
|
+
)
|
|
254
256
|
) : props.renderDefault(props)
|
|
255
257
|
}
|
|
256
258
|
}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/utils.ts","../src/components/AprimoCDNPreview.tsx","../src/components/AprimoFilePreview.tsx","../src/components/AprimoWidget.tsx","../src/schema/AdditionalFile.ts","../src/schema/AprimoAsset.ts","../src/components/AprimoDiff.tsx","../src/schema/AprimoCDNAsset.tsx","../src/plugin.tsx"],"sourcesContent":["export const openSelector = (tenantName: string, selectType: string): void => {\n let assetType = 'asset rendition'\n switch (selectType) {\n case 'singlefile':\n assetType = 'asset file'\n break\n case 'multiple':\n assetType = 'asset renditions'\n break\n default:\n assetType = 'asset rendition'\n }\n\n const selectorOptions = {\n title: `Select ${assetType}`,\n description: `Select the ${assetType} you'd like to bring into this document`,\n accept: `Use ${assetType}`,\n select: selectType,\n }\n\n const params = `scrollbars=no,resizable=no,status=no,location=no,toolbar=no,menubar=no,\n width=1000,height=600,left=100,top=100`\n\n const encodedOptions = btoa(JSON.stringify(selectorOptions))\n window.open(\n `https://${tenantName}.dam.aprimo.com/dam/selectcontent#options=${encodedOptions}`,\n 'selector',\n params,\n )\n}\n","import {Box} from '@sanity/ui'\n\nimport type {AprimoCDNAsset} from '../types'\n\ntype ComponentProps = {\n layout?: 'default' | 'block'\n value: AprimoCDNAsset\n title?: string\n}\n\nexport function AprimoCDNPreview({\n value,\n layout = 'block',\n}: ComponentProps): React.JSX.Element | null {\n const url = value?.rendition?.publicuri\n if (url) {\n return (\n <Box>\n <img\n alt={`preview for ${value?.title}`}\n src={url}\n style={{\n maxWidth: layout === 'block' ? '80px' : '100%',\n height: 'auto',\n }}\n />\n </Box>\n )\n }\n return null\n}\n","import {Card, Box, Flex, Stack, Text, Label, Button} from '@sanity/ui'\nimport {useCallback} from 'react'\n\nimport type {AprimoAsset} from '../types'\n\ninterface AprimoFilePreviewProps {\n value: AprimoAsset\n tenantName: string\n}\n\nexport function AprimoFilePreview({value, tenantName}: AprimoFilePreviewProps): React.JSX.Element {\n const {title, additionalFile, id} = value\n const assetName = additionalFile?.fileName || title || 'No name'\n const damUrl = `https://${tenantName}.dam.aprimo.com/Assets/Records/${id}`\n const onClick = useCallback(() => {\n window.open(damUrl, '_blank')\n }, [damUrl])\n return (\n <Box paddingY={1}>\n <Card paddingY={3} paddingX={3} radius={1} shadow={1}>\n <Flex align=\"center\" justify=\"space-between\" gap={1}>\n <Stack space={3}>\n <Label as=\"p\">Aprimo File Asset</Label>\n <Text as=\"p\">{assetName}</Text>\n </Stack>\n <Stack>\n {/* ADD launch icon */}\n <Button\n tone=\"primary\"\n as={'a'}\n href={damUrl}\n target={`_blank`}\n onClick={onClick}\n text={'View'}\n />\n </Stack>\n </Flex>\n </Card>\n </Box>\n )\n}\n","import {Box, Button, Card, Grid, Text} from '@sanity/ui'\nimport {useEffect, useState, useMemo} from 'react'\nimport {PatchEvent, type ObjectInputProps, set, unset} from 'sanity'\n\nimport type {AprimoCDNAsset, AprimoAsset, AprimoConfig} from '../types'\n\nimport {openSelector} from '../utils'\nimport {AprimoCDNPreview} from './AprimoCDNPreview'\nimport {AprimoFilePreview} from './AprimoFilePreview'\n\nconst isAprimoCDNAsset = (value: AprimoCDNAsset | AprimoAsset): value is AprimoCDNAsset => {\n return value && value.hasOwnProperty('rendition')\n}\n\nconst isAprimoAsset = (value: AprimoCDNAsset | AprimoAsset): value is AprimoAsset => {\n //the ID is all we need to construct a link back to Aprimo\n return value && value.hasOwnProperty('id')\n}\n\nexport interface AprimoWidgetProps extends ObjectInputProps<AprimoCDNAsset | AprimoAsset> {\n pluginConfig: AprimoConfig\n}\n\nexport function AprimoWidget(props: AprimoWidgetProps): React.JSX.Element {\n const {\n value,\n readOnly,\n onChange,\n schemaType,\n pluginConfig: {tenantName},\n } = props\n\n const _key = value?._key\n const removeValue = () => {\n onChange(PatchEvent.from(unset()))\n }\n\n //this keeps track of which component is requesting an asset\n const [isLoading, setIsLoading] = useState(false)\n\n const setAsset = (asset: Record<string, any>) => {\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 (tenantName && event.origin === `https://${tenantName || ''}.dam.aprimo.com`) {\n //if cancel, get out of fetching state\n if (event.data.result === 'cancel') {\n setIsLoading(false)\n } else if (event.data.selection && event.data.selection[0] && isLoading) {\n if (_key) {\n setAsset({...event.data.selection[0], _key})\n } else {\n setAsset(event.data.selection[0])\n }\n setIsLoading(false)\n }\n }\n }\n\n window.addEventListener('message', handleMessageEvent)\n //cleanup\n return () => window.removeEventListener('message', handleMessageEvent)\n }, [tenantName, isLoading, _key])\n\n const action = () => {\n const selectType = schemaType.name === 'aprimo.cdnasset' ? 'singlerendition' : 'singlefile'\n setIsLoading(true)\n openSelector(tenantName, selectType)\n }\n\n const preview = useMemo(() => {\n if (value && schemaType.name === 'aprimo.cdnasset' && isAprimoCDNAsset(value)) {\n return <AprimoCDNPreview value={value} layout=\"default\" />\n } else if (value && schemaType.name === 'aprimo.asset' && isAprimoAsset(value)) {\n return <AprimoFilePreview value={value} tenantName={tenantName} />\n }\n return null\n }, [tenantName, schemaType, value])\n\n if (!tenantName) {\n return (\n <Box padding={3}>\n <Card padding={4} radius={2} shadow={1} tone=\"caution\">\n <Text>\n The tenant name has not been set in the configuration for the Aprimo plugin. Please add\n a tenant name.\n </Text>\n </Card>\n </Box>\n )\n }\n\n return (\n <Box>\n <Box>{preview}</Box>\n <Grid gap={1} style={{gridTemplateColumns: 'repeat(auto-fit, minmax(100px, 1fr))'}}>\n <Button\n disabled={readOnly}\n mode=\"ghost\"\n title=\"Select an asset\"\n kind=\"default\"\n onClick={action}\n >\n Select…\n </Button>\n <Button\n disabled={readOnly || !value}\n color=\"danger\"\n mode=\"ghost\"\n title=\"Remove asset\"\n onClick={removeValue}\n >\n Remove\n </Button>\n </Grid>\n </Box>\n )\n}\n","import {defineType} from 'sanity'\n\nexport const AprimoAdditionalFileSchema = defineType({\n name: 'aprimo.additionalFile',\n title: 'Aprimo Additional File',\n type: 'object',\n fields: [\n {\n name: 'additionalFileId',\n title: 'Additional File ID',\n type: 'string',\n },\n {\n name: 'fileName',\n title: 'File Name',\n type: 'string',\n },\n {\n name: 'label',\n title: 'Label',\n type: 'string',\n },\n {\n name: 'type',\n title: 'Type',\n type: 'string',\n },\n ],\n})\n","import {AprimoWidget} from '../components/AprimoWidget'\n\nexport const AprimoAssetSchema = {\n type: 'object',\n name: 'aprimo.asset',\n title: 'Aprimo Asset',\n fields: [\n {\n type: 'string',\n name: 'id',\n },\n {\n type: 'string',\n name: 'title',\n },\n {\n type: 'aprimo.additionalFile',\n name: 'additionalFile',\n },\n ],\n components: {\n input: AprimoWidget,\n },\n}\n","import {DiffFromTo, type SchemaType} from 'sanity'\n\nimport {AprimoCDNPreview} from './AprimoCDNPreview'\n\n//@TODO: HUGE\nexport function AprimoDiff({\n diff,\n schemaType,\n}: {\n diff: any\n schemaType: SchemaType\n}): React.JSX.Element {\n return <DiffFromTo diff={diff} schemaType={schemaType} previewComponent={AprimoCDNPreview} />\n}\n","import type React from 'react'\n\nimport {AprimoDiff} from '../components/AprimoDiff'\nimport {AprimoWidget} from '../components/AprimoWidget'\n\nexport const AprimoCDNAssetSchema = {\n type: 'object',\n name: 'aprimo.cdnasset',\n title: 'Aprimo CDN Asset',\n fields: [\n {\n type: 'string',\n name: 'id',\n },\n {\n type: 'string',\n name: 'title',\n },\n {\n type: 'object',\n name: 'rendition',\n fields: [\n {\n type: 'string',\n name: 'publicuri',\n },\n ],\n },\n ],\n components: {\n input: AprimoWidget,\n diff: AprimoDiff,\n },\n preview: {\n select: {\n url: 'rendition.publicuri',\n title: 'title',\n },\n prepare({url, title}: {url: string; title: string}) {\n return {\n title,\n media: (<img src={url} style={{height: '100%', width: '100%'}} />) as React.JSX.Element,\n }\n },\n },\n}\n","import {definePlugin, isObjectInputProps, type SchemaType} from 'sanity'\n\nimport type {AprimoCDNAsset, AprimoConfig} from './types'\n\nimport {AprimoWidget} from './components/AprimoWidget'\nimport {AprimoAdditionalFileSchema} from './schema/AdditionalFile'\nimport {AprimoAssetSchema} from './schema/AprimoAsset'\nimport {AprimoCDNAssetSchema} from './schema/AprimoCDNAsset'\n\nexport const aprimoPlugin = definePlugin((config: Partial<AprimoConfig>) => {\n const reqConfig: AprimoConfig = {\n tenantName: '',\n ...config,\n }\n\n return {\n name: 'aprimo-assets',\n schema: {\n types: [AprimoCDNAssetSchema, AprimoAdditionalFileSchema, AprimoAssetSchema],\n },\n form: {\n components: {\n input: (props) => {\n if (\n isObjectInputProps(props) &&\n (isType(props.schemaType, AprimoCDNAssetSchema.name) ||\n isType(props.schemaType, AprimoAssetSchema.name))\n ) {\n return (\n // @ts-expect-error - TODO: fix this\n <AprimoWidget\n {...props}\n value={props.value as AprimoCDNAsset}\n pluginConfig={reqConfig}\n />\n )\n }\n //add array check here to render the widget in array\n return props.renderDefault(props)\n },\n },\n },\n }\n})\n\nfunction isType(schemaType: SchemaType, name: string): boolean {\n if (schemaType.name === name) {\n return true\n }\n if (schemaType.type) {\n return isType(schemaType.type, name)\n }\n return false\n}\n"],"names":["openSelector","tenantName","selectType","assetType","selectorOptions","title","description","accept","select","params","encodedOptions","btoa","JSON","stringify","window","open","AprimoCDNPreview","t0","$","_c","value","layout","t1","undefined","url","rendition","publicuri","t2","t3","t4","maxWidth","height","t5","AprimoFilePreview","additionalFile","id","assetName","fileName","damUrl","onClick","Symbol","for","isAprimoCDNAsset","hasOwnProperty","isAprimoAsset","AprimoWidget","props","readOnly","onChange","schemaType","pluginConfig","_key","PatchEvent","from","unset","removeValue","isLoading","setIsLoading","useState","asset","set","setAsset","handleMessageEvent","event","origin","data","result","selection","addEventListener","removeEventListener","useEffect","name","action","t6","bb0","t7","preview","t8","gridTemplateColumns","t9","t10","t11","t12","t13","AprimoAdditionalFileSchema","defineType","type","fields","AprimoAssetSchema","components","input","AprimoDiff","diff","AprimoCDNAssetSchema","prepare","media","width","aprimoPlugin","definePlugin","config","reqConfig","schema","types","form","isObjectInputProps","isType","renderDefault"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/utils.ts","../src/components/AprimoCDNPreview.tsx","../src/components/AprimoFilePreview.tsx","../src/components/AprimoWidget.tsx","../src/schema/AdditionalFile.ts","../src/schema/AprimoAsset.ts","../src/components/AprimoDiff.tsx","../src/schema/AprimoCDNAsset.tsx","../src/plugin.tsx"],"sourcesContent":["export const openSelector = (tenantName: string, selectType: string): void => {\n let assetType = 'asset rendition'\n switch (selectType) {\n case 'singlefile':\n assetType = 'asset file'\n break\n case 'multiple':\n assetType = 'asset renditions'\n break\n default:\n assetType = 'asset rendition'\n }\n\n const selectorOptions = {\n title: `Select ${assetType}`,\n description: `Select the ${assetType} you'd like to bring into this document`,\n accept: `Use ${assetType}`,\n select: selectType,\n }\n\n const params = `scrollbars=no,resizable=no,status=no,location=no,toolbar=no,menubar=no,\n width=1000,height=600,left=100,top=100`\n\n const encodedOptions = btoa(JSON.stringify(selectorOptions))\n window.open(\n `https://${tenantName}.dam.aprimo.com/dam/selectcontent#options=${encodedOptions}`,\n 'selector',\n params,\n )\n}\n","import {Box} from '@sanity/ui'\n\nimport type {AprimoCDNAsset} from '../types'\n\ntype ComponentProps = {\n layout?: 'default' | 'block'\n value: AprimoCDNAsset\n title?: string\n}\n\nexport function AprimoCDNPreview({\n value,\n layout = 'block',\n}: ComponentProps): React.JSX.Element | null {\n const url = value?.rendition?.publicuri\n if (url) {\n return (\n <Box>\n <img\n alt={`preview for ${value?.title}`}\n src={url}\n style={{\n maxWidth: layout === 'block' ? '80px' : '100%',\n height: 'auto',\n }}\n />\n </Box>\n )\n }\n return null\n}\n","import {Card, Box, Flex, Stack, Text, Label, Button} from '@sanity/ui'\nimport {useCallback} from 'react'\n\nimport type {AprimoAsset} from '../types'\n\ninterface AprimoFilePreviewProps {\n value: AprimoAsset\n tenantName: string\n}\n\nexport function AprimoFilePreview({value, tenantName}: AprimoFilePreviewProps): React.JSX.Element {\n const {title, additionalFile, id} = value\n const assetName = additionalFile?.fileName || title || 'No name'\n const damUrl = `https://${tenantName}.dam.aprimo.com/Assets/Records/${id}`\n const onClick = useCallback(() => {\n window.open(damUrl, '_blank')\n }, [damUrl])\n return (\n <Box paddingY={1}>\n <Card paddingY={3} paddingX={3} radius={1} shadow={1}>\n <Flex align=\"center\" justify=\"space-between\" gap={1}>\n <Stack space={3}>\n <Label as=\"p\">Aprimo File Asset</Label>\n <Text as=\"p\">{assetName}</Text>\n </Stack>\n <Stack>\n {/* ADD launch icon */}\n <Button\n tone=\"primary\"\n as={'a'}\n href={damUrl}\n target={`_blank`}\n onClick={onClick}\n text={'View'}\n />\n </Stack>\n </Flex>\n </Card>\n </Box>\n )\n}\n","import {Box, Button, Card, Grid, Text} from '@sanity/ui'\nimport {useEffect, useState, useMemo} from 'react'\nimport {PatchEvent, type ObjectInputProps, set, unset} from 'sanity'\n\nimport type {AprimoCDNAsset, AprimoAsset, AprimoConfig} from '../types'\n\nimport {openSelector} from '../utils'\nimport {AprimoCDNPreview} from './AprimoCDNPreview'\nimport {AprimoFilePreview} from './AprimoFilePreview'\n\nconst isAprimoCDNAsset = (value: AprimoCDNAsset | AprimoAsset): value is AprimoCDNAsset => {\n return value && value.hasOwnProperty('rendition')\n}\n\nconst isAprimoAsset = (value: AprimoCDNAsset | AprimoAsset): value is AprimoAsset => {\n //the ID is all we need to construct a link back to Aprimo\n return value && value.hasOwnProperty('id')\n}\n\nexport interface AprimoWidgetProps extends ObjectInputProps<AprimoCDNAsset | AprimoAsset> {\n pluginConfig: AprimoConfig\n}\n\nexport function AprimoWidget(props: AprimoWidgetProps): React.JSX.Element {\n const {\n value,\n readOnly,\n onChange,\n schemaType,\n pluginConfig: {tenantName},\n } = props\n\n const _key = value?._key\n const removeValue = () => {\n onChange(PatchEvent.from(unset()))\n }\n\n //this keeps track of which component is requesting an asset\n const [isLoading, setIsLoading] = useState(false)\n\n useEffect(() => {\n const setAsset = (asset: Record<string, any>) => {\n onChange(PatchEvent.from(asset ? set(asset) : unset()))\n }\n\n const handleMessageEvent = async (event: MessageEvent) => {\n // Ensure only messages from the Aprimo Content Selector are handled\n if (tenantName && event.origin === `https://${tenantName || ''}.dam.aprimo.com`) {\n //if cancel, get out of fetching state\n if (event.data.result === 'cancel') {\n setIsLoading(false)\n } else if (event.data.selection && event.data.selection[0] && isLoading) {\n if (_key) {\n setAsset({...event.data.selection[0], _key})\n } else {\n setAsset(event.data.selection[0])\n }\n setIsLoading(false)\n }\n }\n }\n\n window.addEventListener('message', handleMessageEvent)\n //cleanup\n return () => window.removeEventListener('message', handleMessageEvent)\n }, [tenantName, isLoading, _key, onChange])\n\n const action = () => {\n const selectType = schemaType.name === 'aprimo.cdnasset' ? 'singlerendition' : 'singlefile'\n setIsLoading(true)\n openSelector(tenantName, selectType)\n }\n\n const preview = useMemo(() => {\n if (value && schemaType.name === 'aprimo.cdnasset' && isAprimoCDNAsset(value)) {\n return <AprimoCDNPreview value={value} layout=\"default\" />\n } else if (value && schemaType.name === 'aprimo.asset' && isAprimoAsset(value)) {\n return <AprimoFilePreview value={value} tenantName={tenantName} />\n }\n return null\n }, [tenantName, schemaType, value])\n\n if (!tenantName) {\n return (\n <Box padding={3}>\n <Card padding={4} radius={2} shadow={1} tone=\"caution\">\n <Text>\n The tenant name has not been set in the configuration for the Aprimo plugin. Please add\n a tenant name.\n </Text>\n </Card>\n </Box>\n )\n }\n\n return (\n <Box>\n <Box>{preview}</Box>\n <Grid gap={1} style={{gridTemplateColumns: 'repeat(auto-fit, minmax(100px, 1fr))'}}>\n <Button\n disabled={readOnly}\n mode=\"ghost\"\n title=\"Select an asset\"\n kind=\"default\"\n onClick={action}\n >\n Select…\n </Button>\n <Button\n disabled={readOnly || !value}\n color=\"danger\"\n mode=\"ghost\"\n title=\"Remove asset\"\n onClick={removeValue}\n >\n Remove\n </Button>\n </Grid>\n </Box>\n )\n}\n","import {defineType} from 'sanity'\n\nexport const AprimoAdditionalFileSchema = defineType({\n name: 'aprimo.additionalFile',\n title: 'Aprimo Additional File',\n type: 'object',\n fields: [\n {\n name: 'additionalFileId',\n title: 'Additional File ID',\n type: 'string',\n },\n {\n name: 'fileName',\n title: 'File Name',\n type: 'string',\n },\n {\n name: 'label',\n title: 'Label',\n type: 'string',\n },\n {\n name: 'type',\n title: 'Type',\n type: 'string',\n },\n ],\n})\n","import {AprimoWidget} from '../components/AprimoWidget'\n\nexport const AprimoAssetSchema = {\n type: 'object',\n name: 'aprimo.asset',\n title: 'Aprimo Asset',\n fields: [\n {\n type: 'string',\n name: 'id',\n },\n {\n type: 'string',\n name: 'title',\n },\n {\n type: 'aprimo.additionalFile',\n name: 'additionalFile',\n },\n ],\n components: {\n input: AprimoWidget,\n },\n}\n","import {DiffFromTo, type SchemaType} from 'sanity'\n\nimport {AprimoCDNPreview} from './AprimoCDNPreview'\n\n//@TODO: HUGE\nexport function AprimoDiff({\n diff,\n schemaType,\n}: {\n diff: any\n schemaType: SchemaType\n}): React.JSX.Element {\n return <DiffFromTo diff={diff} schemaType={schemaType} previewComponent={AprimoCDNPreview} />\n}\n","import type React from 'react'\n\nimport {AprimoDiff} from '../components/AprimoDiff'\nimport {AprimoWidget} from '../components/AprimoWidget'\n\nexport const AprimoCDNAssetSchema = {\n type: 'object',\n name: 'aprimo.cdnasset',\n title: 'Aprimo CDN Asset',\n fields: [\n {\n type: 'string',\n name: 'id',\n },\n {\n type: 'string',\n name: 'title',\n },\n {\n type: 'object',\n name: 'rendition',\n fields: [\n {\n type: 'string',\n name: 'publicuri',\n },\n ],\n },\n ],\n components: {\n input: AprimoWidget,\n diff: AprimoDiff,\n },\n preview: {\n select: {\n url: 'rendition.publicuri',\n title: 'title',\n },\n prepare({url, title}: {url: string; title: string}) {\n return {\n title,\n media: (\n <img src={url} alt=\"\" style={{height: '100%', width: '100%'}} />\n ) as React.JSX.Element,\n }\n },\n },\n}\n","import {definePlugin, isObjectInputProps, type SchemaType} from 'sanity'\n\nimport type {AprimoCDNAsset, AprimoConfig} from './types'\n\nimport {AprimoWidget} from './components/AprimoWidget'\nimport {AprimoAdditionalFileSchema} from './schema/AdditionalFile'\nimport {AprimoAssetSchema} from './schema/AprimoAsset'\nimport {AprimoCDNAssetSchema} from './schema/AprimoCDNAsset'\n\nexport const aprimoPlugin = definePlugin((config: Partial<AprimoConfig>) => {\n const reqConfig: AprimoConfig = {\n tenantName: '',\n ...config,\n }\n\n return {\n name: 'aprimo-assets',\n schema: {\n types: [AprimoCDNAssetSchema, AprimoAdditionalFileSchema, AprimoAssetSchema],\n },\n form: {\n components: {\n input: (props) => {\n if (\n isObjectInputProps(props) &&\n (isType(props.schemaType, AprimoCDNAssetSchema.name) ||\n isType(props.schemaType, AprimoAssetSchema.name))\n ) {\n return (\n // @ts-expect-error - TODO: fix this\n <AprimoWidget\n {...props}\n // oxlint-disable-next-line no-unsafe-type-assertion\n value={props.value as AprimoCDNAsset}\n pluginConfig={reqConfig}\n />\n )\n }\n //add array check here to render the widget in array\n return props.renderDefault(props)\n },\n },\n },\n }\n})\n\nfunction isType(schemaType: SchemaType, name: string): boolean {\n if (schemaType.name === name) {\n return true\n }\n if (schemaType.type) {\n return isType(schemaType.type, name)\n }\n return false\n}\n"],"names":["openSelector","tenantName","selectType","assetType","selectorOptions","title","description","accept","select","params","encodedOptions","btoa","JSON","stringify","window","open","AprimoCDNPreview","t0","$","_c","value","layout","t1","undefined","url","rendition","publicuri","t2","t3","t4","maxWidth","height","t5","AprimoFilePreview","additionalFile","id","assetName","fileName","damUrl","onClick","Symbol","for","isAprimoCDNAsset","hasOwnProperty","isAprimoAsset","AprimoWidget","props","readOnly","onChange","schemaType","pluginConfig","_key","PatchEvent","from","unset","removeValue","isLoading","setIsLoading","useState","setAsset","asset","set","handleMessageEvent","event","origin","data","result","selection","addEventListener","removeEventListener","useEffect","name","action","bb0","t6","preview","t7","gridTemplateColumns","t8","t9","t10","t11","t12","AprimoAdditionalFileSchema","defineType","type","fields","AprimoAssetSchema","components","input","AprimoDiff","diff","AprimoCDNAssetSchema","prepare","media","width","aprimoPlugin","definePlugin","config","reqConfig","schema","types","form","isObjectInputProps","isType","renderDefault"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sanity-plugin-aprimo",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.3",
|
|
4
4
|
"description": "Aprimo asset selector for Sanity",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"sanity",
|
|
@@ -32,28 +32,27 @@
|
|
|
32
32
|
"react-compiler-runtime": "^1.0.0"
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|
|
35
|
-
"@sanity/pkg-utils": "^10.
|
|
35
|
+
"@sanity/pkg-utils": "^10.1.2",
|
|
36
36
|
"@types/react": "^19.2.7",
|
|
37
|
-
"@typescript/native-preview": "7.0.0-dev.
|
|
37
|
+
"@typescript/native-preview": "7.0.0-dev.20251207.1",
|
|
38
38
|
"babel-plugin-react-compiler": "^1.0.0",
|
|
39
39
|
"eslint": "^9.39.1",
|
|
40
|
-
"react": "^19.2.
|
|
41
|
-
"sanity": "^4.
|
|
40
|
+
"react": "^19.2.1",
|
|
41
|
+
"sanity": "^4.21.0",
|
|
42
42
|
"typescript": "5.9.3",
|
|
43
|
-
"@repo/eslint-config": "0.0.
|
|
43
|
+
"@repo/eslint-config": "0.0.5",
|
|
44
44
|
"@repo/package.config": "0.0.0",
|
|
45
45
|
"@repo/tsconfig": "1.0.0"
|
|
46
46
|
},
|
|
47
47
|
"peerDependencies": {
|
|
48
48
|
"react": "^18.3 || ^19",
|
|
49
|
-
"sanity": "^4"
|
|
49
|
+
"sanity": "^4.0.0-0 || ^5.0.0-0"
|
|
50
50
|
},
|
|
51
51
|
"engines": {
|
|
52
52
|
"node": ">=20.19 <22 || >=22.12"
|
|
53
53
|
},
|
|
54
54
|
"scripts": {
|
|
55
55
|
"build": "pkg build --strict --check --clean",
|
|
56
|
-
"lint": "eslint ."
|
|
57
|
-
"typecheck": "(cd ../.. && tsgo --project plugins/sanity-plugin-aprimo/tsconfig.json)"
|
|
56
|
+
"lint": "eslint ."
|
|
58
57
|
}
|
|
59
58
|
}
|