convex-cms 0.0.2 → 0.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/admin-dist/nitro.json +15 -0
- package/admin-dist/public/assets/CmsEmptyState-CRswfTzk.js +5 -0
- package/admin-dist/public/assets/CmsPageHeader-CirpXndm.js +1 -0
- package/admin-dist/public/assets/CmsStatusBadge-CbEUpQu-.js +1 -0
- package/admin-dist/public/assets/CmsToolbar-BI2nZOXp.js +1 -0
- package/admin-dist/public/assets/ContentEntryEditor-CBeCyK_m.js +4 -0
- package/admin-dist/public/assets/ErrorState-BIVaWmom.js +1 -0
- package/admin-dist/public/assets/TaxonomyFilter-ChaY6Y_x.js +1 -0
- package/admin-dist/public/assets/_contentTypeId-DQ8k_Rvw.js +1 -0
- package/admin-dist/public/assets/_entryId-CKU_glsK.js +1 -0
- package/admin-dist/public/assets/alert-BXjTqrwQ.js +1 -0
- package/admin-dist/public/assets/badge-hvUOzpVZ.js +1 -0
- package/admin-dist/public/assets/circle-check-big-CF_pR17r.js +1 -0
- package/admin-dist/public/assets/command-DU82cJlt.js +1 -0
- package/admin-dist/public/assets/content-_LXl3pp7.js +1 -0
- package/admin-dist/public/assets/content-types-KjxaXGxY.js +2 -0
- package/admin-dist/public/assets/globals-CS6BZ0zp.css +1 -0
- package/admin-dist/public/assets/index-DNGIZHL-.js +1 -0
- package/admin-dist/public/assets/label-KNtpL71g.js +1 -0
- package/admin-dist/public/assets/link-2-Bw2aI4V4.js +1 -0
- package/admin-dist/public/assets/list-sYepHjt_.js +1 -0
- package/admin-dist/public/assets/main-CKj5yfEi.js +97 -0
- package/admin-dist/public/assets/media-Bkrkffm7.js +1 -0
- package/admin-dist/public/assets/new._contentTypeId-C3LstjNs.js +1 -0
- package/admin-dist/public/assets/plus-DUn8v_Xf.js +1 -0
- package/admin-dist/public/assets/rotate-ccw-DJEoHcRI.js +1 -0
- package/admin-dist/public/assets/scroll-area-DfIlT0in.js +1 -0
- package/admin-dist/public/assets/search-MuAUDJKR.js +1 -0
- package/admin-dist/public/assets/select-BD29IXCI.js +1 -0
- package/admin-dist/public/assets/settings-DmMyn_6A.js +1 -0
- package/admin-dist/public/assets/switch-h3Rrnl5i.js +1 -0
- package/admin-dist/public/assets/tabs-imc8h-Dp.js +1 -0
- package/admin-dist/public/assets/taxonomies-dAsrT65H.js +1 -0
- package/admin-dist/public/assets/textarea-BTy7nwzR.js +1 -0
- package/admin-dist/public/assets/trash-SAWKZZHv.js +1 -0
- package/admin-dist/public/assets/triangle-alert-E52Vfeuh.js +1 -0
- package/admin-dist/public/assets/useBreadcrumbLabel-BECBMCzM.js +1 -0
- package/admin-dist/public/assets/usePermissions-Basjs9BT.js +1 -0
- package/admin-dist/public/favicon.ico +0 -0
- package/admin-dist/server/_chunks/_libs/@date-fns/tz.mjs +217 -0
- package/admin-dist/server/_chunks/_libs/@floating-ui/core.mjs +719 -0
- package/admin-dist/server/_chunks/_libs/@floating-ui/dom.mjs +622 -0
- package/admin-dist/server/_chunks/_libs/@floating-ui/react-dom.mjs +292 -0
- package/admin-dist/server/_chunks/_libs/@floating-ui/utils.mjs +320 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/number.mjs +6 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/primitive.mjs +11 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-arrow.mjs +23 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-avatar.mjs +119 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-checkbox.mjs +270 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-collection.mjs +69 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-compose-refs.mjs +39 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-context.mjs +137 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-dialog.mjs +325 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-direction.mjs +9 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-dismissable-layer.mjs +210 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-dropdown-menu.mjs +253 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-focus-guards.mjs +29 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-focus-scope.mjs +206 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-id.mjs +14 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-label.mjs +23 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-menu.mjs +812 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-popover.mjs +300 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-popper.mjs +286 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-portal.mjs +16 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-presence.mjs +128 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-primitive.mjs +141 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-roving-focus.mjs +224 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-scroll-area.mjs +721 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-select.mjs +1163 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-separator.mjs +28 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-slot.mjs +601 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-switch.mjs +152 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-tabs.mjs +189 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-use-callback-ref.mjs +11 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-use-controllable-state.mjs +69 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-use-effect-event.mjs +1 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-use-escape-keydown.mjs +17 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-use-is-hydrated.mjs +15 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-use-layout-effect.mjs +6 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-use-previous.mjs +14 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-use-size.mjs +39 -0
- package/admin-dist/server/_chunks/_libs/@radix-ui/react-visually-hidden.mjs +33 -0
- package/admin-dist/server/_chunks/_libs/@tanstack/history.mjs +409 -0
- package/admin-dist/server/_chunks/_libs/@tanstack/react-router.mjs +1711 -0
- package/admin-dist/server/_chunks/_libs/@tanstack/react-store.mjs +56 -0
- package/admin-dist/server/_chunks/_libs/@tanstack/router-core.mjs +4829 -0
- package/admin-dist/server/_chunks/_libs/@tanstack/store.mjs +134 -0
- package/admin-dist/server/_chunks/_libs/react-dom.mjs +10781 -0
- package/admin-dist/server/_chunks/_libs/react.mjs +513 -0
- package/admin-dist/server/_libs/aria-hidden.mjs +122 -0
- package/admin-dist/server/_libs/class-variance-authority.mjs +44 -0
- package/admin-dist/server/_libs/clsx.mjs +16 -0
- package/admin-dist/server/_libs/cmdk.mjs +315 -0
- package/admin-dist/server/_libs/convex.mjs +4841 -0
- package/admin-dist/server/_libs/cookie-es.mjs +58 -0
- package/admin-dist/server/_libs/croner.mjs +1 -0
- package/admin-dist/server/_libs/crossws.mjs +1 -0
- package/admin-dist/server/_libs/date-fns.mjs +1716 -0
- package/admin-dist/server/_libs/detect-node-es.mjs +1 -0
- package/admin-dist/server/_libs/get-nonce.mjs +9 -0
- package/admin-dist/server/_libs/h3-v2.mjs +277 -0
- package/admin-dist/server/_libs/h3.mjs +401 -0
- package/admin-dist/server/_libs/hookable.mjs +1 -0
- package/admin-dist/server/_libs/isbot.mjs +20 -0
- package/admin-dist/server/_libs/lucide-react.mjs +850 -0
- package/admin-dist/server/_libs/ohash.mjs +1 -0
- package/admin-dist/server/_libs/react-day-picker.mjs +2201 -0
- package/admin-dist/server/_libs/react-remove-scroll-bar.mjs +82 -0
- package/admin-dist/server/_libs/react-remove-scroll.mjs +328 -0
- package/admin-dist/server/_libs/react-style-singleton.mjs +69 -0
- package/admin-dist/server/_libs/rou3.mjs +8 -0
- package/admin-dist/server/_libs/seroval-plugins.mjs +58 -0
- package/admin-dist/server/_libs/seroval.mjs +1765 -0
- package/admin-dist/server/_libs/srvx.mjs +719 -0
- package/admin-dist/server/_libs/tailwind-merge.mjs +3010 -0
- package/admin-dist/server/_libs/tiny-invariant.mjs +12 -0
- package/admin-dist/server/_libs/tiny-warning.mjs +5 -0
- package/admin-dist/server/_libs/tslib.mjs +39 -0
- package/admin-dist/server/_libs/ufo.mjs +54 -0
- package/admin-dist/server/_libs/unctx.mjs +1 -0
- package/admin-dist/server/_libs/unstorage.mjs +1 -0
- package/admin-dist/server/_libs/use-callback-ref.mjs +66 -0
- package/admin-dist/server/_libs/use-sidecar.mjs +106 -0
- package/admin-dist/server/_libs/use-sync-external-store.mjs +139 -0
- package/admin-dist/server/_libs/zod.mjs +4223 -0
- package/admin-dist/server/_ssr/CmsEmptyState-DU7-7-mV.mjs +290 -0
- package/admin-dist/server/_ssr/CmsPageHeader-CseW0AHm.mjs +24 -0
- package/admin-dist/server/_ssr/CmsStatusBadge-B_pi4KCp.mjs +127 -0
- package/admin-dist/server/_ssr/CmsToolbar-X75ex6ek.mjs +49 -0
- package/admin-dist/server/_ssr/ContentEntryEditor-CepusRsA.mjs +3720 -0
- package/admin-dist/server/_ssr/ErrorState-cI-bKLez.mjs +89 -0
- package/admin-dist/server/_ssr/TaxonomyFilter-Bwrq0-cz.mjs +188 -0
- package/admin-dist/server/_ssr/_contentTypeId-BqYKEcLr.mjs +379 -0
- package/admin-dist/server/_ssr/_entryId-CRfnqeDf.mjs +161 -0
- package/admin-dist/server/_ssr/_tanstack-start-manifest_v-BwDlABVk.mjs +4 -0
- package/admin-dist/server/_ssr/alert-CVt45UUP.mjs +92 -0
- package/admin-dist/server/_ssr/badge-6BsP37vG.mjs +125 -0
- package/admin-dist/server/_ssr/command-fy8epIKf.mjs +128 -0
- package/admin-dist/server/_ssr/config.server-D7JHDcDv.mjs +117 -0
- package/admin-dist/server/_ssr/content-B5RhL7uW.mjs +532 -0
- package/admin-dist/server/_ssr/content-types-BIOqCQYN.mjs +1166 -0
- package/admin-dist/server/_ssr/index-DHSHDPt1.mjs +193 -0
- package/admin-dist/server/_ssr/index.mjs +1275 -0
- package/admin-dist/server/_ssr/label-C8Dko1j7.mjs +22 -0
- package/admin-dist/server/_ssr/media-CSx3XttC.mjs +1832 -0
- package/admin-dist/server/_ssr/new._contentTypeId-DzanEZQM.mjs +144 -0
- package/admin-dist/server/_ssr/router-DDWcF-kt.mjs +1556 -0
- package/admin-dist/server/_ssr/scroll-area-bjPYwhXN.mjs +59 -0
- package/admin-dist/server/_ssr/select-BUhDDf4T.mjs +142 -0
- package/admin-dist/server/_ssr/settings-DAsxnw2q.mjs +348 -0
- package/admin-dist/server/_ssr/start-HYkvq4Ni.mjs +4 -0
- package/admin-dist/server/_ssr/switch-BgyRtQ1Z.mjs +31 -0
- package/admin-dist/server/_ssr/tabs-DzMdRB1A.mjs +628 -0
- package/admin-dist/server/_ssr/taxonomies-C8j8g5Q5.mjs +915 -0
- package/admin-dist/server/_ssr/textarea-9jNeYJSc.mjs +18 -0
- package/admin-dist/server/_ssr/trash-DYMxwhZB.mjs +291 -0
- package/admin-dist/server/_ssr/useBreadcrumbLabel-FNSAr2Ha.mjs +16 -0
- package/admin-dist/server/_ssr/usePermissions-BJGGahrJ.mjs +68 -0
- package/admin-dist/server/favicon.ico +0 -0
- package/admin-dist/server/index.mjs +627 -0
- package/dist/cli/index.js +0 -0
- package/dist/client/admin-config.d.ts +0 -1
- package/dist/client/admin-config.d.ts.map +1 -1
- package/dist/client/admin-config.js +0 -1
- package/dist/client/admin-config.js.map +1 -1
- package/dist/client/adminApi.d.ts.map +1 -1
- package/dist/client/agentTools.d.ts +1237 -135
- package/dist/client/agentTools.d.ts.map +1 -1
- package/dist/client/agentTools.js +33 -9
- package/dist/client/agentTools.js.map +1 -1
- package/dist/client/index.d.ts +1 -1
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js.map +1 -1
- package/dist/component/_generated/component.d.ts +9 -0
- package/dist/component/_generated/component.d.ts.map +1 -1
- package/dist/component/mediaAssets.d.ts +35 -0
- package/dist/component/mediaAssets.d.ts.map +1 -1
- package/dist/component/mediaAssets.js +81 -0
- package/dist/component/mediaAssets.js.map +1 -1
- package/dist/test.d.ts.map +1 -1
- package/dist/test.js +2 -1
- package/dist/test.js.map +1 -1
- package/package.json +9 -5
- package/dist/component/auditLog.d.ts +0 -410
- package/dist/component/auditLog.d.ts.map +0 -1
- package/dist/component/auditLog.js +0 -607
- package/dist/component/auditLog.js.map +0 -1
- package/dist/component/types.d.ts +0 -4
- package/dist/component/types.d.ts.map +0 -1
- package/dist/component/types.js +0 -2
- package/dist/component/types.js.map +0 -1
- package/src/cli/commands/admin.ts +0 -104
- package/src/cli/index.ts +0 -21
- package/src/cli/utils/detectConvexUrl.ts +0 -54
- package/src/cli/utils/openBrowser.ts +0 -16
- package/src/client/admin-config.ts +0 -138
- package/src/client/adminApi.ts +0 -942
- package/src/client/agentTools.ts +0 -1311
- package/src/client/argTypes.ts +0 -316
- package/src/client/field-types.ts +0 -187
- package/src/client/index.ts +0 -1301
- package/src/client/queryBuilder.ts +0 -1100
- package/src/client/schema/codegen.ts +0 -500
- package/src/client/schema/defineContentType.ts +0 -501
- package/src/client/schema/index.ts +0 -169
- package/src/client/schema/schemaDrift.ts +0 -574
- package/src/client/schema/typedClient.ts +0 -688
- package/src/client/schema/types.ts +0 -666
- package/src/client/types.ts +0 -723
- package/src/client/workflows.ts +0 -141
- package/src/client/wrapper.ts +0 -4304
- package/src/component/_generated/api.ts +0 -140
- package/src/component/_generated/component.ts +0 -5029
- package/src/component/_generated/dataModel.ts +0 -60
- package/src/component/_generated/server.ts +0 -156
- package/src/component/authorization.ts +0 -647
- package/src/component/authorizationHooks.ts +0 -668
- package/src/component/bulkOperations.ts +0 -687
- package/src/component/contentEntries.ts +0 -1976
- package/src/component/contentEntryMutations.ts +0 -1223
- package/src/component/contentEntryValidation.ts +0 -707
- package/src/component/contentLock.ts +0 -550
- package/src/component/contentTypeMigration.ts +0 -1064
- package/src/component/contentTypeMutations.ts +0 -969
- package/src/component/contentTypes.ts +0 -346
- package/src/component/convex.config.ts +0 -44
- package/src/component/documentTypes.ts +0 -240
- package/src/component/eventEmitter.ts +0 -485
- package/src/component/exportImport.ts +0 -1169
- package/src/component/index.ts +0 -491
- package/src/component/lib/deepReferenceResolver.ts +0 -999
- package/src/component/lib/errors.ts +0 -816
- package/src/component/lib/index.ts +0 -145
- package/src/component/lib/mediaReferenceResolver.ts +0 -495
- package/src/component/lib/metadataExtractor.ts +0 -792
- package/src/component/lib/mutationAuth.ts +0 -199
- package/src/component/lib/queries.ts +0 -79
- package/src/component/lib/ragContentChunker.ts +0 -1371
- package/src/component/lib/referenceResolver.ts +0 -430
- package/src/component/lib/slugGenerator.ts +0 -262
- package/src/component/lib/slugUniqueness.ts +0 -333
- package/src/component/lib/softDelete.ts +0 -44
- package/src/component/localeFallbackChain.ts +0 -673
- package/src/component/localeFields.ts +0 -896
- package/src/component/mediaAssetMutations.ts +0 -725
- package/src/component/mediaAssets.ts +0 -932
- package/src/component/mediaFolderMutations.ts +0 -1046
- package/src/component/mediaUploadMutations.ts +0 -224
- package/src/component/mediaVariantMutations.ts +0 -900
- package/src/component/mediaVariants.ts +0 -793
- package/src/component/ragContentIndexer.ts +0 -1067
- package/src/component/rateLimitHooks.ts +0 -572
- package/src/component/roles.ts +0 -1360
- package/src/component/scheduledPublish.ts +0 -358
- package/src/component/schema.ts +0 -617
- package/src/component/taxonomies.ts +0 -949
- package/src/component/taxonomyMutations.ts +0 -1210
- package/src/component/trash.ts +0 -724
- package/src/component/userContext.ts +0 -898
- package/src/component/validation.ts +0 -1388
- package/src/component/validators.ts +0 -949
- package/src/component/versionMutations.ts +0 -392
- package/src/component/webhookTrigger.ts +0 -1922
- package/src/react/index.ts +0 -898
- package/src/test.ts +0 -1580
package/src/client/argTypes.ts
DELETED
|
@@ -1,316 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Derived argument types using `Infer<>` and `StringifyIds<>` for API boundary serialization.
|
|
3
|
-
*/
|
|
4
|
-
|
|
5
|
-
import type { Infer } from "convex/values";
|
|
6
|
-
import type {
|
|
7
|
-
StringifyIds,
|
|
8
|
-
ContentType,
|
|
9
|
-
MediaVariantWithUrl,
|
|
10
|
-
} from "../component/documentTypes.js";
|
|
11
|
-
import * as validators from "../component/validators.js";
|
|
12
|
-
|
|
13
|
-
// =============================================================================
|
|
14
|
-
// Content Type Arguments
|
|
15
|
-
// =============================================================================
|
|
16
|
-
|
|
17
|
-
export type CreateContentTypeArgs = StringifyIds<Infer<typeof validators.createContentTypeArgs>>;
|
|
18
|
-
|
|
19
|
-
type UpdateContentTypeArgsBase = StringifyIds<Infer<typeof validators.updateContentTypeArgs>>;
|
|
20
|
-
|
|
21
|
-
/** Extends base validator type with wrapper-specific `force` field for breaking changes */
|
|
22
|
-
export interface UpdateContentTypeArgs extends UpdateContentTypeArgsBase {
|
|
23
|
-
force?: boolean;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
export type DeleteContentTypeArgs = StringifyIds<Infer<typeof validators.deleteContentTypeArgs>>;
|
|
27
|
-
|
|
28
|
-
// =============================================================================
|
|
29
|
-
// Content Entry Arguments
|
|
30
|
-
// =============================================================================
|
|
31
|
-
|
|
32
|
-
export type CreateContentEntryArgs = StringifyIds<Infer<typeof validators.createContentEntryArgs>>;
|
|
33
|
-
export type UpdateContentEntryArgs = StringifyIds<Infer<typeof validators.updateContentEntryArgs>>;
|
|
34
|
-
export type DeleteContentEntryArgs = StringifyIds<Infer<typeof validators.deleteContentEntryArgs>>;
|
|
35
|
-
export type PublishEntryArgs = StringifyIds<Infer<typeof validators.publishEntryArgs>>;
|
|
36
|
-
export type ScheduleEntryArgs = StringifyIds<Infer<typeof validators.scheduleEntryArgs>>;
|
|
37
|
-
export type UnpublishEntryArgs = StringifyIds<Infer<typeof validators.unpublishEntryArgs>>;
|
|
38
|
-
export type DuplicateEntryArgs = StringifyIds<Infer<typeof validators.duplicateContentEntryArgs>>;
|
|
39
|
-
|
|
40
|
-
// =============================================================================
|
|
41
|
-
// Version Arguments
|
|
42
|
-
// =============================================================================
|
|
43
|
-
|
|
44
|
-
export type GetVersionHistoryArgs = StringifyIds<Infer<typeof validators.getVersionHistoryArgs>>;
|
|
45
|
-
export type GetVersionArgs = StringifyIds<Infer<typeof validators.getVersionArgs>>;
|
|
46
|
-
export type RollbackVersionArgs = StringifyIds<Infer<typeof validators.rollbackVersionArgs>>;
|
|
47
|
-
export type CompareVersionsArgs = StringifyIds<Infer<typeof validators.compareVersionsArgs>>;
|
|
48
|
-
|
|
49
|
-
// =============================================================================
|
|
50
|
-
// Media Asset Arguments
|
|
51
|
-
// =============================================================================
|
|
52
|
-
|
|
53
|
-
export type CreateMediaAssetArgs = StringifyIds<Infer<typeof validators.createMediaAssetArgs>>;
|
|
54
|
-
export type UpdateMediaAssetArgs = StringifyIds<Infer<typeof validators.updateMediaAssetArgs>>;
|
|
55
|
-
export type DeleteMediaAssetArgs = StringifyIds<Infer<typeof validators.deleteMediaAssetArgs>>;
|
|
56
|
-
export type RestoreMediaAssetArgs = StringifyIds<Infer<typeof validators.restoreMediaAssetArgs>>;
|
|
57
|
-
|
|
58
|
-
// =============================================================================
|
|
59
|
-
// Media Folder Arguments
|
|
60
|
-
// =============================================================================
|
|
61
|
-
|
|
62
|
-
export type CreateMediaFolderArgs = StringifyIds<Infer<typeof validators.createMediaFolderArgs>>;
|
|
63
|
-
export type UpdateMediaFolderArgs = StringifyIds<Infer<typeof validators.updateMediaFolderArgs>>;
|
|
64
|
-
export type MoveFolderArgs = StringifyIds<Infer<typeof validators.moveFolderArgs>>;
|
|
65
|
-
export type DeleteMediaFolderArgs = StringifyIds<Infer<typeof validators.deleteMediaFolderArgs>>;
|
|
66
|
-
export type RestoreMediaFolderArgs = StringifyIds<Infer<typeof validators.restoreMediaFolderArgs>>;
|
|
67
|
-
export type MoveMediaAssetsArgs = StringifyIds<Infer<typeof validators.moveMediaAssetsArgs>>;
|
|
68
|
-
|
|
69
|
-
// =============================================================================
|
|
70
|
-
// Media Variant Arguments
|
|
71
|
-
// =============================================================================
|
|
72
|
-
|
|
73
|
-
export type CreateMediaVariantArgs = StringifyIds<Infer<typeof validators.createMediaVariantArgs>>;
|
|
74
|
-
export type RequestVariantGenerationArgs = StringifyIds<Infer<typeof validators.requestVariantGenerationArgs>>;
|
|
75
|
-
export type UpdateVariantStatusArgs = StringifyIds<Infer<typeof validators.updateVariantStatusArgs>>;
|
|
76
|
-
export type DeleteMediaVariantArgs = StringifyIds<Infer<typeof validators.deleteMediaVariantArgs>>;
|
|
77
|
-
export type DeleteAssetVariantsArgs = StringifyIds<Infer<typeof validators.deleteAssetVariantsArgs>>;
|
|
78
|
-
export type GetMediaVariantArgs = StringifyIds<Infer<typeof validators.getMediaVariantArgs>>;
|
|
79
|
-
export type ListMediaVariantsArgs = StringifyIds<Infer<typeof validators.listMediaVariantsArgs>>;
|
|
80
|
-
export type GetBestVariantArgs = StringifyIds<Infer<typeof validators.getBestVariantArgs>>;
|
|
81
|
-
|
|
82
|
-
// =============================================================================
|
|
83
|
-
// Bulk Operation Arguments
|
|
84
|
-
// =============================================================================
|
|
85
|
-
|
|
86
|
-
export type BulkPublishArgs = StringifyIds<Infer<typeof validators.bulkPublishArgs>>;
|
|
87
|
-
export type BulkUnpublishArgs = StringifyIds<Infer<typeof validators.bulkUnpublishArgs>>;
|
|
88
|
-
export type BulkDeleteArgs = StringifyIds<Infer<typeof validators.bulkDeleteArgs>>;
|
|
89
|
-
export type BulkUpdateArgs = StringifyIds<Infer<typeof validators.bulkUpdateArgs>>;
|
|
90
|
-
|
|
91
|
-
// =============================================================================
|
|
92
|
-
// Trash Operation Arguments
|
|
93
|
-
// =============================================================================
|
|
94
|
-
|
|
95
|
-
export type UpdateTrashConfigArgs = StringifyIds<Infer<typeof validators.updateTrashConfigArgs>>;
|
|
96
|
-
export type ListTrashArgs = StringifyIds<Infer<typeof validators.listTrashArgs>>;
|
|
97
|
-
export type EmptyTrashArgs = StringifyIds<Infer<typeof validators.emptyTrashArgs>>;
|
|
98
|
-
|
|
99
|
-
// =============================================================================
|
|
100
|
-
// Content Lock Arguments
|
|
101
|
-
// =============================================================================
|
|
102
|
-
|
|
103
|
-
export type AcquireLockArgs = StringifyIds<Infer<typeof validators.acquireLockArgs>>;
|
|
104
|
-
export type ReleaseLockArgs = StringifyIds<Infer<typeof validators.releaseLockArgs>>;
|
|
105
|
-
export type ForceReleaseLockArgs = StringifyIds<Infer<typeof validators.forceReleaseLockArgs>>;
|
|
106
|
-
export type RenewLockArgs = StringifyIds<Infer<typeof validators.renewLockArgs>>;
|
|
107
|
-
export type CheckLockArgs = StringifyIds<Infer<typeof validators.checkLockArgs>>;
|
|
108
|
-
export type ListLockedEntriesArgs = StringifyIds<Infer<typeof validators.listLockedEntriesArgs>>;
|
|
109
|
-
|
|
110
|
-
// =============================================================================
|
|
111
|
-
// Query Arguments
|
|
112
|
-
// =============================================================================
|
|
113
|
-
|
|
114
|
-
export type ContentQueryArgs = StringifyIds<Infer<typeof validators.contentQueryArgs>>;
|
|
115
|
-
export type MediaQueryArgs = StringifyIds<Infer<typeof validators.mediaQueryArgs>>;
|
|
116
|
-
export type ListMediaAssetsArgsFromValidator = StringifyIds<Infer<typeof validators.listMediaAssetsArgs>>;
|
|
117
|
-
|
|
118
|
-
// =============================================================================
|
|
119
|
-
// Wrapper-Specific Argument Types (no direct validator equivalents)
|
|
120
|
-
// =============================================================================
|
|
121
|
-
|
|
122
|
-
import type {
|
|
123
|
-
ContentQueryOptions,
|
|
124
|
-
MediaQueryOptions,
|
|
125
|
-
VariantType,
|
|
126
|
-
PaginationOpts,
|
|
127
|
-
} from "./types.js";
|
|
128
|
-
|
|
129
|
-
export interface GetContentTypeArgs {
|
|
130
|
-
id?: string;
|
|
131
|
-
name?: string;
|
|
132
|
-
includeDeleted?: boolean;
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
export interface ListContentTypesArgs {
|
|
136
|
-
isActive?: boolean;
|
|
137
|
-
includeDeleted?: boolean;
|
|
138
|
-
sortBy?: "name" | "createdAt";
|
|
139
|
-
sortDirection?: "asc" | "desc";
|
|
140
|
-
paginationOpts?: PaginationOpts;
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
export interface GetContentEntryArgs {
|
|
144
|
-
id: string;
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
export interface GetContentEntryBySlugArgs {
|
|
148
|
-
contentTypeId?: string;
|
|
149
|
-
contentTypeName?: string;
|
|
150
|
-
slug: string;
|
|
151
|
-
locale?: string;
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
export type ListContentEntriesArgs = ContentQueryOptions;
|
|
155
|
-
|
|
156
|
-
export interface RestoreEntryArgs {
|
|
157
|
-
id: string;
|
|
158
|
-
restoredBy?: string;
|
|
159
|
-
}
|
|
160
|
-
|
|
161
|
-
export interface BulkRestoreArgs {
|
|
162
|
-
ids: string[];
|
|
163
|
-
restoredBy?: string;
|
|
164
|
-
}
|
|
165
|
-
|
|
166
|
-
export interface GetMediaAssetArgs {
|
|
167
|
-
id: string;
|
|
168
|
-
}
|
|
169
|
-
|
|
170
|
-
export type ListMediaAssetsArgs = MediaQueryOptions;
|
|
171
|
-
|
|
172
|
-
export interface GetMediaFolderArgs {
|
|
173
|
-
id: string;
|
|
174
|
-
}
|
|
175
|
-
|
|
176
|
-
export interface ListMediaFoldersArgs {
|
|
177
|
-
parentId?: string;
|
|
178
|
-
includeDeleted?: boolean;
|
|
179
|
-
}
|
|
180
|
-
|
|
181
|
-
export interface GenerateUploadUrlArgs {
|
|
182
|
-
maxFileSize?: number;
|
|
183
|
-
allowedMimeTypes?: string[];
|
|
184
|
-
requestedBy?: string;
|
|
185
|
-
}
|
|
186
|
-
|
|
187
|
-
export interface FindMediaAssetReferencesArgs {
|
|
188
|
-
id: string;
|
|
189
|
-
limit?: number;
|
|
190
|
-
}
|
|
191
|
-
|
|
192
|
-
export interface GetMediaFolderByPathArgs {
|
|
193
|
-
path: string;
|
|
194
|
-
includeDeleted?: boolean;
|
|
195
|
-
}
|
|
196
|
-
|
|
197
|
-
export interface GetFolderTreeArgs {
|
|
198
|
-
includeDeleted?: boolean;
|
|
199
|
-
}
|
|
200
|
-
|
|
201
|
-
export interface GenerateFromPresetsArgs {
|
|
202
|
-
assetId: string;
|
|
203
|
-
presets: string[];
|
|
204
|
-
requestedBy?: string;
|
|
205
|
-
}
|
|
206
|
-
|
|
207
|
-
// =============================================================================
|
|
208
|
-
// Result Types
|
|
209
|
-
// =============================================================================
|
|
210
|
-
|
|
211
|
-
export interface BreakingChange {
|
|
212
|
-
type:
|
|
213
|
-
| "FIELD_REMOVED"
|
|
214
|
-
| "FIELD_TYPE_CHANGED"
|
|
215
|
-
| "FIELD_MADE_REQUIRED"
|
|
216
|
-
| "SELECT_OPTIONS_REMOVED"
|
|
217
|
-
| "REFERENCE_TYPES_RESTRICTED"
|
|
218
|
-
| "VALIDATION_TIGHTENED";
|
|
219
|
-
fieldName: string;
|
|
220
|
-
message: string;
|
|
221
|
-
affectedEntriesCount: number;
|
|
222
|
-
}
|
|
223
|
-
|
|
224
|
-
export interface UpdateContentTypeResult extends ContentType {
|
|
225
|
-
breakingChanges?: BreakingChange[];
|
|
226
|
-
}
|
|
227
|
-
|
|
228
|
-
export interface DeleteContentTypeResult {
|
|
229
|
-
success: boolean;
|
|
230
|
-
deletedId: string;
|
|
231
|
-
deletedEntriesCount: number;
|
|
232
|
-
deletedVersionsCount: number;
|
|
233
|
-
wasHardDelete: boolean;
|
|
234
|
-
}
|
|
235
|
-
|
|
236
|
-
export interface BulkOperationItemResult {
|
|
237
|
-
id: string;
|
|
238
|
-
success: boolean;
|
|
239
|
-
error?: string;
|
|
240
|
-
}
|
|
241
|
-
|
|
242
|
-
export interface BulkOperationResult {
|
|
243
|
-
total: number;
|
|
244
|
-
succeeded: number;
|
|
245
|
-
failed: number;
|
|
246
|
-
results: BulkOperationItemResult[];
|
|
247
|
-
}
|
|
248
|
-
|
|
249
|
-
export interface GenerateUploadUrlResult {
|
|
250
|
-
uploadUrl: string;
|
|
251
|
-
expiresAt: number;
|
|
252
|
-
maxFileSize: number;
|
|
253
|
-
allowedMimeTypes?: string[];
|
|
254
|
-
}
|
|
255
|
-
|
|
256
|
-
export interface MediaAssetReference {
|
|
257
|
-
entryId: string;
|
|
258
|
-
slug: string;
|
|
259
|
-
contentTypeName: string;
|
|
260
|
-
fields: string[];
|
|
261
|
-
}
|
|
262
|
-
|
|
263
|
-
export interface GenerateVariantsResult {
|
|
264
|
-
total: number;
|
|
265
|
-
succeeded: number;
|
|
266
|
-
failed: number;
|
|
267
|
-
results: {
|
|
268
|
-
preset: string;
|
|
269
|
-
success: boolean;
|
|
270
|
-
variantId?: string;
|
|
271
|
-
error?: string;
|
|
272
|
-
}[];
|
|
273
|
-
}
|
|
274
|
-
|
|
275
|
-
export interface SrcsetEntry {
|
|
276
|
-
url: string;
|
|
277
|
-
descriptor: string;
|
|
278
|
-
width: number;
|
|
279
|
-
format: string;
|
|
280
|
-
}
|
|
281
|
-
|
|
282
|
-
export interface ResponsiveSrcsetResult {
|
|
283
|
-
src: string | null;
|
|
284
|
-
srcset: string;
|
|
285
|
-
entries: SrcsetEntry[];
|
|
286
|
-
sizes?: string;
|
|
287
|
-
}
|
|
288
|
-
|
|
289
|
-
export interface VariantPreset {
|
|
290
|
-
name: string;
|
|
291
|
-
variantType: VariantType;
|
|
292
|
-
width?: number;
|
|
293
|
-
height?: number;
|
|
294
|
-
format: string;
|
|
295
|
-
quality?: number;
|
|
296
|
-
description?: string;
|
|
297
|
-
}
|
|
298
|
-
|
|
299
|
-
export interface AssetWithVariants {
|
|
300
|
-
original: {
|
|
301
|
-
_id: string;
|
|
302
|
-
_creationTime: number;
|
|
303
|
-
name: string;
|
|
304
|
-
mimeType: string;
|
|
305
|
-
size: number;
|
|
306
|
-
width?: number;
|
|
307
|
-
height?: number;
|
|
308
|
-
url: string | null;
|
|
309
|
-
};
|
|
310
|
-
variants: MediaVariantWithUrl[];
|
|
311
|
-
variantsByType: {
|
|
312
|
-
thumbnail?: MediaVariantWithUrl;
|
|
313
|
-
responsive: MediaVariantWithUrl[];
|
|
314
|
-
format: MediaVariantWithUrl[];
|
|
315
|
-
};
|
|
316
|
-
}
|
|
@@ -1,187 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Custom Field Type Registry
|
|
3
|
-
*
|
|
4
|
-
* Allows defining custom field types beyond the 13 built-in types.
|
|
5
|
-
* Custom field types store as 'json' in the database but have their own
|
|
6
|
-
* validation, default values, and UI rendering through the registry.
|
|
7
|
-
*/
|
|
8
|
-
|
|
9
|
-
import { v, type Validator } from "convex/values";
|
|
10
|
-
|
|
11
|
-
export interface FieldTypeDefinition<T = unknown> {
|
|
12
|
-
name: string;
|
|
13
|
-
displayName: string;
|
|
14
|
-
description?: string;
|
|
15
|
-
icon?: string;
|
|
16
|
-
validator: Validator<T, "required", string>;
|
|
17
|
-
defaultValue?: T;
|
|
18
|
-
extractSearchText?: (value: T) => string;
|
|
19
|
-
validate?: (value: T, options?: Record<string, unknown>) => FieldValidationResult;
|
|
20
|
-
optionsSchema?: Record<string, unknown>;
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
export interface FieldValidationResult {
|
|
24
|
-
valid: boolean;
|
|
25
|
-
error?: string;
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
const fieldTypeRegistry = new Map<string, FieldTypeDefinition>();
|
|
29
|
-
|
|
30
|
-
const BUILT_IN_TYPES: FieldTypeDefinition[] = [
|
|
31
|
-
{ name: "text", displayName: "Text", icon: "Type", validator: v.string(), defaultValue: "" },
|
|
32
|
-
{
|
|
33
|
-
name: "richText",
|
|
34
|
-
displayName: "Rich Text",
|
|
35
|
-
icon: "FileText",
|
|
36
|
-
validator: v.string(),
|
|
37
|
-
defaultValue: "",
|
|
38
|
-
},
|
|
39
|
-
{ name: "number", displayName: "Number", icon: "Hash", validator: v.number(), defaultValue: 0 },
|
|
40
|
-
{
|
|
41
|
-
name: "boolean",
|
|
42
|
-
displayName: "Boolean",
|
|
43
|
-
icon: "ToggleLeft",
|
|
44
|
-
validator: v.boolean(),
|
|
45
|
-
defaultValue: false,
|
|
46
|
-
},
|
|
47
|
-
{
|
|
48
|
-
name: "date",
|
|
49
|
-
displayName: "Date",
|
|
50
|
-
icon: "Calendar",
|
|
51
|
-
validator: v.union(v.string(), v.null()),
|
|
52
|
-
defaultValue: null,
|
|
53
|
-
},
|
|
54
|
-
{
|
|
55
|
-
name: "datetime",
|
|
56
|
-
displayName: "Date & Time",
|
|
57
|
-
icon: "Clock",
|
|
58
|
-
validator: v.union(v.string(), v.null()),
|
|
59
|
-
defaultValue: null,
|
|
60
|
-
},
|
|
61
|
-
{
|
|
62
|
-
name: "reference",
|
|
63
|
-
displayName: "Reference",
|
|
64
|
-
icon: "Link",
|
|
65
|
-
validator: v.union(v.string(), v.array(v.string()), v.null()),
|
|
66
|
-
defaultValue: null,
|
|
67
|
-
},
|
|
68
|
-
{
|
|
69
|
-
name: "media",
|
|
70
|
-
displayName: "Media",
|
|
71
|
-
icon: "Image",
|
|
72
|
-
validator: v.union(v.string(), v.null()),
|
|
73
|
-
defaultValue: null,
|
|
74
|
-
},
|
|
75
|
-
{ name: "json", displayName: "JSON", icon: "Braces", validator: v.any(), defaultValue: null },
|
|
76
|
-
{
|
|
77
|
-
name: "select",
|
|
78
|
-
displayName: "Select",
|
|
79
|
-
icon: "ChevronDown",
|
|
80
|
-
validator: v.string(),
|
|
81
|
-
defaultValue: "",
|
|
82
|
-
},
|
|
83
|
-
{
|
|
84
|
-
name: "multiSelect",
|
|
85
|
-
displayName: "Multi Select",
|
|
86
|
-
icon: "CheckSquare",
|
|
87
|
-
validator: v.array(v.string()),
|
|
88
|
-
defaultValue: [],
|
|
89
|
-
},
|
|
90
|
-
{
|
|
91
|
-
name: "tags",
|
|
92
|
-
displayName: "Tags",
|
|
93
|
-
icon: "Tags",
|
|
94
|
-
validator: v.array(v.string()),
|
|
95
|
-
defaultValue: [],
|
|
96
|
-
},
|
|
97
|
-
{
|
|
98
|
-
name: "category",
|
|
99
|
-
displayName: "Category",
|
|
100
|
-
icon: "Folder",
|
|
101
|
-
validator: v.union(v.string(), v.array(v.string()), v.null()),
|
|
102
|
-
defaultValue: null,
|
|
103
|
-
},
|
|
104
|
-
];
|
|
105
|
-
|
|
106
|
-
BUILT_IN_TYPES.forEach((type) => fieldTypeRegistry.set(type.name, type));
|
|
107
|
-
|
|
108
|
-
const BUILT_IN_NAMES = new Set(BUILT_IN_TYPES.map((t) => t.name));
|
|
109
|
-
|
|
110
|
-
/**
|
|
111
|
-
* Define a custom field type.
|
|
112
|
-
*
|
|
113
|
-
* @example
|
|
114
|
-
* const addressField = defineFieldType({
|
|
115
|
-
* name: "address",
|
|
116
|
-
* displayName: "Address",
|
|
117
|
-
* icon: "MapPin",
|
|
118
|
-
* validator: v.object({
|
|
119
|
-
* street: v.string(),
|
|
120
|
-
* city: v.string(),
|
|
121
|
-
* postalCode: v.string(),
|
|
122
|
-
* country: v.string(),
|
|
123
|
-
* }),
|
|
124
|
-
* defaultValue: { street: "", city: "", postalCode: "", country: "" },
|
|
125
|
-
* extractSearchText: (value) => `${value.street} ${value.city}`,
|
|
126
|
-
* });
|
|
127
|
-
*/
|
|
128
|
-
export function defineFieldType<T>(definition: FieldTypeDefinition<T>): FieldTypeDefinition<T> {
|
|
129
|
-
if (!/^[a-z][a-zA-Z0-9]*$/.test(definition.name)) {
|
|
130
|
-
throw new Error(
|
|
131
|
-
`Field type name "${definition.name}" must be camelCase starting with lowercase letter`
|
|
132
|
-
);
|
|
133
|
-
}
|
|
134
|
-
if (BUILT_IN_NAMES.has(definition.name)) {
|
|
135
|
-
throw new Error(`Cannot redefine built-in field type "${definition.name}"`);
|
|
136
|
-
}
|
|
137
|
-
return Object.freeze(definition);
|
|
138
|
-
}
|
|
139
|
-
|
|
140
|
-
export function registerFieldType(definition: FieldTypeDefinition): void {
|
|
141
|
-
if (BUILT_IN_NAMES.has(definition.name)) {
|
|
142
|
-
throw new Error(`Cannot redefine built-in field type "${definition.name}"`);
|
|
143
|
-
}
|
|
144
|
-
fieldTypeRegistry.set(definition.name, definition);
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
export function registerFieldTypes(definitions: FieldTypeDefinition[]): void {
|
|
148
|
-
for (const definition of definitions) {
|
|
149
|
-
registerFieldType(definition);
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
|
|
153
|
-
export function getFieldTypeDefinition(name: string): FieldTypeDefinition | undefined {
|
|
154
|
-
return fieldTypeRegistry.get(name);
|
|
155
|
-
}
|
|
156
|
-
|
|
157
|
-
export function getAllFieldTypes(): FieldTypeDefinition[] {
|
|
158
|
-
return Array.from(fieldTypeRegistry.values());
|
|
159
|
-
}
|
|
160
|
-
|
|
161
|
-
export function getCustomFieldTypes(): FieldTypeDefinition[] {
|
|
162
|
-
return Array.from(fieldTypeRegistry.values()).filter((t) => !BUILT_IN_NAMES.has(t.name));
|
|
163
|
-
}
|
|
164
|
-
|
|
165
|
-
export function isBuiltInFieldType(name: string): boolean {
|
|
166
|
-
return BUILT_IN_NAMES.has(name);
|
|
167
|
-
}
|
|
168
|
-
|
|
169
|
-
export function isCustomFieldType(name: string): boolean {
|
|
170
|
-
return fieldTypeRegistry.has(name) && !BUILT_IN_NAMES.has(name);
|
|
171
|
-
}
|
|
172
|
-
|
|
173
|
-
export function hasFieldType(name: string): boolean {
|
|
174
|
-
return fieldTypeRegistry.has(name);
|
|
175
|
-
}
|
|
176
|
-
|
|
177
|
-
export function getFieldTypeDefaultValue(name: string): unknown {
|
|
178
|
-
const type = fieldTypeRegistry.get(name);
|
|
179
|
-
return type?.defaultValue;
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
export function getFieldTypeIcon(name: string): string | undefined {
|
|
183
|
-
const type = fieldTypeRegistry.get(name);
|
|
184
|
-
return type?.icon;
|
|
185
|
-
}
|
|
186
|
-
|
|
187
|
-
export { BUILT_IN_TYPES };
|