@makeswift/prop-controllers 0.0.0-snapshot-20250822002909 → 0.0.0-snapshot-20250822023038
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.
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/link/link.ts"],"sourcesContent":["import { match } from 'ts-pattern'\nimport {\n ControlDataTypeKey,\n CopyContext,\n Options,\n Types,\n} from '../prop-controllers'\n\nimport {\n LinkDefinition,\n ContextResource,\n replaceResourceIfNeeded,\n shouldRemoveResource,\n} from '@makeswift/controls'\n\nimport { z } from 'zod'\n\nexport const linkDataSchema = LinkDefinition.schema.link\n\nexport type LinkData = z.infer<typeof linkDataSchema>\n\nconst linkPropControllerDataV0Schema = linkDataSchema\n\nexport type LinkPropControllerDataV0 = z.infer<\n typeof linkPropControllerDataV0Schema\n>\n\nexport const LinkPropControllerDataV1Type = 'prop-controllers::link::v1'\nconst linkPropControllerDataV1Schema = z.object({\n [ControlDataTypeKey]: z.literal(LinkPropControllerDataV1Type),\n value: linkDataSchema,\n})\n\nexport type LinkPropControllerDataV1 = z.infer<\n typeof linkPropControllerDataV1Schema\n>\n\nexport const linkPropControllerDataSchema = z.union([\n linkPropControllerDataV0Schema,\n linkPropControllerDataV1Schema,\n])\n\nexport type LinkPropControllerData = z.infer<\n typeof linkPropControllerDataSchema\n>\n\ntype LinkOptions = Options<{\n preset?: LinkPropControllerData\n label?: string\n defaultValue?: LinkData\n options?: { value: LinkData['type']; label: string }[]\n hidden?: boolean\n}>\n\ntype LinkDescriptorV0<\n _T = LinkPropControllerDataV0,\n U extends LinkOptions = LinkOptions,\n> = {\n type: typeof Types.Link\n options: U\n}\n\ntype LinkDescriptorV1<\n _T = LinkPropControllerData,\n U extends LinkOptions = LinkOptions,\n> = {\n type: typeof Types.Link\n version: 1\n options: U\n}\n\nexport type LinkDescriptor<\n _T = LinkPropControllerData,\n U extends LinkOptions = LinkOptions,\n> = LinkDescriptorV0<_T, U> | LinkDescriptorV1<_T, U>\n\nexport type ResolveLinkPropControllerValue<T extends LinkDescriptor> =\n T extends LinkDescriptor ? LinkData | undefined : never\n\n/**\n * @deprecated Imports from `@makeswift/prop-controllers` are deprecated. Use\n * `@makeswift/runtime/controls` instead.\n */\nexport function Link(options: LinkOptions = {}): LinkDescriptor {\n return { type: Types.Link, version: 1, options }\n}\n\nexport function getLinkPropControllerDataLinkData(\n data: LinkPropControllerData,\n): LinkData {\n return match(data)\n .with(\n { [ControlDataTypeKey]: LinkPropControllerDataV1Type },\n (v1) => v1.value,\n )\n .otherwise((v0) => v0)\n}\n\nexport function createLinkPropControllerDataFromLinkData(\n value: LinkData,\n definition: LinkDescriptor,\n): LinkPropControllerData {\n return match(definition)\n .with(\n { version: 1 },\n () =>\n ({\n [ControlDataTypeKey]: LinkPropControllerDataV1Type,\n value,\n }) as const,\n )\n .otherwise(() => value)\n}\n\nexport function getLinkPropControllerPageIds(\n linkData: LinkPropControllerData | null | undefined,\n): string[] {\n if (linkData == null) return []\n\n const link = getLinkPropControllerDataLinkData(linkData)\n\n switch (link.type) {\n case 'OPEN_PAGE':\n return link.payload.pageId == null ? [] : [link.payload.pageId]\n\n default:\n return []\n }\n}\n\nexport function copyLinkData(\n data: LinkData | undefined,\n ctx: CopyContext,\n): LinkData | undefined {\n let value = data\n\n function replacePageId(pageId: string): string | undefined {\n if (shouldRemoveResource(ContextResource.Page, pageId, ctx)) {\n return undefined\n }\n return replaceResourceIfNeeded(ContextResource.Page, pageId, ctx)\n }\n\n switch (value?.type) {\n case 'OPEN_PAGE':\n {\n const pageId = value.payload.pageId\n\n if (pageId == null) return value\n\n value = {\n ...value,\n payload: { ...value.payload, pageId: replacePageId(pageId) },\n }\n }\n break\n\n case 'SCROLL_TO_ELEMENT': {\n const elementIdConfig = value.payload.elementIdConfig\n\n if (elementIdConfig == null) return value\n\n value = {\n ...value,\n payload: {\n ...value.payload,\n elementIdConfig: {\n ...elementIdConfig,\n elementKey:\n ctx.replacementContext.elementKeys.get(\n elementIdConfig.elementKey,\n ) ?? elementIdConfig.elementKey,\n },\n },\n }\n break\n }\n }\n\n return value\n}\n\nexport function copyLinkPropControllerData(\n data: LinkPropControllerData | undefined,\n context: CopyContext,\n): LinkPropControllerData | undefined {\n if (data == null) return data\n\n const value = copyLinkData(getLinkPropControllerDataLinkData(data), context)\n\n if (value == null) return value\n\n return match(data)\n .with({ [ControlDataTypeKey]: LinkPropControllerDataV1Type }, (v1) => ({\n ...v1,\n value,\n }))\n .otherwise((_) => value)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAAsB;AACtB,8BAKO;AAEP,sBAKO;AAEP,iBAAkB;AAEX,MAAM,iBAAiB,+BAAe,OAAO;AAIpD,MAAM,iCAAiC;AAMhC,MAAM,+BAA+B;AAC5C,MAAM,iCAAiC,aAAE,OAAO;AAAA,EAC9C,CAAC,0CAAkB,GAAG,aAAE,QAAQ,4BAA4B;AAAA,EAC5D,OAAO;AACT,CAAC;AAMM,MAAM,+BAA+B,aAAE,MAAM;AAAA,EAClD;AAAA,EACA;AACF,CAAC;AA2CM,SAAS,KAAK,UAAuB,CAAC,GAAmB;AAC9D,SAAO,EAAE,MAAM,8BAAM,MAAM,SAAS,GAAG,QAAQ;AACjD;AAEO,SAAS,kCACd,MACU;AACV,aAAO,yBAAM,IAAI,EACd;AAAA,IACC,EAAE,CAAC,0CAAkB,GAAG,6BAA6B;AAAA,IACrD,CAAC,OAAO,GAAG;AAAA,EACb,EACC,UAAU,CAAC,OAAO,EAAE;AACzB;AAEO,SAAS,yCACd,OACA,YACwB;AACxB,aAAO,yBAAM,UAAU,EACpB;AAAA,IACC,EAAE,SAAS,EAAE;AAAA,IACb,OACG;AAAA,MACC,CAAC,0CAAkB,GAAG;AAAA,MACtB;AAAA,IACF;AAAA,EACJ,EACC,UAAU,MAAM,KAAK;AAC1B;AAEO,SAAS,6BACd,UACU;AACV,MAAI,YAAY;AAAM,WAAO,CAAC;AAE9B,QAAM,OAAO,kCAAkC,QAAQ;AAEvD,UAAQ,KAAK,MAAM;AAAA,IACjB,KAAK;AACH,aAAO,KAAK,QAAQ,UAAU,OAAO,CAAC,IAAI,CAAC,KAAK,QAAQ,MAAM;AAAA,IAEhE;AACE,aAAO,CAAC;AAAA,EACZ;AACF;AAEO,SAAS,aACd,MACA,KACsB;AACtB,MAAI,QAAQ;AAEZ,WAAS,cAAc,QAAoC;AACzD,YAAI,sCAAqB,gCAAgB,MAAM,QAAQ,GAAG,GAAG;AAC3D,aAAO;AAAA,IACT;AACA,eAAO,yCAAwB,gCAAgB,MAAM,QAAQ,GAAG;AAAA,EAClE;AAEA,UAAQ,OAAO,MAAM;AAAA,IACnB,KAAK;AACH;AACE,cAAM,SAAS,MAAM,QAAQ;AAE7B,YAAI,UAAU;AAAM,iBAAO;AAE3B,gBAAQ;AAAA,UACN,GAAG;AAAA,UACH,SAAS,EAAE,GAAG,MAAM,SAAS,QAAQ,cAAc,MAAM,EAAE;AAAA,QAC7D;AAAA,MACF;AACA;AAAA,IAEF,KAAK,qBAAqB;AACxB,YAAM,kBAAkB,MAAM,QAAQ;AAEtC,UAAI,mBAAmB;AAAM,eAAO;AAEpC,cAAQ;AAAA,QACN,GAAG;AAAA,QACH,SAAS;AAAA,UACP,GAAG,MAAM;AAAA,UACT,iBAAiB;AAAA,YACf,GAAG;AAAA,YACH,YACE,IAAI,mBAAmB,YAAY;AAAA,cACjC,gBAAgB;AAAA,YAClB,KAAK,gBAAgB;AAAA,UACzB;AAAA,QACF;AAAA,MACF;AACA;AAAA,IACF;AAAA,EACF;AAEA,SAAO;AACT;AAEO,SAAS,2BACd,MACA,SACoC;AACpC,MAAI,QAAQ;AAAM,WAAO;AAEzB,QAAM,QAAQ,aAAa,kCAAkC,IAAI,GAAG,OAAO;AAE3E,MAAI,SAAS;AAAM,WAAO;AAE1B,aAAO,yBAAM,IAAI,EACd,KAAK,EAAE,CAAC,0CAAkB,GAAG,6BAA6B,GAAG,CAAC,QAAQ;AAAA,IACrE,GAAG;AAAA,IACH;AAAA,EACF,EAAE,EACD,UAAU,CAAC,MAAM,KAAK;AAC3B;","names":[]}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"sources":["../../../src/margin/margin.ts"],"sourcesContent":["import { P, match } from 'ts-pattern'\nimport {\n ControlDataTypeKey,\n ResolveOptions,\n Types,\n Schema,\n} from '../prop-controllers'\nimport { z } from 'zod'\n\nconst marginSideDataSchema = z.union([\n z.object({\n value: z.number(),\n unit: z.literal('px'),\n }),\n z.literal('auto'),\n])\n\nexport type MarginSideData = z.infer<typeof marginSideDataSchema>\n\nconst marginDataSchema = z\n .object({\n marginTop: marginSideDataSchema.nullable().optional(),\n marginRight: marginSideDataSchema.nullable().optional(),\n marginBottom: marginSideDataSchema.nullable().optional(),\n marginLeft: marginSideDataSchema.nullable().optional(),\n })\n // To make the key required.\n .transform((v) => ({\n marginTop: v.marginTop,\n marginRight: v.marginRight,\n marginBottom: v.marginBottom,\n marginLeft: v.marginLeft,\n }))\n\nexport type MarginData = z.infer<typeof marginDataSchema>\n\nconst responsiveMarginDataSchema = Schema.responsiveValue(marginDataSchema)\n\nexport type ResponsiveMarginData = z.infer<typeof responsiveMarginDataSchema>\n\nconst marginPropControllerDataV0Schema = responsiveMarginDataSchema\n\nexport type MarginPropControllerDataV0 = z.infer<\n typeof marginPropControllerDataV0Schema\n>\n\nexport const MarginPropControllerDataV1Type = 'prop-controllers::margin::v1'\n\nconst marginPropControllerDataV1Schema = z.object({\n [ControlDataTypeKey]: z.literal(MarginPropControllerDataV1Type),\n value: responsiveMarginDataSchema,\n})\n\nexport type MarginPropControllerDataV1 = z.infer<\n typeof marginPropControllerDataV1Schema\n>\n\nexport const marginPropControllerDataSchema = z.union([\n marginPropControllerDataV0Schema,\n marginPropControllerDataV1Schema,\n])\n\nexport type MarginPropControllerData = z.infer<\n typeof marginPropControllerDataSchema\n>\n\nexport const MarginPropControllerFormat = {\n ClassName: 'makeswift::prop-controllers::margin::format::class-name',\n ResponsiveValue:\n 'makeswift::prop-controllers::margin::format::responsive-value',\n} as const\n\nexport type MarginPropControllerFormat =\n (typeof MarginPropControllerFormat)[keyof typeof MarginPropControllerFormat]\n\ntype MarginOptions = {\n preset?: MarginPropControllerData\n format?: MarginPropControllerFormat\n}\n\ntype MarginDescriptorV0<\n _T = MarginPropControllerDataV0,\n U extends MarginOptions = MarginOptions,\n> = {\n type: typeof Types.Margin\n options: U\n}\n\ntype MarginDescriptorV1<\n _T = MarginPropControllerData,\n U extends MarginOptions = MarginOptions,\n> = {\n type: typeof Types.Margin\n version: 1\n options: U\n}\n\nexport type MarginDescriptor<\n _T = MarginPropControllerData,\n U extends MarginOptions = MarginOptions,\n> = MarginDescriptorV0<_T, U> | MarginDescriptorV1<_T, U>\n\nexport type ResolveMarginPropControllerValue<T extends MarginDescriptor> =\n T extends MarginDescriptor\n ? undefined extends ResolveOptions<T['options']>['format']\n ? ResponsiveMarginData | undefined\n : ResolveOptions<\n T['options']\n >['format'] extends typeof MarginPropControllerFormat.ClassName\n ? string\n : ResolveOptions<\n T['options']\n >['format'] extends typeof MarginPropControllerFormat.ResponsiveValue\n ? ResponsiveMarginData | undefined\n : never\n : never\n\n/**\n * @deprecated Imports from `@makeswift/prop-controllers` are deprecated. Use\n * `@makeswift/runtime/controls` instead.\n */\nexport function Margin<T extends MarginOptions>(\n options: T & MarginOptions = {} as T,\n): MarginDescriptor<MarginPropControllerData, T> {\n return { type: Types.Margin, version: 1, options }\n}\n\nMargin.Format = MarginPropControllerFormat\n\nexport function getMarginPropControllerDataResponsiveMarginData(\n data: MarginPropControllerData | undefined,\n): ResponsiveMarginData | undefined {\n return match(data)\n .with(\n { [ControlDataTypeKey]: MarginPropControllerDataV1Type },\n (v1) => v1.value,\n )\n .otherwise((v0) => v0)\n}\n\nexport function createMarginPropControllerDataFromResponsiveMarginData(\n responsiveMarginData: ResponsiveMarginData,\n definition?: MarginDescriptor,\n): MarginPropControllerData {\n return match(definition)\n .with(\n { version: 1 },\n P.nullish,\n () =>\n ({\n [ControlDataTypeKey]: MarginPropControllerDataV1Type,\n value: responsiveMarginData,\n }) as const,\n )\n .otherwise(() => responsiveMarginData)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAAyB;AACzB,8BAKO;AACP,iBAAkB;AAElB,MAAM,uBAAuB,aAAE,MAAM;AAAA,EACnC,aAAE,OAAO;AAAA,IACP,OAAO,aAAE,OAAO;AAAA,IAChB,MAAM,aAAE,QAAQ,IAAI;AAAA,EACtB,CAAC;AAAA,EACD,aAAE,QAAQ,MAAM;AAClB,CAAC;AAID,MAAM,mBAAmB,aACtB,OAAO;AAAA,EACN,WAAW,qBAAqB,SAAS,EAAE,SAAS;AAAA,EACpD,aAAa,qBAAqB,SAAS,EAAE,SAAS;AAAA,EACtD,cAAc,qBAAqB,SAAS,EAAE,SAAS;AAAA,EACvD,YAAY,qBAAqB,SAAS,EAAE,SAAS;AACvD,CAAC,EAEA,UAAU,CAAC,OAAO;AAAA,EACjB,WAAW,EAAE;AAAA,EACb,aAAa,EAAE;AAAA,EACf,cAAc,EAAE;AAAA,EAChB,YAAY,EAAE;AAChB,EAAE;AAIJ,MAAM,6BAA6B,+BAAO,gBAAgB,gBAAgB;AAI1E,MAAM,mCAAmC;AAMlC,MAAM,iCAAiC;AAE9C,MAAM,mCAAmC,aAAE,OAAO;AAAA,EAChD,CAAC,0CAAkB,GAAG,aAAE,QAAQ,8BAA8B;AAAA,EAC9D,OAAO;AACT,CAAC;AAMM,MAAM,iCAAiC,aAAE,MAAM;AAAA,EACpD;AAAA,EACA;AACF,CAAC;AAMM,MAAM,6BAA6B;AAAA,EACxC,WAAW;AAAA,EACX,iBACE;AACJ;AAmDO,SAAS,OACd,UAA6B,CAAC,GACiB;AAC/C,SAAO,EAAE,MAAM,8BAAM,QAAQ,SAAS,GAAG,QAAQ;AACnD;AAEA,OAAO,SAAS;AAET,SAAS,gDACd,MACkC;AAClC,aAAO,yBAAM,IAAI,EACd;AAAA,IACC,EAAE,CAAC,0CAAkB,GAAG,+BAA+B;AAAA,IACvD,CAAC,OAAO,GAAG;AAAA,EACb,EACC,UAAU,CAAC,OAAO,EAAE;AACzB;AAEO,SAAS,uDACd,sBACA,YAC0B;AAC1B,aAAO,yBAAM,UAAU,EACpB;AAAA,IACC,EAAE,SAAS,EAAE;AAAA,IACb,oBAAE;AAAA,IACF,OACG;AAAA,MACC,CAAC,0CAAkB,GAAG;AAAA,MACtB,OAAO;AAAA,IACT;AAAA,EACJ,EACC,UAAU,MAAM,oBAAoB;AACzC;","names":[]}
|
package/dist/cjs/number.js.map
CHANGED
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"sources":["../../src/number.ts"],"sourcesContent":["import { z } from 'zod'\nimport { ControlDataTypeKey, Options, Types } from './prop-controllers'\nimport { P, match } from 'ts-pattern'\n\nconst numberPropControllerDataV0Schema = z.number()\n\ntype NumberPropControllerDataV0 = z.infer<\n typeof numberPropControllerDataV0Schema\n>\n\nconst NumberPropControllerDataV1Type = 'prop-controllers::number::v1'\n\nconst numberPropControllerDataV1Schema = z.object({\n [ControlDataTypeKey]: z.literal(NumberPropControllerDataV1Type),\n value: z.number(),\n})\n\ntype NumberPropControllerDataV1 = z.infer<\n typeof numberPropControllerDataV1Schema\n>\n\nexport const numberPropControllerDataSchema = z.union([\n numberPropControllerDataV0Schema,\n numberPropControllerDataV1Schema,\n])\n\nexport type NumberPropControllerData = z.infer<\n typeof numberPropControllerDataSchema\n>\n\nexport type NumberOptions = Options<{\n preset?: NumberPropControllerData\n label?: string\n defaultValue?: number\n min?: number\n max?: number\n step?: number\n suffix?: string\n hidden?: boolean\n}>\n\ntype NumberDescriptorV0<_T = NumberPropControllerDataV0> = {\n type: typeof Types.Number\n options: NumberOptions\n}\n\ntype NumberDescriptorV1<_T = NumberPropControllerDataV1> = {\n type: typeof Types.Number\n version: 1\n options: NumberOptions\n}\n\nexport type NumberDescriptor<_T = NumberPropControllerData> =\n | NumberDescriptorV0\n | NumberDescriptorV1\n\nexport type ResolveNumberPropControllerValue<T extends NumberDescriptor> =\n T extends NumberDescriptor ? number | undefined : never\n\n/**\n * @deprecated Imports from `@makeswift/runtime/prop-controllers` are deprecated. Use\n * `@makeswift/runtime/controls` instead.\n */\nexport function Number(options: NumberOptions = {}): NumberDescriptorV1 {\n return { type: Types.Number, version: 1, options }\n}\n\nexport function getNumberPropControllerDataNumber(\n data: NumberPropControllerData,\n): number {\n return match(data)\n .with(\n { [ControlDataTypeKey]: NumberPropControllerDataV1Type },\n (v1) => v1.value,\n )\n .otherwise((v0) => v0)\n}\n\nexport function createNumberPropControllerDataFromNumber(\n value: number,\n definition?: NumberDescriptor,\n): NumberPropControllerData {\n return match(definition)\n .with(\n { version: 1 },\n P.nullish,\n () =>\n ({\n [ControlDataTypeKey]: NumberPropControllerDataV1Type,\n value,\n } as const),\n )\n .otherwise(() => value)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,iBAAkB;AAClB,8BAAmD;AACnD,wBAAyB;AAEzB,MAAM,mCAAmC,aAAE,OAAO;AAMlD,MAAM,iCAAiC;AAEvC,MAAM,mCAAmC,aAAE,OAAO;AAAA,EAChD,CAAC,0CAAkB,GAAG,aAAE,QAAQ,8BAA8B;AAAA,EAC9D,OAAO,aAAE,OAAO;AAClB,CAAC;AAMM,MAAM,iCAAiC,aAAE,MAAM;AAAA,EACpD;AAAA,EACA;AACF,CAAC;AAuCM,SAAS,OAAO,UAAyB,CAAC,GAAuB;AACtE,SAAO,EAAE,MAAM,8BAAM,QAAQ,SAAS,GAAG,QAAQ;AACnD;AAEO,SAAS,kCACd,MACQ;AACR,aAAO,yBAAM,IAAI,EACd;AAAA,IACC,EAAE,CAAC,0CAAkB,GAAG,+BAA+B;AAAA,IACvD,CAAC,OAAO,GAAG;AAAA,EACb,EACC,UAAU,CAAC,OAAO,EAAE;AACzB;AAEO,SAAS,yCACd,OACA,YAC0B;AAC1B,aAAO,yBAAM,UAAU,EACpB;AAAA,IACC,EAAE,SAAS,EAAE;AAAA,IACb,oBAAE;AAAA,IACF,OACG;AAAA,MACC,CAAC,0CAAkB,GAAG;AAAA,MACtB;AAAA,IACF;AAAA,EACJ,EACC,UAAU,MAAM,KAAK;AAC1B;","names":[]}
|