@plasmicpkgs/antd5 0.0.71 → 0.0.73

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,11 +1,16 @@
1
1
  import { DatePicker } from "antd";
2
2
  import React from "react";
3
3
  import { Registerable } from "./utils";
4
+ import { Dayjs } from "dayjs";
4
5
  /**
5
- * onChangeIsoString uses ISO strings rather than dayjs.
6
+ * value/onChange uses ISO strings rather than dayjs.
7
+ *
8
+ * Ant DatePicker popover is unusable on mobile, so fall back to native (which is missing theme).
6
9
  */
7
- export declare function AntdDatePicker(props: React.ComponentProps<typeof DatePicker> & {
8
- onChangeIsoString: (value: string | null) => void;
10
+ export declare function AntdDatePicker(props: Omit<React.ComponentProps<typeof DatePicker>, "value" | "onChange"> & {
11
+ onChange: (value: string | null) => void;
12
+ value?: Dayjs | string | null;
13
+ showTime?: boolean;
9
14
  }): JSX.Element;
10
15
  export declare namespace AntdDatePicker {
11
16
  var __plasmicFormFieldMeta: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plasmicpkgs/antd5",
3
- "version": "0.0.71",
3
+ "version": "0.0.73",
4
4
  "description": "Plasmic registration calls for antd components",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -76,5 +76,5 @@
76
76
  "publishConfig": {
77
77
  "access": "public"
78
78
  },
79
- "gitHead": "33a12ff69ec49f4681b7842548ccc62b1f8cb7de"
79
+ "gitHead": "4a872969ac49d90374f93b1948d7206452658896"
80
80
  }
@@ -32,25 +32,46 @@ var __spreadValues = (a, b) => {
32
32
  };
33
33
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
34
34
  function AntdDatePicker(props) {
35
- return /* @__PURE__ */ React__default.default.createElement(
35
+ const nativeInput = React__default.default.useRef(null);
36
+ const [open, setOpen] = React.useState(false);
37
+ const strValue = props.value && !(typeof props.value === "string") && "toISOString" in props.value ? props.value.toISOString() : props.value === null ? void 0 : props.value;
38
+ return /* @__PURE__ */ React__default.default.createElement(React__default.default.Fragment, null, /* @__PURE__ */ React__default.default.createElement(
36
39
  antd.DatePicker,
37
40
  __spreadProps(__spreadValues({}, props), {
38
41
  value: props.value === void 0 ? void 0 : !props.value ? null : dayjs__default.default(props.value),
39
42
  defaultValue: props.defaultValue === void 0 ? void 0 : dayjs__default.default(props.defaultValue),
40
- onChange: (value, dateString) => {
41
- var _a, _b;
42
- (_a = props.onChange) == null ? void 0 : _a.call(props, value, dateString);
43
- (_b = props.onChangeIsoString) == null ? void 0 : _b.call(props, value !== null ? value.toISOString() : null);
43
+ onChange: (value, _dateString) => {
44
+ var _a;
45
+ (_a = props.onChange) == null ? void 0 : _a.call(props, value !== null ? value.toISOString() : null);
46
+ },
47
+ open,
48
+ onOpenChange: (open2) => {
49
+ if (open2 && window.innerWidth < 500) {
50
+ nativeInput.current.showPicker();
51
+ } else {
52
+ setOpen(open2);
53
+ }
44
54
  }
45
55
  })
46
- );
56
+ ), /* @__PURE__ */ React__default.default.createElement(
57
+ "input",
58
+ {
59
+ hidden: true,
60
+ ref: nativeInput,
61
+ type: props.showTime ? "datetime-local" : "date",
62
+ value: strValue,
63
+ onChange: (e) => {
64
+ props.onChange(e.target.value);
65
+ }
66
+ }
67
+ ));
47
68
  }
48
69
  AntdDatePicker.__plasmicFormFieldMeta = { valueProp: "checked" };
49
70
  const datePickerComponentName = "plasmic-antd5-date-picker";
50
71
  function registerDatePicker(loader) {
51
72
  utils.registerComponentHelper(loader, AntdDatePicker, {
52
73
  name: datePickerComponentName,
53
- displayName: "Date Time Picker",
74
+ displayName: "Date/Time Picker",
54
75
  props: {
55
76
  value: {
56
77
  type: "string",
@@ -69,7 +90,7 @@ function registerDatePicker(loader) {
69
90
  defaultValueHint: false,
70
91
  advanced: true
71
92
  },
72
- onChangeIsoString: {
93
+ onChange: {
73
94
  type: "eventHandler",
74
95
  argTypes: [{ name: "value", type: "string" }]
75
96
  },
@@ -127,7 +148,7 @@ function registerDatePicker(loader) {
127
148
  value: {
128
149
  type: "writable",
129
150
  valueProp: "value",
130
- onChangeProp: "onChangeIsoString",
151
+ onChangeProp: "onChange",
131
152
  variableType: "text"
132
153
  }
133
154
  },
@@ -1 +1 @@
1
- {"version":3,"file":"registerDatePicker.cjs.js","sources":["../src/registerDatePicker.tsx"],"sourcesContent":["import { DatePicker } from \"antd\";\nimport React from \"react\";\nimport { capitalize, Registerable, registerComponentHelper } from \"./utils\";\nimport dayjs from \"dayjs\";\n\n/**\n * onChangeIsoString uses ISO strings rather than dayjs.\n */\nexport function AntdDatePicker(\n props: React.ComponentProps<typeof DatePicker> & {\n onChangeIsoString: (value: string | null) => void;\n }\n) {\n return (\n <DatePicker\n {...props}\n value={\n props.value === undefined\n ? undefined\n : !props.value\n ? null\n : dayjs(props.value)\n }\n defaultValue={\n props.defaultValue === undefined ? undefined : dayjs(props.defaultValue)\n }\n onChange={(value, dateString) => {\n props.onChange?.(value, dateString);\n props.onChangeIsoString?.(value !== null ? value.toISOString() : null);\n }}\n />\n );\n}\nAntdDatePicker.__plasmicFormFieldMeta = { valueProp: \"checked\" };\n\nexport const datePickerComponentName = \"plasmic-antd5-date-picker\";\n\nexport function registerDatePicker(loader?: Registerable) {\n registerComponentHelper(loader, AntdDatePicker, {\n name: datePickerComponentName,\n displayName: \"Date Time Picker\",\n props: {\n value: {\n type: \"string\",\n editOnly: true,\n uncontrolledProp: \"defaultValue\",\n description:\n \"The current date/time as an ISO string, Date object, or dayjs object\",\n hidden: (ps: any) => !!ps.__plasmicFormField,\n },\n disabled: {\n type: \"boolean\",\n defaultValueHint: false,\n },\n autoFocus: {\n type: \"boolean\",\n description: \"Focus when component is rendered\",\n defaultValueHint: false,\n advanced: true,\n },\n onChangeIsoString: {\n type: \"eventHandler\",\n argTypes: [{ name: \"value\", type: \"string\" }],\n } as any,\n picker: {\n type: \"choice\",\n options: [\"date\", \"week\", \"month\", \"quarter\", \"year\"].map((value) => ({\n value,\n label: capitalize(value),\n })),\n defaultValueHint: \"date\",\n },\n showTime: {\n type: \"boolean\",\n description: \"Enable time selection\",\n },\n bordered: {\n type: \"boolean\",\n advanced: true,\n },\n // TODO - see how it works with plasmic-rich-components\n // format: {\n // advanced: true\n // },\n showNow: {\n type: \"boolean\",\n advanced: true,\n description: 'Whether to show the \"Now\" button',\n defaultValueHint: true,\n hidden: (ps: any) => !ps.showTime,\n },\n showToday: {\n type: \"boolean\",\n advanced: true,\n description: 'Whether to show the \"Today\" button',\n defaultValueHint: true,\n hidden: (ps: any) => ps.showTime,\n },\n // disabledDate: {\n // type: \"function\",\n // advanced: true,\n // description: \"Dates to disable\",\n // },\n // disabledTime: {\n // type: \"function\",\n // advanced: true,\n // description: \"Times to disable\",\n // },\n allowClear: {\n type: \"boolean\",\n advanced: true,\n description: \"Whether to show the clear button\",\n },\n },\n states: {\n value: {\n type: \"writable\",\n valueProp: \"value\",\n onChangeProp: \"onChangeIsoString\",\n variableType: \"text\",\n },\n },\n importPath: \"@plasmicpkgs/antd5/skinny/registerDatePicker\",\n importName: \"AntdDatePicker\",\n });\n}\n"],"names":["React","DatePicker","dayjs","registerComponentHelper","capitalize"],"mappings":"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"}
1
+ {"version":3,"file":"registerDatePicker.cjs.js","sources":["../src/registerDatePicker.tsx"],"sourcesContent":["import { DatePicker } from \"antd\";\nimport React, { useState } from \"react\";\nimport { capitalize, Registerable, registerComponentHelper } from \"./utils\";\nimport dayjs, { Dayjs } from \"dayjs\";\n\n/**\n * value/onChange uses ISO strings rather than dayjs.\n *\n * Ant DatePicker popover is unusable on mobile, so fall back to native (which is missing theme).\n */\nexport function AntdDatePicker(\n props: Omit<React.ComponentProps<typeof DatePicker>, \"value\" | \"onChange\"> & {\n onChange: (value: string | null) => void;\n value?: Dayjs | string | null;\n // Not sure why this is missing from DatePicker props!\n showTime?: boolean;\n }\n) {\n const nativeInput = React.useRef<HTMLInputElement>(null);\n const [open, setOpen] = useState(false);\n const strValue: string | undefined =\n props.value &&\n !(typeof props.value === \"string\") &&\n \"toISOString\" in props.value\n ? props.value.toISOString()\n : props.value === null\n ? undefined\n : props.value;\n return (\n <>\n <DatePicker\n {...props}\n value={\n props.value === undefined\n ? undefined\n : !props.value\n ? null\n : dayjs(props.value)\n }\n defaultValue={\n props.defaultValue === undefined\n ? undefined\n : dayjs(props.defaultValue)\n }\n // dateString isn't a valid ISO string, and value is a dayjs object.\n onChange={(value, _dateString) => {\n props.onChange?.(value !== null ? value.toISOString() : null);\n }}\n open={open}\n onOpenChange={(open) => {\n if (open && window.innerWidth < 500) {\n nativeInput.current!.showPicker();\n } else {\n setOpen(open);\n }\n }}\n />\n <input\n hidden\n ref={nativeInput}\n type={props.showTime ? \"datetime-local\" : \"date\"}\n value={strValue}\n onChange={(e) => {\n props.onChange(e.target.value);\n }}\n />\n </>\n );\n}\nAntdDatePicker.__plasmicFormFieldMeta = { valueProp: \"checked\" };\n\nexport const datePickerComponentName = \"plasmic-antd5-date-picker\";\n\nexport function registerDatePicker(loader?: Registerable) {\n registerComponentHelper(loader, AntdDatePicker, {\n name: datePickerComponentName,\n displayName: \"Date/Time Picker\",\n props: {\n value: {\n type: \"string\",\n editOnly: true,\n uncontrolledProp: \"defaultValue\",\n description:\n \"The current date/time as an ISO string, Date object, or dayjs object\",\n hidden: (ps: any) => !!ps.__plasmicFormField,\n },\n disabled: {\n type: \"boolean\",\n defaultValueHint: false,\n },\n autoFocus: {\n type: \"boolean\",\n description: \"Focus when component is rendered\",\n defaultValueHint: false,\n advanced: true,\n },\n onChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"value\", type: \"string\" }],\n } as any,\n picker: {\n type: \"choice\",\n options: [\"date\", \"week\", \"month\", \"quarter\", \"year\"].map((value) => ({\n value,\n label: capitalize(value),\n })),\n defaultValueHint: \"date\",\n },\n showTime: {\n type: \"boolean\",\n description: \"Enable time selection\",\n },\n bordered: {\n type: \"boolean\",\n advanced: true,\n },\n // TODO - see how it works with plasmic-rich-components\n // format: {\n // advanced: true\n // },\n showNow: {\n type: \"boolean\",\n advanced: true,\n description: 'Whether to show the \"Now\" button',\n defaultValueHint: true,\n hidden: (ps: any) => !ps.showTime,\n },\n showToday: {\n type: \"boolean\",\n advanced: true,\n description: 'Whether to show the \"Today\" button',\n defaultValueHint: true,\n hidden: (ps: any) => ps.showTime,\n },\n // disabledDate: {\n // type: \"function\",\n // advanced: true,\n // description: \"Dates to disable\",\n // },\n // disabledTime: {\n // type: \"function\",\n // advanced: true,\n // description: \"Times to disable\",\n // },\n allowClear: {\n type: \"boolean\",\n advanced: true,\n description: \"Whether to show the clear button\",\n },\n },\n states: {\n value: {\n type: \"writable\",\n valueProp: \"value\",\n onChangeProp: \"onChange\",\n variableType: \"text\",\n },\n },\n importPath: \"@plasmicpkgs/antd5/skinny/registerDatePicker\",\n importName: \"AntdDatePicker\",\n });\n}\n"],"names":["React","useState","DatePicker","dayjs","open","registerComponentHelper","capitalize"],"mappings":"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"}
@@ -1,11 +1,16 @@
1
1
  import { DatePicker } from "antd";
2
2
  import React from "react";
3
3
  import { Registerable } from "./utils";
4
+ import { Dayjs } from "dayjs";
4
5
  /**
5
- * onChangeIsoString uses ISO strings rather than dayjs.
6
+ * value/onChange uses ISO strings rather than dayjs.
7
+ *
8
+ * Ant DatePicker popover is unusable on mobile, so fall back to native (which is missing theme).
6
9
  */
7
- export declare function AntdDatePicker(props: React.ComponentProps<typeof DatePicker> & {
8
- onChangeIsoString: (value: string | null) => void;
10
+ export declare function AntdDatePicker(props: Omit<React.ComponentProps<typeof DatePicker>, "value" | "onChange"> & {
11
+ onChange: (value: string | null) => void;
12
+ value?: Dayjs | string | null;
13
+ showTime?: boolean;
9
14
  }): JSX.Element;
10
15
  export declare namespace AntdDatePicker {
11
16
  var __plasmicFormFieldMeta: {
@@ -1,5 +1,5 @@
1
1
  import { DatePicker } from 'antd';
2
- import React from 'react';
2
+ import React, { useState } from 'react';
3
3
  import { r as registerComponentHelper, c as capitalize } from './utils-b2751954.esm.js';
4
4
  import dayjs from 'dayjs';
5
5
  import '@plasmicapp/host/registerComponent';
@@ -25,25 +25,46 @@ var __spreadValues = (a, b) => {
25
25
  };
26
26
  var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
27
27
  function AntdDatePicker(props) {
28
- return /* @__PURE__ */ React.createElement(
28
+ const nativeInput = React.useRef(null);
29
+ const [open, setOpen] = useState(false);
30
+ const strValue = props.value && !(typeof props.value === "string") && "toISOString" in props.value ? props.value.toISOString() : props.value === null ? void 0 : props.value;
31
+ return /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(
29
32
  DatePicker,
30
33
  __spreadProps(__spreadValues({}, props), {
31
34
  value: props.value === void 0 ? void 0 : !props.value ? null : dayjs(props.value),
32
35
  defaultValue: props.defaultValue === void 0 ? void 0 : dayjs(props.defaultValue),
33
- onChange: (value, dateString) => {
34
- var _a, _b;
35
- (_a = props.onChange) == null ? void 0 : _a.call(props, value, dateString);
36
- (_b = props.onChangeIsoString) == null ? void 0 : _b.call(props, value !== null ? value.toISOString() : null);
36
+ onChange: (value, _dateString) => {
37
+ var _a;
38
+ (_a = props.onChange) == null ? void 0 : _a.call(props, value !== null ? value.toISOString() : null);
39
+ },
40
+ open,
41
+ onOpenChange: (open2) => {
42
+ if (open2 && window.innerWidth < 500) {
43
+ nativeInput.current.showPicker();
44
+ } else {
45
+ setOpen(open2);
46
+ }
37
47
  }
38
48
  })
39
- );
49
+ ), /* @__PURE__ */ React.createElement(
50
+ "input",
51
+ {
52
+ hidden: true,
53
+ ref: nativeInput,
54
+ type: props.showTime ? "datetime-local" : "date",
55
+ value: strValue,
56
+ onChange: (e) => {
57
+ props.onChange(e.target.value);
58
+ }
59
+ }
60
+ ));
40
61
  }
41
62
  AntdDatePicker.__plasmicFormFieldMeta = { valueProp: "checked" };
42
63
  const datePickerComponentName = "plasmic-antd5-date-picker";
43
64
  function registerDatePicker(loader) {
44
65
  registerComponentHelper(loader, AntdDatePicker, {
45
66
  name: datePickerComponentName,
46
- displayName: "Date Time Picker",
67
+ displayName: "Date/Time Picker",
47
68
  props: {
48
69
  value: {
49
70
  type: "string",
@@ -62,7 +83,7 @@ function registerDatePicker(loader) {
62
83
  defaultValueHint: false,
63
84
  advanced: true
64
85
  },
65
- onChangeIsoString: {
86
+ onChange: {
66
87
  type: "eventHandler",
67
88
  argTypes: [{ name: "value", type: "string" }]
68
89
  },
@@ -120,7 +141,7 @@ function registerDatePicker(loader) {
120
141
  value: {
121
142
  type: "writable",
122
143
  valueProp: "value",
123
- onChangeProp: "onChangeIsoString",
144
+ onChangeProp: "onChange",
124
145
  variableType: "text"
125
146
  }
126
147
  },
@@ -1 +1 @@
1
- {"version":3,"file":"registerDatePicker.esm.js","sources":["../src/registerDatePicker.tsx"],"sourcesContent":["import { DatePicker } from \"antd\";\nimport React from \"react\";\nimport { capitalize, Registerable, registerComponentHelper } from \"./utils\";\nimport dayjs from \"dayjs\";\n\n/**\n * onChangeIsoString uses ISO strings rather than dayjs.\n */\nexport function AntdDatePicker(\n props: React.ComponentProps<typeof DatePicker> & {\n onChangeIsoString: (value: string | null) => void;\n }\n) {\n return (\n <DatePicker\n {...props}\n value={\n props.value === undefined\n ? undefined\n : !props.value\n ? null\n : dayjs(props.value)\n }\n defaultValue={\n props.defaultValue === undefined ? undefined : dayjs(props.defaultValue)\n }\n onChange={(value, dateString) => {\n props.onChange?.(value, dateString);\n props.onChangeIsoString?.(value !== null ? value.toISOString() : null);\n }}\n />\n );\n}\nAntdDatePicker.__plasmicFormFieldMeta = { valueProp: \"checked\" };\n\nexport const datePickerComponentName = \"plasmic-antd5-date-picker\";\n\nexport function registerDatePicker(loader?: Registerable) {\n registerComponentHelper(loader, AntdDatePicker, {\n name: datePickerComponentName,\n displayName: \"Date Time Picker\",\n props: {\n value: {\n type: \"string\",\n editOnly: true,\n uncontrolledProp: \"defaultValue\",\n description:\n \"The current date/time as an ISO string, Date object, or dayjs object\",\n hidden: (ps: any) => !!ps.__plasmicFormField,\n },\n disabled: {\n type: \"boolean\",\n defaultValueHint: false,\n },\n autoFocus: {\n type: \"boolean\",\n description: \"Focus when component is rendered\",\n defaultValueHint: false,\n advanced: true,\n },\n onChangeIsoString: {\n type: \"eventHandler\",\n argTypes: [{ name: \"value\", type: \"string\" }],\n } as any,\n picker: {\n type: \"choice\",\n options: [\"date\", \"week\", \"month\", \"quarter\", \"year\"].map((value) => ({\n value,\n label: capitalize(value),\n })),\n defaultValueHint: \"date\",\n },\n showTime: {\n type: \"boolean\",\n description: \"Enable time selection\",\n },\n bordered: {\n type: \"boolean\",\n advanced: true,\n },\n // TODO - see how it works with plasmic-rich-components\n // format: {\n // advanced: true\n // },\n showNow: {\n type: \"boolean\",\n advanced: true,\n description: 'Whether to show the \"Now\" button',\n defaultValueHint: true,\n hidden: (ps: any) => !ps.showTime,\n },\n showToday: {\n type: \"boolean\",\n advanced: true,\n description: 'Whether to show the \"Today\" button',\n defaultValueHint: true,\n hidden: (ps: any) => ps.showTime,\n },\n // disabledDate: {\n // type: \"function\",\n // advanced: true,\n // description: \"Dates to disable\",\n // },\n // disabledTime: {\n // type: \"function\",\n // advanced: true,\n // description: \"Times to disable\",\n // },\n allowClear: {\n type: \"boolean\",\n advanced: true,\n description: \"Whether to show the clear button\",\n },\n },\n states: {\n value: {\n type: \"writable\",\n valueProp: \"value\",\n onChangeProp: \"onChangeIsoString\",\n variableType: \"text\",\n },\n },\n importPath: \"@plasmicpkgs/antd5/skinny/registerDatePicker\",\n importName: \"AntdDatePicker\",\n });\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registerDatePicker.esm.js","sources":["../src/registerDatePicker.tsx"],"sourcesContent":["import { DatePicker } from \"antd\";\nimport React, { useState } from \"react\";\nimport { capitalize, Registerable, registerComponentHelper } from \"./utils\";\nimport dayjs, { Dayjs } from \"dayjs\";\n\n/**\n * value/onChange uses ISO strings rather than dayjs.\n *\n * Ant DatePicker popover is unusable on mobile, so fall back to native (which is missing theme).\n */\nexport function AntdDatePicker(\n props: Omit<React.ComponentProps<typeof DatePicker>, \"value\" | \"onChange\"> & {\n onChange: (value: string | null) => void;\n value?: Dayjs | string | null;\n // Not sure why this is missing from DatePicker props!\n showTime?: boolean;\n }\n) {\n const nativeInput = React.useRef<HTMLInputElement>(null);\n const [open, setOpen] = useState(false);\n const strValue: string | undefined =\n props.value &&\n !(typeof props.value === \"string\") &&\n \"toISOString\" in props.value\n ? props.value.toISOString()\n : props.value === null\n ? undefined\n : props.value;\n return (\n <>\n <DatePicker\n {...props}\n value={\n props.value === undefined\n ? undefined\n : !props.value\n ? null\n : dayjs(props.value)\n }\n defaultValue={\n props.defaultValue === undefined\n ? undefined\n : dayjs(props.defaultValue)\n }\n // dateString isn't a valid ISO string, and value is a dayjs object.\n onChange={(value, _dateString) => {\n props.onChange?.(value !== null ? value.toISOString() : null);\n }}\n open={open}\n onOpenChange={(open) => {\n if (open && window.innerWidth < 500) {\n nativeInput.current!.showPicker();\n } else {\n setOpen(open);\n }\n }}\n />\n <input\n hidden\n ref={nativeInput}\n type={props.showTime ? \"datetime-local\" : \"date\"}\n value={strValue}\n onChange={(e) => {\n props.onChange(e.target.value);\n }}\n />\n </>\n );\n}\nAntdDatePicker.__plasmicFormFieldMeta = { valueProp: \"checked\" };\n\nexport const datePickerComponentName = \"plasmic-antd5-date-picker\";\n\nexport function registerDatePicker(loader?: Registerable) {\n registerComponentHelper(loader, AntdDatePicker, {\n name: datePickerComponentName,\n displayName: \"Date/Time Picker\",\n props: {\n value: {\n type: \"string\",\n editOnly: true,\n uncontrolledProp: \"defaultValue\",\n description:\n \"The current date/time as an ISO string, Date object, or dayjs object\",\n hidden: (ps: any) => !!ps.__plasmicFormField,\n },\n disabled: {\n type: \"boolean\",\n defaultValueHint: false,\n },\n autoFocus: {\n type: \"boolean\",\n description: \"Focus when component is rendered\",\n defaultValueHint: false,\n advanced: true,\n },\n onChange: {\n type: \"eventHandler\",\n argTypes: [{ name: \"value\", type: \"string\" }],\n } as any,\n picker: {\n type: \"choice\",\n options: [\"date\", \"week\", \"month\", \"quarter\", \"year\"].map((value) => ({\n value,\n label: capitalize(value),\n })),\n defaultValueHint: \"date\",\n },\n showTime: {\n type: \"boolean\",\n description: \"Enable time selection\",\n },\n bordered: {\n type: \"boolean\",\n advanced: true,\n },\n // TODO - see how it works with plasmic-rich-components\n // format: {\n // advanced: true\n // },\n showNow: {\n type: \"boolean\",\n advanced: true,\n description: 'Whether to show the \"Now\" button',\n defaultValueHint: true,\n hidden: (ps: any) => !ps.showTime,\n },\n showToday: {\n type: \"boolean\",\n advanced: true,\n description: 'Whether to show the \"Today\" button',\n defaultValueHint: true,\n hidden: (ps: any) => ps.showTime,\n },\n // disabledDate: {\n // type: \"function\",\n // advanced: true,\n // description: \"Dates to disable\",\n // },\n // disabledTime: {\n // type: \"function\",\n // advanced: true,\n // description: \"Times to disable\",\n // },\n allowClear: {\n type: \"boolean\",\n advanced: true,\n description: \"Whether to show the clear button\",\n },\n },\n states: {\n value: {\n type: \"writable\",\n valueProp: \"value\",\n onChangeProp: \"onChange\",\n variableType: \"text\",\n },\n },\n importPath: \"@plasmicpkgs/antd5/skinny/registerDatePicker\",\n importName: \"AntdDatePicker\",\n });\n}\n"],"names":["open"],"mappings":"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"}