@plasmicpkgs/plasmic-rich-components 1.0.231 → 1.0.232
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/.tsbuildinfo +1 -1
- package/dist/index.js +16 -8
- package/dist/index.js.map +1 -1
- package/dist/plasmic-rich-components.esm.js +16 -8
- package/dist/plasmic-rich-components.esm.js.map +1 -1
- package/dist/utils.d.ts +4 -4
- package/package.json +3 -3
- package/skinny/{common-prop-types-94b20130.cjs.js → common-prop-types-691f4a06.cjs.js} +3 -3
- package/skinny/{common-prop-types-94b20130.cjs.js.map → common-prop-types-691f4a06.cjs.js.map} +1 -1
- package/skinny/{common-prop-types-82f3a4ed.esm.js → common-prop-types-758ece78.esm.js} +3 -3
- package/skinny/{common-prop-types-82f3a4ed.esm.js.map → common-prop-types-758ece78.esm.js.map} +1 -1
- package/skinny/{field-react-utils-c717ec94.cjs.js → field-react-utils-2bbbadc7.cjs.js} +2 -2
- package/skinny/{field-react-utils-c717ec94.cjs.js.map → field-react-utils-2bbbadc7.cjs.js.map} +1 -1
- package/skinny/{field-react-utils-26fba31e.esm.js → field-react-utils-46bb1f20.esm.js} +2 -2
- package/skinny/{field-react-utils-26fba31e.esm.js.map → field-react-utils-46bb1f20.esm.js.map} +1 -1
- package/skinny/{formatting-6f22c9d6.esm.js → formatting-b434487b.esm.js} +2 -2
- package/skinny/{formatting-6f22c9d6.esm.js.map → formatting-b434487b.esm.js.map} +1 -1
- package/skinny/{formatting-939d0aa3.cjs.js → formatting-c37b4133.cjs.js} +2 -2
- package/skinny/{formatting-939d0aa3.cjs.js.map → formatting-c37b4133.cjs.js.map} +1 -1
- package/skinny/rich-calendar/index.cjs.js +3 -3
- package/skinny/rich-calendar/index.esm.js +3 -3
- package/skinny/rich-details/index.cjs.js +2 -2
- package/skinny/rich-details/index.esm.js +2 -2
- package/skinny/rich-layout/index.cjs.js +1 -1
- package/skinny/rich-layout/index.cjs.js.map +1 -1
- package/skinny/rich-layout/index.esm.js +1 -1
- package/skinny/rich-layout/index.esm.js.map +1 -1
- package/skinny/rich-list/index.cjs.js +4 -4
- package/skinny/rich-list/index.cjs.js.map +1 -1
- package/skinny/rich-list/index.esm.js +4 -4
- package/skinny/rich-list/index.esm.js.map +1 -1
- package/skinny/rich-table/index.cjs.js +4 -4
- package/skinny/rich-table/index.esm.js +4 -4
- package/skinny/{utils-c32bd7ed.esm.js → utils-546b05e4.esm.js} +17 -9
- package/skinny/utils-546b05e4.esm.js.map +1 -0
- package/skinny/{utils-65c486f0.cjs.js → utils-da451c58.cjs.js} +17 -9
- package/skinny/utils-da451c58.cjs.js.map +1 -0
- package/skinny/utils.d.ts +4 -4
- package/skinny/utils-65c486f0.cjs.js.map +0 -1
- package/skinny/utils-c32bd7ed.esm.js.map +0 -1
package/dist/utils.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { default as registerGlobalContext
|
|
1
|
+
import { CodeComponentMeta, default as registerComponent } from "@plasmicapp/host/registerComponent";
|
|
2
|
+
import { GlobalContextMeta, default as registerGlobalContext } from "@plasmicapp/host/registerGlobalContext";
|
|
3
3
|
import { default as registerToken } from "@plasmicapp/host/registerToken";
|
|
4
4
|
import React from "react";
|
|
5
5
|
export type Registerable = {
|
|
@@ -7,9 +7,9 @@ export type Registerable = {
|
|
|
7
7
|
registerGlobalContext: typeof registerGlobalContext;
|
|
8
8
|
registerToken: typeof registerToken;
|
|
9
9
|
};
|
|
10
|
-
export declare function makeRegisterComponent<T extends React.ComponentType<any>>(component: T, meta:
|
|
10
|
+
export declare function makeRegisterComponent<T extends React.ComponentType<any>>(component: T, meta: CodeComponentMeta<React.ComponentProps<T>>): (loader?: Registerable) => void;
|
|
11
11
|
export declare function makeRegisterGlobalContext<T extends React.ComponentType<any>>(component: T, meta: GlobalContextMeta<React.ComponentProps<T>>): (loader?: Registerable) => void;
|
|
12
|
-
export declare function registerComponentHelper<T extends React.ComponentType<any>>(loader: Registerable | undefined, component: T, meta:
|
|
12
|
+
export declare function registerComponentHelper<T extends React.ComponentType<any>>(loader: Registerable | undefined, component: T, meta: CodeComponentMeta<React.ComponentProps<T>>): void;
|
|
13
13
|
type ReactElt = {
|
|
14
14
|
children: ReactElt | ReactElt[];
|
|
15
15
|
props: {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@plasmicpkgs/plasmic-rich-components",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.232",
|
|
4
4
|
"description": "Rich batteries-included general purpose components for business apps, admin panels, etc.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"devDependencies": {
|
|
45
45
|
"@ant-design/icons": "^5.0.1",
|
|
46
46
|
"@ant-design/pro-components": "2.6.4",
|
|
47
|
-
"@plasmicapp/data-sources": "0.1.
|
|
47
|
+
"@plasmicapp/data-sources": "0.1.199",
|
|
48
48
|
"@plasmicapp/host": "1.0.234",
|
|
49
49
|
"@rollup/plugin-commonjs": "^25.0.2",
|
|
50
50
|
"@rollup/plugin-json": "^6.0.0",
|
|
@@ -80,5 +80,5 @@
|
|
|
80
80
|
"fast-stringify": "^2.0.0",
|
|
81
81
|
"lodash": "^4.17.21"
|
|
82
82
|
},
|
|
83
|
-
"gitHead": "
|
|
83
|
+
"gitHead": "bbba4b6636e69a3441c6dbe4cefb860ed30e826f"
|
|
84
84
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var common = require('./common-e1d76791.cjs.js');
|
|
4
|
-
var formatting = require('./formatting-
|
|
5
|
-
var utils = require('./utils-
|
|
4
|
+
var formatting = require('./formatting-c37b4133.cjs.js');
|
|
5
|
+
var utils = require('./utils-da451c58.cjs.js');
|
|
6
6
|
|
|
7
7
|
function roleProp({
|
|
8
8
|
role,
|
|
@@ -136,4 +136,4 @@ exports.dataProp = dataProp;
|
|
|
136
136
|
exports.onRowClickProp = onRowClickProp;
|
|
137
137
|
exports.roleProp = roleProp;
|
|
138
138
|
exports.rowActionsProp = rowActionsProp;
|
|
139
|
-
//# sourceMappingURL=common-prop-types-
|
|
139
|
+
//# sourceMappingURL=common-prop-types-691f4a06.cjs.js.map
|
package/skinny/{common-prop-types-94b20130.cjs.js.map → common-prop-types-691f4a06.cjs.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common-prop-types-
|
|
1
|
+
{"version":3,"file":"common-prop-types-691f4a06.cjs.js","sources":["../src/common-prop-types.tsx"],"sourcesContent":["import { PropType } from \"@plasmicapp/host/registerComponent\";\nimport { capitalize } from \"./common\";\nimport {\n BaseColumnConfig,\n FieldfulProps,\n buildFieldsPropType,\n getFieldSubprops,\n} from \"./field-mappings\";\nimport { maybe } from \"./utils\";\n\nexport function roleProp<P extends FieldfulProps<any>>({\n role,\n singular = false,\n advanced = false,\n displayName,\n}: {\n role: string;\n singular?: boolean;\n advanced?: boolean;\n displayName?: string;\n}): PropType<P> {\n return singular\n ? {\n type: \"object\",\n displayName: displayName || `${capitalize(role)} field`,\n advanced,\n hidden: (ps) => !ps.data,\n nameFunc: (item) =>\n maybe(item, (i) =>\n i.isHidden ? \"Hidden\" : i.fieldId || \"Custom value\"\n ),\n fields: getFieldSubprops({\n canChangeField: true,\n noTitle: true,\n }),\n defaultValueHint: (_props, contextData) =>\n (contextData?.minimalFullLengthFields ?? []).find(\n (f) => f.role === role\n ),\n }\n : buildFieldsPropType<BaseColumnConfig, P>({\n displayName: displayName || `${capitalize(role)} fields`,\n advanced,\n noTitle: true,\n canChangeField: true,\n minimalValue: (_props, contextData) =>\n (contextData?.minimalFullLengthFields ?? []).filter(\n (f) => f.role === role\n ),\n });\n}\n\nexport function dataProp<T>(): PropType<T> {\n return {\n type: \"dataSourceOpData\" as any,\n description: \"The data to display\",\n };\n}\n\nexport function commonProps<T>(): Record<string, PropType<T>> {\n return {\n pagination: {\n type: \"boolean\",\n advanced: true,\n defaultValueHint: true,\n },\n\n pageSize: {\n type: \"number\",\n defaultValueHint: 10,\n advanced: true,\n },\n\n hideSearch: {\n type: \"boolean\",\n description: \"Hides the search toolbar\",\n advanced: true,\n },\n };\n}\n\nexport function rowActionsProp<T>(): PropType<T> {\n return {\n type: \"array\",\n displayName: \"Row actions\",\n advanced: true,\n itemType: {\n type: \"object\",\n nameFunc: (item) => item.label,\n fields: {\n type: {\n type: \"choice\",\n options: [\"item\", \"menu\"],\n defaultValue: \"item\",\n },\n label: {\n type: \"string\",\n displayName: \"Action label\",\n },\n children: {\n type: \"array\",\n displayName: \"Menu items\",\n itemType: {\n type: \"object\",\n fields: {\n label: {\n type: \"string\",\n displayName: \"Action label\",\n },\n onClick: {\n type: \"eventHandler\",\n argTypes: [\n { name: \"rowKey\", type: \"string\" },\n { name: \"row\", type: \"object\" },\n ],\n },\n },\n },\n hidden: (_ps, _ctx, { item }) => item.type !== \"menu\",\n },\n onClick: {\n type: \"eventHandler\",\n displayName: \"Action\",\n argTypes: [\n { name: \"rowKey\", type: \"string\" },\n { name: \"row\", type: \"object\" },\n ],\n hidden: (_ps, _ctx, { item }) => item.type !== \"item\",\n },\n },\n },\n };\n}\n\nexport function onRowClickProp<T>(): PropType<T> {\n return {\n type: \"eventHandler\",\n displayName: \"On row clicked\",\n argTypes: [\n { name: \"rowKey\", type: \"string\" },\n { name: \"row\", type: \"object\" },\n { name: \"event\", type: \"object\" },\n ],\n };\n}\n"],"names":["capitalize","maybe","getFieldSubprops","buildFieldsPropType"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { c as capitalize } from './common-8cca2977.esm.js';
|
|
2
|
-
import { c as getFieldSubprops, b as buildFieldsPropType } from './formatting-
|
|
3
|
-
import { m as maybe } from './utils-
|
|
2
|
+
import { c as getFieldSubprops, b as buildFieldsPropType } from './formatting-b434487b.esm.js';
|
|
3
|
+
import { m as maybe } from './utils-546b05e4.esm.js';
|
|
4
4
|
|
|
5
5
|
function roleProp({
|
|
6
6
|
role,
|
|
@@ -130,4 +130,4 @@ function onRowClickProp() {
|
|
|
130
130
|
}
|
|
131
131
|
|
|
132
132
|
export { rowActionsProp as a, commonProps as c, dataProp as d, onRowClickProp as o, roleProp as r };
|
|
133
|
-
//# sourceMappingURL=common-prop-types-
|
|
133
|
+
//# sourceMappingURL=common-prop-types-758ece78.esm.js.map
|
package/skinny/{common-prop-types-82f3a4ed.esm.js.map → common-prop-types-758ece78.esm.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"common-prop-types-
|
|
1
|
+
{"version":3,"file":"common-prop-types-758ece78.esm.js","sources":["../src/common-prop-types.tsx"],"sourcesContent":["import { PropType } from \"@plasmicapp/host/registerComponent\";\nimport { capitalize } from \"./common\";\nimport {\n BaseColumnConfig,\n FieldfulProps,\n buildFieldsPropType,\n getFieldSubprops,\n} from \"./field-mappings\";\nimport { maybe } from \"./utils\";\n\nexport function roleProp<P extends FieldfulProps<any>>({\n role,\n singular = false,\n advanced = false,\n displayName,\n}: {\n role: string;\n singular?: boolean;\n advanced?: boolean;\n displayName?: string;\n}): PropType<P> {\n return singular\n ? {\n type: \"object\",\n displayName: displayName || `${capitalize(role)} field`,\n advanced,\n hidden: (ps) => !ps.data,\n nameFunc: (item) =>\n maybe(item, (i) =>\n i.isHidden ? \"Hidden\" : i.fieldId || \"Custom value\"\n ),\n fields: getFieldSubprops({\n canChangeField: true,\n noTitle: true,\n }),\n defaultValueHint: (_props, contextData) =>\n (contextData?.minimalFullLengthFields ?? []).find(\n (f) => f.role === role\n ),\n }\n : buildFieldsPropType<BaseColumnConfig, P>({\n displayName: displayName || `${capitalize(role)} fields`,\n advanced,\n noTitle: true,\n canChangeField: true,\n minimalValue: (_props, contextData) =>\n (contextData?.minimalFullLengthFields ?? []).filter(\n (f) => f.role === role\n ),\n });\n}\n\nexport function dataProp<T>(): PropType<T> {\n return {\n type: \"dataSourceOpData\" as any,\n description: \"The data to display\",\n };\n}\n\nexport function commonProps<T>(): Record<string, PropType<T>> {\n return {\n pagination: {\n type: \"boolean\",\n advanced: true,\n defaultValueHint: true,\n },\n\n pageSize: {\n type: \"number\",\n defaultValueHint: 10,\n advanced: true,\n },\n\n hideSearch: {\n type: \"boolean\",\n description: \"Hides the search toolbar\",\n advanced: true,\n },\n };\n}\n\nexport function rowActionsProp<T>(): PropType<T> {\n return {\n type: \"array\",\n displayName: \"Row actions\",\n advanced: true,\n itemType: {\n type: \"object\",\n nameFunc: (item) => item.label,\n fields: {\n type: {\n type: \"choice\",\n options: [\"item\", \"menu\"],\n defaultValue: \"item\",\n },\n label: {\n type: \"string\",\n displayName: \"Action label\",\n },\n children: {\n type: \"array\",\n displayName: \"Menu items\",\n itemType: {\n type: \"object\",\n fields: {\n label: {\n type: \"string\",\n displayName: \"Action label\",\n },\n onClick: {\n type: \"eventHandler\",\n argTypes: [\n { name: \"rowKey\", type: \"string\" },\n { name: \"row\", type: \"object\" },\n ],\n },\n },\n },\n hidden: (_ps, _ctx, { item }) => item.type !== \"menu\",\n },\n onClick: {\n type: \"eventHandler\",\n displayName: \"Action\",\n argTypes: [\n { name: \"rowKey\", type: \"string\" },\n { name: \"row\", type: \"object\" },\n ],\n hidden: (_ps, _ctx, { item }) => item.type !== \"item\",\n },\n },\n },\n };\n}\n\nexport function onRowClickProp<T>(): PropType<T> {\n return {\n type: \"eventHandler\",\n displayName: \"On row clicked\",\n argTypes: [\n { name: \"rowKey\", type: \"string\" },\n { name: \"row\", type: \"object\" },\n { name: \"event\", type: \"object\" },\n ],\n };\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
var antd = require('antd');
|
|
4
4
|
var fastStringify = require('fast-stringify');
|
|
5
5
|
var React = require('react');
|
|
6
|
-
var utils = require('./utils-
|
|
6
|
+
var utils = require('./utils-da451c58.cjs.js');
|
|
7
7
|
|
|
8
8
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
9
|
|
|
@@ -150,4 +150,4 @@ exports.deriveRowKey = deriveRowKey;
|
|
|
150
150
|
exports.renderActions = renderActions;
|
|
151
151
|
exports.tagDataArray = tagDataArray;
|
|
152
152
|
exports.useSortedFilteredData = useSortedFilteredData;
|
|
153
|
-
//# sourceMappingURL=field-react-utils-
|
|
153
|
+
//# sourceMappingURL=field-react-utils-2bbbadc7.cjs.js.map
|
package/skinny/{field-react-utils-c717ec94.cjs.js.map → field-react-utils-2bbbadc7.cjs.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"field-react-utils-
|
|
1
|
+
{"version":3,"file":"field-react-utils-2bbbadc7.cjs.js","sources":["../src/field-react-utils.tsx"],"sourcesContent":["import { NormalizedData, QueryResult } from \"@plasmicapp/data-sources\";\nimport { Dropdown } from \"antd\";\nimport type { GetRowKey, SorterResult } from \"antd/es/table/interface\";\nimport fastStringify from \"fast-stringify\";\nimport React, { Key, useState } from \"react\";\nimport { BaseColumnConfig } from \"./field-mappings\";\nimport { ensure } from \"./utils\";\n\nexport function useSortedFilteredData(\n data: NormalizedData | undefined,\n columns: BaseColumnConfig[]\n) {\n const [search, setSearch] = useState(\"\");\n const [sortState, setSortState] = useState<\n undefined | { sorter: SorterResult<Record<string, any>> }\n >(undefined);\n const finalData = React.useMemo(() => {\n const filtered = data?.data?.filter((row) =>\n fastStringify(Object.values(row))\n .toLowerCase()\n .includes(search.toLowerCase())\n );\n const sorted = sortState?.sorter.column\n ? // We use .sort() rather than sortBy to use localeCompare\n (() => {\n const cconfig = columns.find(\n (cc) => cc.key === sortState?.sorter.column?.key\n )!;\n const expr = cconfig.expr ?? ((x) => x);\n return (filtered ?? []).sort((aa, bb) => {\n const a =\n expr(aa, cconfig.fieldId ? aa?.[cconfig.fieldId] : null) ??\n null,\n b =\n expr(bb, cconfig.fieldId ? bb?.[cconfig.fieldId] : null) ??\n null;\n // Default nil to '' here because A < null < z which is weird.\n return typeof a === \"string\"\n ? a.localeCompare(b ?? \"\")\n : typeof b === \"string\"\n ? -b.localeCompare(a ?? \"\")\n : a - b;\n });\n })()\n : filtered;\n const reversed =\n sortState?.sorter.order === \"descend\" ? sorted?.reverse() : sorted;\n return reversed;\n }, [data, columns, sortState, search]);\n\n return {\n finalData,\n search,\n setSearch,\n setSortState,\n };\n}\n\ninterface RowActionItem {\n type: \"item\";\n label: string;\n onClick: (rowKey: string, row: any) => void;\n}\n\ninterface RowActionMenu {\n type: \"menu\";\n label: string;\n children?: RowActionItem[];\n}\n\nexport type RowAction = RowActionItem | RowActionMenu;\n\nexport function tagDataArray(xs: object[]) {\n return xs.map((x: object, i) => ({ ...x, __tag: i + 1 }));\n}\n\nexport function getTag(x: unknown) {\n return (x as any).__tag;\n}\n\n/**\n * Don't want to simply return undefined, we prefer always having *some* row key so that users can always (say) click on things without needing to explicitly set a row key.\n */\nexport function deriveRowKey(\n _data: QueryResult | undefined,\n rowKey: string | GetRowKey<Record<any, any>> | undefined\n) {\n if (rowKey) {\n return rowKey;\n }\n // Use the index by default.\n return (x: unknown) => {\n return ensure(getTag(x));\n };\n}\n\nexport function deriveKeyOfRow(\n row: any,\n rowKey: string | GetRowKey<any> | undefined\n) {\n if (typeof rowKey === \"function\") {\n return rowKey(row);\n } else if (typeof rowKey === \"string\") {\n return row[rowKey];\n } else {\n return undefined;\n }\n}\n\nexport function renderActions(\n rowActions: RowAction[],\n row: any,\n data: NormalizedData | undefined,\n rowKey: string | ((record: any, index?: number) => Key) | undefined\n) {\n return rowActions.map((_action) => {\n if (_action.type === \"item\") {\n return (\n <a\n key={_action.label}\n style={{\n whiteSpace: \"nowrap\",\n }}\n onClick={() =>\n _action.onClick?.(\n deriveKeyOfRow(row, deriveRowKey(data, rowKey)),\n row\n )\n }\n >\n {_action.label}\n </a>\n );\n } else {\n return (\n <Dropdown\n key={_action.label}\n menu={{\n items: (_action.children ?? []).map((child) => ({\n key: child.label,\n label: child.label,\n onClick: () =>\n child.onClick?.(\n deriveKeyOfRow(row, deriveRowKey(data, rowKey)),\n row\n ),\n })),\n }}\n >\n <a\n href={\"javascript: void 0\"}\n style={{\n whiteSpace: \"nowrap\",\n }}\n >\n {_action.label}\n </a>\n </Dropdown>\n );\n }\n });\n}\n"],"names":["useState","React","fastStringify","_a","ensure","Dropdown"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Dropdown } from 'antd';
|
|
2
2
|
import fastStringify from 'fast-stringify';
|
|
3
3
|
import React, { useState } from 'react';
|
|
4
|
-
import { e as ensure } from './utils-
|
|
4
|
+
import { e as ensure } from './utils-546b05e4.esm.js';
|
|
5
5
|
|
|
6
6
|
var __defProp = Object.defineProperty;
|
|
7
7
|
var __defProps = Object.defineProperties;
|
|
@@ -139,4 +139,4 @@ function renderActions(rowActions, row, data, rowKey) {
|
|
|
139
139
|
}
|
|
140
140
|
|
|
141
141
|
export { deriveRowKey as a, deriveKeyOfRow as d, renderActions as r, tagDataArray as t, useSortedFilteredData as u };
|
|
142
|
-
//# sourceMappingURL=field-react-utils-
|
|
142
|
+
//# sourceMappingURL=field-react-utils-46bb1f20.esm.js.map
|
package/skinny/{field-react-utils-26fba31e.esm.js.map → field-react-utils-46bb1f20.esm.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"field-react-utils-
|
|
1
|
+
{"version":3,"file":"field-react-utils-46bb1f20.esm.js","sources":["../src/field-react-utils.tsx"],"sourcesContent":["import { NormalizedData, QueryResult } from \"@plasmicapp/data-sources\";\nimport { Dropdown } from \"antd\";\nimport type { GetRowKey, SorterResult } from \"antd/es/table/interface\";\nimport fastStringify from \"fast-stringify\";\nimport React, { Key, useState } from \"react\";\nimport { BaseColumnConfig } from \"./field-mappings\";\nimport { ensure } from \"./utils\";\n\nexport function useSortedFilteredData(\n data: NormalizedData | undefined,\n columns: BaseColumnConfig[]\n) {\n const [search, setSearch] = useState(\"\");\n const [sortState, setSortState] = useState<\n undefined | { sorter: SorterResult<Record<string, any>> }\n >(undefined);\n const finalData = React.useMemo(() => {\n const filtered = data?.data?.filter((row) =>\n fastStringify(Object.values(row))\n .toLowerCase()\n .includes(search.toLowerCase())\n );\n const sorted = sortState?.sorter.column\n ? // We use .sort() rather than sortBy to use localeCompare\n (() => {\n const cconfig = columns.find(\n (cc) => cc.key === sortState?.sorter.column?.key\n )!;\n const expr = cconfig.expr ?? ((x) => x);\n return (filtered ?? []).sort((aa, bb) => {\n const a =\n expr(aa, cconfig.fieldId ? aa?.[cconfig.fieldId] : null) ??\n null,\n b =\n expr(bb, cconfig.fieldId ? bb?.[cconfig.fieldId] : null) ??\n null;\n // Default nil to '' here because A < null < z which is weird.\n return typeof a === \"string\"\n ? a.localeCompare(b ?? \"\")\n : typeof b === \"string\"\n ? -b.localeCompare(a ?? \"\")\n : a - b;\n });\n })()\n : filtered;\n const reversed =\n sortState?.sorter.order === \"descend\" ? sorted?.reverse() : sorted;\n return reversed;\n }, [data, columns, sortState, search]);\n\n return {\n finalData,\n search,\n setSearch,\n setSortState,\n };\n}\n\ninterface RowActionItem {\n type: \"item\";\n label: string;\n onClick: (rowKey: string, row: any) => void;\n}\n\ninterface RowActionMenu {\n type: \"menu\";\n label: string;\n children?: RowActionItem[];\n}\n\nexport type RowAction = RowActionItem | RowActionMenu;\n\nexport function tagDataArray(xs: object[]) {\n return xs.map((x: object, i) => ({ ...x, __tag: i + 1 }));\n}\n\nexport function getTag(x: unknown) {\n return (x as any).__tag;\n}\n\n/**\n * Don't want to simply return undefined, we prefer always having *some* row key so that users can always (say) click on things without needing to explicitly set a row key.\n */\nexport function deriveRowKey(\n _data: QueryResult | undefined,\n rowKey: string | GetRowKey<Record<any, any>> | undefined\n) {\n if (rowKey) {\n return rowKey;\n }\n // Use the index by default.\n return (x: unknown) => {\n return ensure(getTag(x));\n };\n}\n\nexport function deriveKeyOfRow(\n row: any,\n rowKey: string | GetRowKey<any> | undefined\n) {\n if (typeof rowKey === \"function\") {\n return rowKey(row);\n } else if (typeof rowKey === \"string\") {\n return row[rowKey];\n } else {\n return undefined;\n }\n}\n\nexport function renderActions(\n rowActions: RowAction[],\n row: any,\n data: NormalizedData | undefined,\n rowKey: string | ((record: any, index?: number) => Key) | undefined\n) {\n return rowActions.map((_action) => {\n if (_action.type === \"item\") {\n return (\n <a\n key={_action.label}\n style={{\n whiteSpace: \"nowrap\",\n }}\n onClick={() =>\n _action.onClick?.(\n deriveKeyOfRow(row, deriveRowKey(data, rowKey)),\n row\n )\n }\n >\n {_action.label}\n </a>\n );\n } else {\n return (\n <Dropdown\n key={_action.label}\n menu={{\n items: (_action.children ?? []).map((child) => ({\n key: child.label,\n label: child.label,\n onClick: () =>\n child.onClick?.(\n deriveKeyOfRow(row, deriveRowKey(data, rowKey)),\n row\n ),\n })),\n }}\n >\n <a\n href={\"javascript: void 0\"}\n style={{\n whiteSpace: \"nowrap\",\n }}\n >\n {_action.label}\n </a>\n </Dropdown>\n );\n }\n });\n}\n"],"names":["_a"],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { parseDate } from '@plasmicpkgs/luxon-parser';
|
|
|
2
2
|
import { Checkbox, Switch } from 'antd';
|
|
3
3
|
import React from 'react';
|
|
4
4
|
import 'lodash/get';
|
|
5
|
-
import { w as withoutFalsey, h as isOneOf, m as maybe } from './utils-
|
|
5
|
+
import { w as withoutFalsey, h as isOneOf, m as maybe } from './utils-546b05e4.esm.js';
|
|
6
6
|
|
|
7
7
|
var __defProp$1 = Object.defineProperty;
|
|
8
8
|
var __defProps$1 = Object.defineProperties;
|
|
@@ -630,4 +630,4 @@ function asString(value) {
|
|
|
630
630
|
}
|
|
631
631
|
|
|
632
632
|
export { multiRenderValue as a, buildFieldsPropType as b, getFieldSubprops as c, deriveValueType as d, getFieldAggregateValue as g, maybeRenderString as m, renderValue as r };
|
|
633
|
-
//# sourceMappingURL=formatting-
|
|
633
|
+
//# sourceMappingURL=formatting-b434487b.esm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formatting-6f22c9d6.esm.js","sources":["../src/field-mappings.tsx","../src/formatting.tsx"],"sourcesContent":["import { QueryResult, TableSchema } from \"@plasmicapp/data-sources\";\nimport { ComponentContextConfig } from \"@plasmicapp/host\";\nimport { PropType } from \"@plasmicapp/host/registerComponent\";\nimport deepGet from \"lodash/get\";\nimport { isOneOf, withoutFalsey } from \"./utils\";\n\nexport interface AutoSettings {\n dataType: \"auto\";\n}\n\ninterface _SharedNumberSettings {\n notation?: \"standard\" | \"scientific\" | \"engineering\" | \"compact\";\n signDisplay?: \"auto\" | \"always\" | \"exceptZero\";\n maximumFractionDigits?: number;\n minimumFractionDigits?: number;\n locale?: string;\n}\nexport interface DecimalSettings extends _SharedNumberSettings {\n dataType: \"number\";\n}\nexport interface PercentSettings extends _SharedNumberSettings {\n dataType: \"percent\";\n}\nexport interface CurrencySettings extends _SharedNumberSettings {\n dataType: \"currency\";\n currency?: string;\n currencyDisplay?: \"symbol\" | \"narrowSymbol\" | \"code\" | \"name\";\n}\nexport const DEFAULT_CURRENCY_SETTINGS: CurrencySettings = {\n dataType: \"currency\",\n currency: \"USD\",\n currencyDisplay: \"narrowSymbol\",\n};\n\nexport type NumberSettings =\n | DecimalSettings\n | PercentSettings\n | CurrencySettings;\nexport const NUMBER_TYPES = [\"number\", \"percent\", \"currency\"] as const;\n\nexport interface DateTimeSettings {\n dataType: \"datetime\";\n locale?: string;\n dateStyle?: \"none\" | \"full\" | \"long\" | \"medium\" | \"short\";\n timeStyle?: \"none\" | \"full\" | \"long\" | \"medium\" | \"short\";\n hour12?: boolean;\n timeZone?: string;\n}\nexport const DEFAULT_DATETIME_SETTINGS: DateTimeSettings = {\n dataType: \"datetime\",\n locale: \"en-US\",\n dateStyle: \"short\",\n timeStyle: \"short\",\n hour12: true,\n};\n\nexport interface RelativeDateTimeSettings {\n dataType: \"relative-datetime\";\n locale?: string;\n numeric?: \"always\" | \"auto\";\n style?: \"long\" | \"short\" | \"narrow\";\n unit?: \"year\" | \"month\" | \"week\" | \"day\" | \"hour\" | \"minute\" | \"second\";\n}\nexport const DEFAULT_RELATIVE_DATETIME_SETTINGS: RelativeDateTimeSettings = {\n dataType: \"relative-datetime\",\n locale: \"en-US\",\n numeric: \"always\",\n style: \"long\",\n unit: \"day\",\n};\nexport const DATETIME_TYPES = [\"datetime\", \"relative-datetime\"] as const;\n\nexport interface BooleanSettings {\n dataType: \"boolean\";\n showAs?: \"text\" | \"checkbox\" | \"switch\";\n}\nexport const DEFAULT_BOOLEAN_SETTINGS: BooleanSettings = {\n dataType: \"boolean\",\n showAs: \"checkbox\",\n};\n\nexport interface StringSettings {\n dataType: \"string\";\n}\n\nexport type RowFunc<Result> = (row: Record<string, unknown>) => Result;\nexport type CellFunc<Result> = (\n row: Record<string, unknown>,\n value: unknown\n) => Result;\n\n/**\n * Exprs are for things that can must re-evaluate from row to row.\n *\n * Literal values are for things that are column-level. (But in Plasmic Studio, as with all props, you can still use a dynamic value.)\n */\n\ninterface _BaseColumnConfig {\n key: string;\n fieldId?: string;\n title?: string;\n isHidden: boolean;\n expr?: CellFunc<any>;\n}\n\nexport type BaseColumnConfig = _BaseColumnConfig &\n (\n | AutoSettings\n | NumberSettings\n | StringSettings\n | BooleanSettings\n | DateTimeSettings\n | RelativeDateTimeSettings\n );\n\nexport function deriveValueType(cconfig: BaseColumnConfig) {\n return cconfig.dataType === \"auto\"\n ? undefined\n : cconfig.dataType === \"string\"\n ? \"text\"\n : cconfig.dataType === \"number\"\n ? \"digit\"\n : cconfig.dataType === \"boolean\"\n ? \"switch\"\n : undefined;\n}\n\nexport interface ControlContextData<ColumnConfig extends BaseColumnConfig> {\n data: unknown[];\n schema?: TableSchema;\n mergedFields: ColumnConfig[];\n minimalFullLengthFields: Partial<ColumnConfig>[];\n}\n\nexport interface FieldfulProps<ColumnConfig extends BaseColumnConfig> {\n className?: string;\n data?: QueryResult;\n fields?: Partial<ColumnConfig>[];\n setControlContextData?: (ctx: ControlContextData<ColumnConfig>) => void;\n}\n\n// Hacky \"unique\" string values\nexport const NoneField = \"||NoneField||\";\nexport const CustomField = \"\";\n\ninterface FieldSubpropsOpts<ColumnConfig extends BaseColumnConfig> {\n fieldTypes?: Record<string, PropType<any>>;\n canChangeField?: boolean;\n canPickNoneField?: boolean;\n noTitle?: boolean;\n noDataType?: boolean;\n hiddenFieldId?: (\n ps: Record<string, unknown>,\n ctx: ControlContextData<ColumnConfig>,\n extras: { path: (string | number)[] }\n ) => boolean;\n}\n\nexport function getFieldSubprops<ColumnConfig extends BaseColumnConfig>(\n opts: FieldSubpropsOpts<ColumnConfig>\n): Record<string, PropType<any>> {\n return {\n key: {\n type: \"string\",\n hidden: () => true,\n },\n fieldId: {\n type: \"choice\",\n displayName: \"Field name\",\n readOnly: !opts.canChangeField,\n options: (_props, ctx: ControlContextData<BaseColumnConfig>) =>\n withoutFalsey([\n opts.canPickNoneField && { value: NoneField, label: \"None\" },\n ...(ctx?.schema?.fields ?? []).map((f) => ({\n value: f.id,\n label: f.label ?? f.id,\n })),\n { value: CustomField, label: \"Custom value\" },\n ]),\n hidden: (\n ps,\n ctx: ControlContextData<ColumnConfig>,\n { path: _controlPath }\n ) => {\n // If this is change-able.\n if (opts.canChangeField) {\n return false;\n }\n return true;\n // If there's a user-set fieldId\n if (deepGet(ps, _controlPath)) {\n return false;\n }\n return opts.hiddenFieldId?.(ps, ctx, { path: _controlPath }) ?? true;\n },\n },\n title: {\n type: \"string\",\n displayName: \"Title\",\n defaultValueHint: getDefaultValueHint(\"title\"),\n hidden: () => !!opts.noTitle,\n },\n expr: {\n ...rowDataType(\"Custom value\"),\n hidden: (\n _ps,\n _ctx: ControlContextData<BaseColumnConfig>,\n { item, path: _controlPath }\n ) => {\n return false;\n // HIDE if this is unset.\n if (!item) {\n return true;\n }\n // SHOW if this is change-able *and* user chose \"Custom\".\n if (opts.canChangeField) {\n return false;\n }\n return true;\n },\n },\n isHidden: {\n type: \"boolean\",\n displayName: \"Is hidden\",\n defaultValueHint: getDefaultValueHint(\"isHidden\"),\n },\n ...(!opts.noDataType\n ? {\n dataType: {\n type: \"choice\",\n displayName: \"Data type\",\n options: [\n {\n value: \"auto\",\n label: \"Auto\",\n },\n {\n value: \"number\",\n label: \"Number\",\n },\n {\n value: \"percent\",\n label: \"Percentage\",\n },\n {\n value: \"currency\",\n label: \"Currency\",\n },\n {\n value: \"string\",\n label: \"String\",\n },\n {\n value: \"boolean\",\n label: \"Boolean\",\n },\n {\n value: \"datetime\",\n label: \"Date / Time\",\n },\n {\n value: \"relative-datetime\",\n label: \"Date / Time relative to now\",\n },\n ],\n defaultValueHint: getDefaultValueHint(\"dataType\"),\n },\n currency: {\n displayName: \"Currency\",\n description: \"Must be a valid currency code\",\n type: \"string\",\n defaultValueHint: \"USD\",\n hidden: (_ps, _ctx, { item }) => item.dataType !== \"currency\",\n },\n locale: {\n displayName: \"Locale\",\n description: \"Must be a valid locale code\",\n type: \"string\",\n defaultValueHint: \"en-US\",\n hidden: (_ps, _ctx, { item }) =>\n !isOneOf(item.dataType, NUMBER_TYPES) &&\n !isOneOf(item.dataType, DATETIME_TYPES),\n },\n notation: {\n displayName: \"Notation\",\n type: \"choice\",\n options: [\n {\n value: \"standard\",\n label: \"Standard\",\n },\n {\n value: \"scientific\",\n label: \"Scientific notation (like 1E3)\",\n },\n {\n value: \"compact\",\n label: \"Compact (like 10K)\",\n },\n ],\n defaultValueHint: \"standard\",\n hidden: (_ps, _ctx, { item }) =>\n !isOneOf(item.dataType, NUMBER_TYPES),\n },\n signDisplay: {\n type: \"choice\",\n displayName: \"Number sign\",\n options: [\n {\n value: \"auto\",\n label: \"Only for negative numbers (10, -10)\",\n },\n {\n value: \"exceptZero\",\n label: \"Positive or negative (+10, -10)\",\n },\n ],\n defaultValueHint: \"auto\",\n hidden: (_ps, _ctx, { item }) =>\n !isOneOf(item.dataType, NUMBER_TYPES),\n },\n maximumFractionDigits: {\n type: \"number\",\n displayName: \"Max decimal places\",\n defaultValueHint: 3,\n min: 0,\n max: 20,\n hidden: (_ps, _ctx, { item }) =>\n !isOneOf(item.dataType, NUMBER_TYPES),\n },\n minimumFractionDigits: {\n type: \"number\",\n displayName: \"Min decimal places\",\n defaultValueHint: 0,\n min: 0,\n max: 20,\n hidden: (_ps, _ctx, { item }) =>\n !isOneOf(item.dataType, NUMBER_TYPES),\n },\n showAs: {\n type: \"choice\",\n options: [\n {\n value: \"checkbox\",\n label: \"Checkboxes\",\n },\n {\n value: \"switch\",\n label: \"Toggle switches\",\n },\n {\n value: \"text\",\n label: \"Text\",\n },\n ],\n displayName: \"Show as\",\n defaultValueHint: \"checkbox\",\n hidden: (_ps, _ctx, { item }) => item.dataType !== \"boolean\",\n },\n dateStyle: {\n displayName: \"Date style\",\n type: \"choice\",\n options: [\n {\n value: \"none\",\n label: \"None (don't display date)\",\n },\n {\n value: \"short\",\n label: \"Short (like 12/25/2023)\",\n },\n {\n value: \"medium\",\n label: \"Medium (like Dec 25, 2023)\",\n },\n {\n value: \"long\",\n label: \"Long (like December 25, 2023)\",\n },\n {\n value: \"full\",\n label: \"Full (like Monday, December 25, 2023)\",\n },\n ],\n defaultValueHint: DEFAULT_DATETIME_SETTINGS.dateStyle,\n hidden: (_ps, _ctx, { item }) => item.dataType !== \"datetime\",\n },\n timeStyle: {\n displayName: \"Time style\",\n type: \"choice\",\n options: [\n {\n value: \"none\",\n label: \"None (don't display time)\",\n },\n {\n value: \"short\",\n label: \"Short (like 4:00 PM)\",\n },\n {\n value: \"medium\",\n label: \"Medium (like 4:00:00 PM)\",\n },\n {\n value: \"long\",\n label: \"Long (like 4:00:00 PM PST)\",\n },\n {\n value: \"full\",\n label: \"Full (like 4:00:00 PM Pacific Standard Time)\",\n },\n ],\n defaultValueHint: DEFAULT_DATETIME_SETTINGS.timeStyle,\n hidden: (_ps, _ctx, { item }) => item.dataType !== \"datetime\",\n },\n hour12: {\n displayName: \"Use AM/PM?\",\n description: \"Whether to use AM/PM or 24-hour clock\",\n type: \"boolean\",\n defaultValueHint: DEFAULT_DATETIME_SETTINGS.hour12,\n hidden: (_ps, _ctx, { item }) => item.dataType !== \"datetime\",\n },\n numeric: {\n type: \"choice\",\n displayName: \"Use numbers?\",\n options: [\n { value: \"always\", label: \"Always use numbers\" },\n {\n value: \"auto\",\n label: \"Use words like 'Yesterday' or 'Tomorrow'\",\n },\n ],\n defaultValueHint: DEFAULT_RELATIVE_DATETIME_SETTINGS.numeric,\n hidden: (_ps, _ctx, { item }) =>\n item.dataType !== \"relative-datetime\",\n },\n unit: {\n type: \"choice\",\n displayName: \"Time unit\",\n options: [\n {\n value: \"second\",\n label: \"Seconds\",\n },\n {\n value: \"minute\",\n label: \"Minutes\",\n },\n {\n value: \"hour\",\n label: \"Hours\",\n },\n {\n value: \"day\",\n label: \"Days\",\n },\n {\n value: \"week\",\n label: \"Weeks\",\n },\n {\n value: \"month\",\n label: \"Months\",\n },\n {\n value: \"year\",\n label: \"Years\",\n },\n ],\n defaultValueHint: DEFAULT_RELATIVE_DATETIME_SETTINGS.unit,\n hidden: (_ps, _ctx, { item }) =>\n item.dataType !== \"relative-datetime\",\n },\n }\n : {}),\n ...opts.fieldTypes,\n };\n}\n\nfunction getDefaultValueHint<ColumnConfig extends BaseColumnConfig>(\n field: keyof ColumnConfig\n) {\n return (\n _props: any,\n contextData: ControlContextData<ColumnConfig> | null,\n { item }: any\n ): any => {\n if (item?.fieldId) {\n const fieldSetting = contextData?.mergedFields.find(\n (f) => f.fieldId === item.fieldId\n );\n return fieldSetting?.[field];\n }\n return undefined;\n };\n}\n\nconst rowDataType = (displayName: string, control?: any) =>\n ({\n type: \"function\" as any,\n displayName,\n control,\n argNames: [\"currentItem\", \"currentValue\"],\n argValues: (_props: any, ctx: any, { item }: any) => {\n const row = ctx?.data?.[0];\n const cell = item.fieldId ? row?.[item.fieldId] : undefined;\n return [row, cell];\n },\n } as any);\n\nexport function buildFieldsPropType<\n ColumnConfig extends BaseColumnConfig,\n Props extends FieldfulProps<ColumnConfig>\n>({\n advanced,\n displayName,\n minimalValue = (_props, contextData) => contextData?.minimalFullLengthFields,\n ...opts\n}: {\n advanced?: boolean;\n displayName?: string;\n minimalValue?: ComponentContextConfig<Props, any>;\n} & FieldSubpropsOpts<ColumnConfig>): PropType<Props> {\n return {\n type: \"array\",\n advanced,\n displayName,\n hidden: (ps) => !ps.data,\n unstable__keyFunc: (x) => x.key,\n unstable__minimalValue: minimalValue,\n unstable__canDelete: (_ps, _props, ctx, { item }) => {\n if (opts.canChangeField) {\n return true;\n }\n if (!ctx?.schema) {\n // still loading...\n return false;\n }\n if (\n item.fieldId &&\n ctx.schema.fields.some((f) => f.id === item.fieldId)\n ) {\n return false;\n }\n return true;\n },\n itemType: {\n type: \"object\",\n nameFunc: (_item: any) => {\n // Prefer to show the field ID when available, since there's no other indication what field you're edtiing if you relabeled it.\n return _item.fieldId || _item.title || \"Custom value\";\n },\n fields: getFieldSubprops(opts),\n },\n };\n}\n","import { parseDate } from \"@plasmicpkgs/luxon-parser\";\nimport { Checkbox, Switch } from \"antd\";\nimport React from \"react\";\nimport {\n BaseColumnConfig,\n BooleanSettings,\n DateTimeSettings,\n DATETIME_TYPES,\n DEFAULT_BOOLEAN_SETTINGS,\n DEFAULT_CURRENCY_SETTINGS,\n DEFAULT_DATETIME_SETTINGS,\n DEFAULT_RELATIVE_DATETIME_SETTINGS,\n NumberSettings,\n NUMBER_TYPES,\n RelativeDateTimeSettings,\n} from \"./field-mappings\";\nimport { isOneOf, maybe } from \"./utils\";\n\nexport function maybeRenderValue(\n record: any,\n cconfig: BaseColumnConfig | undefined\n) {\n return cconfig ? renderValue(record, cconfig) : undefined;\n}\n\nexport function multiRenderValue(\n record: any,\n cconfigs: BaseColumnConfig[] | undefined\n) {\n return cconfigs\n ?.flatMap((cc) =>\n cc.isHidden ? [] : [` • `, <>{renderValue(record, cc)}</>]\n )\n .slice(1);\n}\n\nexport function maybeRenderString(\n record: any,\n cconfig: BaseColumnConfig | undefined\n) {\n return cconfig && !cconfig.isHidden\n ? maybe(getFieldValue(record, cconfig), asString)\n : undefined;\n}\n\nfunction getFieldValue(record: any, cconfig: BaseColumnConfig) {\n let value = cconfig.fieldId ? record[cconfig.fieldId] : undefined;\n\n if (cconfig.expr) {\n value = cconfig.expr(record, value);\n }\n\n return value;\n}\n\nexport function getFieldAggregateValue(\n record: any,\n cconfigs: BaseColumnConfig[] | undefined,\n separator = \", \"\n) {\n if (!cconfigs?.length) return undefined;\n\n return cconfigs?.length\n ? cconfigs.map((item) => getFieldValue(record, item)).join(separator)\n : undefined;\n}\n\nexport function renderValue(record: any, cconfig: BaseColumnConfig) {\n const value = getFieldValue(record, cconfig);\n\n if (value == null) {\n return \"\";\n }\n\n if (cconfig.dataType === \"auto\") {\n return renderAuto(value);\n } else {\n const coerced = coerceValue(value, cconfig.dataType);\n if (\n isOneOf(cconfig.dataType, NUMBER_TYPES) &&\n typeof coerced === \"number\"\n ) {\n return renderNumber(coerced, cconfig as NumberSettings);\n } else if (cconfig.dataType === \"boolean\" && typeof coerced === \"boolean\") {\n return renderBoolean(coerced, cconfig);\n } else if (cconfig.dataType === \"datetime\" && coerced instanceof Date) {\n return renderDate(coerced, cconfig);\n } else if (\n cconfig.dataType === \"relative-datetime\" &&\n coerced instanceof Date\n ) {\n return renderRelativeDate(coerced, cconfig);\n }\n return asString(value);\n }\n}\n\nfunction renderAuto(value: unknown): React.ReactNode {\n if (typeof value === \"number\") {\n return renderNumber(value, { dataType: \"number\" });\n } else if (typeof value === \"boolean\") {\n return renderBoolean(value, DEFAULT_BOOLEAN_SETTINGS);\n } else if (value instanceof Date) {\n return renderDate(value, DEFAULT_DATETIME_SETTINGS);\n } else {\n const coerced = tryCoerceAuto(value);\n if (coerced === CANNOT_COERCE) {\n return asString(value);\n } else {\n return renderAuto(coerced);\n }\n }\n}\n\nfunction tryCoerceAuto(value: unknown) {\n for (const dataType of [\n \"number\",\n \"datetime\",\n ] as BaseColumnConfig[\"dataType\"][]) {\n const coerced = coerceValue(value, dataType);\n if (coerced !== CANNOT_COERCE) {\n return coerced;\n }\n }\n return CANNOT_COERCE;\n}\n\nfunction renderNumber(value: number, cconfig: NumberSettings) {\n if (cconfig.dataType === \"number\") {\n return new Intl.NumberFormat(cconfig.locale, cconfig).format(value);\n } else if (cconfig.dataType === \"percent\") {\n return new Intl.NumberFormat(cconfig.locale, {\n ...cconfig,\n style: \"percent\",\n }).format(value);\n } else if (cconfig.dataType === \"currency\") {\n return new Intl.NumberFormat(cconfig.locale, {\n ...DEFAULT_CURRENCY_SETTINGS,\n ...cconfig,\n style: \"currency\",\n }).format(value);\n } else {\n throw new Error(`Unexpected dataType ${(cconfig as any).dataType}`);\n }\n}\n\nfunction renderDate(value: Date, cconfig: DateTimeSettings) {\n const opts = {\n ...DEFAULT_DATETIME_SETTINGS,\n ...cconfig,\n };\n if (opts.dateStyle === \"none\") {\n delete opts[\"dateStyle\"];\n }\n if (opts.timeStyle === \"none\") {\n delete opts[\"timeStyle\"];\n }\n return new Intl.DateTimeFormat(cconfig.locale, opts as any).format(value);\n}\n\nconst SECOND_MS = 1000;\nconst MINUTE_MS = 60 * SECOND_MS;\nconst HOUR_MS = 60 * MINUTE_MS;\nconst DAY_MS = 24 * HOUR_MS;\nconst WEEK_MS = 7 * DAY_MS;\nconst UNIT_TO_MS = {\n second: SECOND_MS,\n minute: MINUTE_MS,\n hour: HOUR_MS,\n day: DAY_MS,\n week: WEEK_MS,\n} as const;\nconst UNITS_BY_MS = Object.keys(UNIT_TO_MS) as (keyof typeof UNIT_TO_MS)[];\n\nfunction renderRelativeDate(value: Date, cconfig: RelativeDateTimeSettings) {\n const opts = {\n ...DEFAULT_RELATIVE_DATETIME_SETTINGS,\n ...cconfig,\n };\n const unit = cconfig.unit ?? \"day\";\n const formatter = new Intl.RelativeTimeFormat(cconfig.locale, opts);\n if (isOneOf(unit, UNITS_BY_MS)) {\n // for \"exact\" units, we can do it by just calcluating the difference\n // by ms\n const diff = value.getTime() - new Date().getTime();\n return formatter.format(Math.round(diff / UNIT_TO_MS[unit]), unit);\n } else {\n // otherwise we need to calculate by the specific unit\n if (unit === \"year\") {\n const diff = value.getFullYear() - new Date().getFullYear();\n return formatter.format(diff, unit);\n } else if (unit === \"month\") {\n const months = (d: Date) => d.getFullYear() * 12 + d.getMonth() + 1;\n const diff = months(value) - months(new Date());\n return formatter.format(diff, unit);\n } else {\n throw new Error(`Unexpected relative time unit ${unit}`);\n }\n }\n}\n\nfunction renderBoolean(value: boolean, cconfig: BooleanSettings) {\n const showAs = cconfig.showAs ?? DEFAULT_BOOLEAN_SETTINGS.showAs;\n if (showAs === \"checkbox\") {\n return <Checkbox checked={value} />;\n } else if (showAs === \"switch\") {\n return <Switch checked={value} />;\n } else {\n return value ? \"true\" : \"false\";\n }\n}\n\nconst CANNOT_COERCE = Symbol(\"plasmic-cannot-coerce\");\nfunction coerceValue(value: unknown, dataType: BaseColumnConfig[\"dataType\"]) {\n if (value == null) {\n return null;\n }\n try {\n if (isOneOf(dataType, NUMBER_TYPES)) {\n if (typeof value === \"number\") {\n return value;\n } else if (typeof value === \"string\") {\n const maybeNumber = +value;\n if (!isNaN(maybeNumber)) {\n return maybeNumber;\n }\n }\n } else if (isOneOf(dataType, DATETIME_TYPES)) {\n if (value instanceof Date) {\n return value;\n } else if (typeof value === \"number\") {\n return new Date(value);\n } else if (typeof value === \"string\") {\n // We don't want to simply use Date because it's too loose and varies across platforms.\n // It'll parse even things like \"42\" and \"iPhone 8\" as dates!\n //\n // After a bunch of research, I couldn't find a great simple way to recognize a bunch of common date formats.\n // Closest such resource I could find was this list of formats:\n // https://gist.github.com/brandonjp/ac259099ba95868c4826fc0f58f9e7b4\n // But for now it's probably better to stick to one of the \"standard\" computer formats rather than try to recognize various \"humanized\" date time formats.\n // We could try to expand this in the future.\n //\n // As far as libraries go:\n // dayjs has very buggy and long-neglected support for parsing.\n // Temporal doesn't handle general parsing by format.\n // Luxon is maintained and decent, though it doesn't accept a whole list of formats.\n //\n // Right now we also don't know anything about performance.\n const parsed = parseDate(value);\n return parsed ? parsed : CANNOT_COERCE;\n }\n } else if (dataType === \"boolean\") {\n if (value === true || value === false) {\n return value;\n } else if (typeof value === \"number\") {\n return value !== 0;\n } else if (typeof value === \"string\") {\n return value.toLowerCase() === \"true\";\n }\n } else if (dataType === \"string\") {\n return asString(value);\n } else if (dataType === \"auto\") {\n return value;\n }\n } catch (err) {\n // Ignore error; just fail to coerce\n }\n\n return CANNOT_COERCE;\n}\n\nfunction asString(value: unknown) {\n if (value == null) {\n return \"\";\n } else if (typeof value === \"string\") {\n return value;\n } else if (typeof value === \"object\") {\n if (\"toString\" in value && typeof value.toString === \"function\") {\n return value.toString();\n } else {\n return JSON.stringify(value);\n }\n } else {\n return `${value}`;\n }\n}\n"],"names":["__spreadValues","_a","__spreadProps"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"formatting-b434487b.esm.js","sources":["../src/field-mappings.tsx","../src/formatting.tsx"],"sourcesContent":["import { QueryResult, TableSchema } from \"@plasmicapp/data-sources\";\nimport { ComponentContextConfig } from \"@plasmicapp/host\";\nimport { PropType } from \"@plasmicapp/host/registerComponent\";\nimport deepGet from \"lodash/get\";\nimport { isOneOf, withoutFalsey } from \"./utils\";\n\nexport interface AutoSettings {\n dataType: \"auto\";\n}\n\ninterface _SharedNumberSettings {\n notation?: \"standard\" | \"scientific\" | \"engineering\" | \"compact\";\n signDisplay?: \"auto\" | \"always\" | \"exceptZero\";\n maximumFractionDigits?: number;\n minimumFractionDigits?: number;\n locale?: string;\n}\nexport interface DecimalSettings extends _SharedNumberSettings {\n dataType: \"number\";\n}\nexport interface PercentSettings extends _SharedNumberSettings {\n dataType: \"percent\";\n}\nexport interface CurrencySettings extends _SharedNumberSettings {\n dataType: \"currency\";\n currency?: string;\n currencyDisplay?: \"symbol\" | \"narrowSymbol\" | \"code\" | \"name\";\n}\nexport const DEFAULT_CURRENCY_SETTINGS: CurrencySettings = {\n dataType: \"currency\",\n currency: \"USD\",\n currencyDisplay: \"narrowSymbol\",\n};\n\nexport type NumberSettings =\n | DecimalSettings\n | PercentSettings\n | CurrencySettings;\nexport const NUMBER_TYPES = [\"number\", \"percent\", \"currency\"] as const;\n\nexport interface DateTimeSettings {\n dataType: \"datetime\";\n locale?: string;\n dateStyle?: \"none\" | \"full\" | \"long\" | \"medium\" | \"short\";\n timeStyle?: \"none\" | \"full\" | \"long\" | \"medium\" | \"short\";\n hour12?: boolean;\n timeZone?: string;\n}\nexport const DEFAULT_DATETIME_SETTINGS: DateTimeSettings = {\n dataType: \"datetime\",\n locale: \"en-US\",\n dateStyle: \"short\",\n timeStyle: \"short\",\n hour12: true,\n};\n\nexport interface RelativeDateTimeSettings {\n dataType: \"relative-datetime\";\n locale?: string;\n numeric?: \"always\" | \"auto\";\n style?: \"long\" | \"short\" | \"narrow\";\n unit?: \"year\" | \"month\" | \"week\" | \"day\" | \"hour\" | \"minute\" | \"second\";\n}\nexport const DEFAULT_RELATIVE_DATETIME_SETTINGS: RelativeDateTimeSettings = {\n dataType: \"relative-datetime\",\n locale: \"en-US\",\n numeric: \"always\",\n style: \"long\",\n unit: \"day\",\n};\nexport const DATETIME_TYPES = [\"datetime\", \"relative-datetime\"] as const;\n\nexport interface BooleanSettings {\n dataType: \"boolean\";\n showAs?: \"text\" | \"checkbox\" | \"switch\";\n}\nexport const DEFAULT_BOOLEAN_SETTINGS: BooleanSettings = {\n dataType: \"boolean\",\n showAs: \"checkbox\",\n};\n\nexport interface StringSettings {\n dataType: \"string\";\n}\n\nexport type RowFunc<Result> = (row: Record<string, unknown>) => Result;\nexport type CellFunc<Result> = (\n row: Record<string, unknown>,\n value: unknown\n) => Result;\n\n/**\n * Exprs are for things that can must re-evaluate from row to row.\n *\n * Literal values are for things that are column-level. (But in Plasmic Studio, as with all props, you can still use a dynamic value.)\n */\n\ninterface _BaseColumnConfig {\n key: string;\n fieldId?: string;\n title?: string;\n isHidden: boolean;\n expr?: CellFunc<any>;\n}\n\nexport type BaseColumnConfig = _BaseColumnConfig &\n (\n | AutoSettings\n | NumberSettings\n | StringSettings\n | BooleanSettings\n | DateTimeSettings\n | RelativeDateTimeSettings\n );\n\nexport function deriveValueType(cconfig: BaseColumnConfig) {\n return cconfig.dataType === \"auto\"\n ? undefined\n : cconfig.dataType === \"string\"\n ? \"text\"\n : cconfig.dataType === \"number\"\n ? \"digit\"\n : cconfig.dataType === \"boolean\"\n ? \"switch\"\n : undefined;\n}\n\nexport interface ControlContextData<ColumnConfig extends BaseColumnConfig> {\n data: unknown[];\n schema?: TableSchema;\n mergedFields: ColumnConfig[];\n minimalFullLengthFields: Partial<ColumnConfig>[];\n}\n\nexport interface FieldfulProps<ColumnConfig extends BaseColumnConfig> {\n className?: string;\n data?: QueryResult;\n fields?: Partial<ColumnConfig>[];\n setControlContextData?: (ctx: ControlContextData<ColumnConfig>) => void;\n}\n\n// Hacky \"unique\" string values\nexport const NoneField = \"||NoneField||\";\nexport const CustomField = \"\";\n\ninterface FieldSubpropsOpts<ColumnConfig extends BaseColumnConfig> {\n fieldTypes?: Record<string, PropType<any>>;\n canChangeField?: boolean;\n canPickNoneField?: boolean;\n noTitle?: boolean;\n noDataType?: boolean;\n hiddenFieldId?: (\n ps: Record<string, unknown>,\n ctx: ControlContextData<ColumnConfig>,\n extras: { path: (string | number)[] }\n ) => boolean;\n}\n\nexport function getFieldSubprops<ColumnConfig extends BaseColumnConfig>(\n opts: FieldSubpropsOpts<ColumnConfig>\n): Record<string, PropType<any>> {\n return {\n key: {\n type: \"string\",\n hidden: () => true,\n },\n fieldId: {\n type: \"choice\",\n displayName: \"Field name\",\n readOnly: !opts.canChangeField,\n options: (_props, ctx: ControlContextData<BaseColumnConfig>) =>\n withoutFalsey([\n opts.canPickNoneField && { value: NoneField, label: \"None\" },\n ...(ctx?.schema?.fields ?? []).map((f) => ({\n value: f.id,\n label: f.label ?? f.id,\n })),\n { value: CustomField, label: \"Custom value\" },\n ]),\n hidden: (\n ps,\n ctx: ControlContextData<ColumnConfig>,\n { path: _controlPath }\n ) => {\n // If this is change-able.\n if (opts.canChangeField) {\n return false;\n }\n return true;\n // If there's a user-set fieldId\n if (deepGet(ps, _controlPath)) {\n return false;\n }\n return opts.hiddenFieldId?.(ps, ctx, { path: _controlPath }) ?? true;\n },\n },\n title: {\n type: \"string\",\n displayName: \"Title\",\n defaultValueHint: getDefaultValueHint(\"title\"),\n hidden: () => !!opts.noTitle,\n },\n expr: {\n ...rowDataType(\"Custom value\"),\n hidden: (\n _ps,\n _ctx: ControlContextData<BaseColumnConfig>,\n { item, path: _controlPath }\n ) => {\n return false;\n // HIDE if this is unset.\n if (!item) {\n return true;\n }\n // SHOW if this is change-able *and* user chose \"Custom\".\n if (opts.canChangeField) {\n return false;\n }\n return true;\n },\n },\n isHidden: {\n type: \"boolean\",\n displayName: \"Is hidden\",\n defaultValueHint: getDefaultValueHint(\"isHidden\"),\n },\n ...(!opts.noDataType\n ? {\n dataType: {\n type: \"choice\",\n displayName: \"Data type\",\n options: [\n {\n value: \"auto\",\n label: \"Auto\",\n },\n {\n value: \"number\",\n label: \"Number\",\n },\n {\n value: \"percent\",\n label: \"Percentage\",\n },\n {\n value: \"currency\",\n label: \"Currency\",\n },\n {\n value: \"string\",\n label: \"String\",\n },\n {\n value: \"boolean\",\n label: \"Boolean\",\n },\n {\n value: \"datetime\",\n label: \"Date / Time\",\n },\n {\n value: \"relative-datetime\",\n label: \"Date / Time relative to now\",\n },\n ],\n defaultValueHint: getDefaultValueHint(\"dataType\"),\n },\n currency: {\n displayName: \"Currency\",\n description: \"Must be a valid currency code\",\n type: \"string\",\n defaultValueHint: \"USD\",\n hidden: (_ps, _ctx, { item }) => item.dataType !== \"currency\",\n },\n locale: {\n displayName: \"Locale\",\n description: \"Must be a valid locale code\",\n type: \"string\",\n defaultValueHint: \"en-US\",\n hidden: (_ps, _ctx, { item }) =>\n !isOneOf(item.dataType, NUMBER_TYPES) &&\n !isOneOf(item.dataType, DATETIME_TYPES),\n },\n notation: {\n displayName: \"Notation\",\n type: \"choice\",\n options: [\n {\n value: \"standard\",\n label: \"Standard\",\n },\n {\n value: \"scientific\",\n label: \"Scientific notation (like 1E3)\",\n },\n {\n value: \"compact\",\n label: \"Compact (like 10K)\",\n },\n ],\n defaultValueHint: \"standard\",\n hidden: (_ps, _ctx, { item }) =>\n !isOneOf(item.dataType, NUMBER_TYPES),\n },\n signDisplay: {\n type: \"choice\",\n displayName: \"Number sign\",\n options: [\n {\n value: \"auto\",\n label: \"Only for negative numbers (10, -10)\",\n },\n {\n value: \"exceptZero\",\n label: \"Positive or negative (+10, -10)\",\n },\n ],\n defaultValueHint: \"auto\",\n hidden: (_ps, _ctx, { item }) =>\n !isOneOf(item.dataType, NUMBER_TYPES),\n },\n maximumFractionDigits: {\n type: \"number\",\n displayName: \"Max decimal places\",\n defaultValueHint: 3,\n min: 0,\n max: 20,\n hidden: (_ps, _ctx, { item }) =>\n !isOneOf(item.dataType, NUMBER_TYPES),\n },\n minimumFractionDigits: {\n type: \"number\",\n displayName: \"Min decimal places\",\n defaultValueHint: 0,\n min: 0,\n max: 20,\n hidden: (_ps, _ctx, { item }) =>\n !isOneOf(item.dataType, NUMBER_TYPES),\n },\n showAs: {\n type: \"choice\",\n options: [\n {\n value: \"checkbox\",\n label: \"Checkboxes\",\n },\n {\n value: \"switch\",\n label: \"Toggle switches\",\n },\n {\n value: \"text\",\n label: \"Text\",\n },\n ],\n displayName: \"Show as\",\n defaultValueHint: \"checkbox\",\n hidden: (_ps, _ctx, { item }) => item.dataType !== \"boolean\",\n },\n dateStyle: {\n displayName: \"Date style\",\n type: \"choice\",\n options: [\n {\n value: \"none\",\n label: \"None (don't display date)\",\n },\n {\n value: \"short\",\n label: \"Short (like 12/25/2023)\",\n },\n {\n value: \"medium\",\n label: \"Medium (like Dec 25, 2023)\",\n },\n {\n value: \"long\",\n label: \"Long (like December 25, 2023)\",\n },\n {\n value: \"full\",\n label: \"Full (like Monday, December 25, 2023)\",\n },\n ],\n defaultValueHint: DEFAULT_DATETIME_SETTINGS.dateStyle,\n hidden: (_ps, _ctx, { item }) => item.dataType !== \"datetime\",\n },\n timeStyle: {\n displayName: \"Time style\",\n type: \"choice\",\n options: [\n {\n value: \"none\",\n label: \"None (don't display time)\",\n },\n {\n value: \"short\",\n label: \"Short (like 4:00 PM)\",\n },\n {\n value: \"medium\",\n label: \"Medium (like 4:00:00 PM)\",\n },\n {\n value: \"long\",\n label: \"Long (like 4:00:00 PM PST)\",\n },\n {\n value: \"full\",\n label: \"Full (like 4:00:00 PM Pacific Standard Time)\",\n },\n ],\n defaultValueHint: DEFAULT_DATETIME_SETTINGS.timeStyle,\n hidden: (_ps, _ctx, { item }) => item.dataType !== \"datetime\",\n },\n hour12: {\n displayName: \"Use AM/PM?\",\n description: \"Whether to use AM/PM or 24-hour clock\",\n type: \"boolean\",\n defaultValueHint: DEFAULT_DATETIME_SETTINGS.hour12,\n hidden: (_ps, _ctx, { item }) => item.dataType !== \"datetime\",\n },\n numeric: {\n type: \"choice\",\n displayName: \"Use numbers?\",\n options: [\n { value: \"always\", label: \"Always use numbers\" },\n {\n value: \"auto\",\n label: \"Use words like 'Yesterday' or 'Tomorrow'\",\n },\n ],\n defaultValueHint: DEFAULT_RELATIVE_DATETIME_SETTINGS.numeric,\n hidden: (_ps, _ctx, { item }) =>\n item.dataType !== \"relative-datetime\",\n },\n unit: {\n type: \"choice\",\n displayName: \"Time unit\",\n options: [\n {\n value: \"second\",\n label: \"Seconds\",\n },\n {\n value: \"minute\",\n label: \"Minutes\",\n },\n {\n value: \"hour\",\n label: \"Hours\",\n },\n {\n value: \"day\",\n label: \"Days\",\n },\n {\n value: \"week\",\n label: \"Weeks\",\n },\n {\n value: \"month\",\n label: \"Months\",\n },\n {\n value: \"year\",\n label: \"Years\",\n },\n ],\n defaultValueHint: DEFAULT_RELATIVE_DATETIME_SETTINGS.unit,\n hidden: (_ps, _ctx, { item }) =>\n item.dataType !== \"relative-datetime\",\n },\n }\n : {}),\n ...opts.fieldTypes,\n };\n}\n\nfunction getDefaultValueHint<ColumnConfig extends BaseColumnConfig>(\n field: keyof ColumnConfig\n) {\n return (\n _props: any,\n contextData: ControlContextData<ColumnConfig> | null,\n { item }: any\n ): any => {\n if (item?.fieldId) {\n const fieldSetting = contextData?.mergedFields.find(\n (f) => f.fieldId === item.fieldId\n );\n return fieldSetting?.[field];\n }\n return undefined;\n };\n}\n\nconst rowDataType = (displayName: string, control?: any) =>\n ({\n type: \"function\" as any,\n displayName,\n control,\n argNames: [\"currentItem\", \"currentValue\"],\n argValues: (_props: any, ctx: any, { item }: any) => {\n const row = ctx?.data?.[0];\n const cell = item.fieldId ? row?.[item.fieldId] : undefined;\n return [row, cell];\n },\n } as any);\n\nexport function buildFieldsPropType<\n ColumnConfig extends BaseColumnConfig,\n Props extends FieldfulProps<ColumnConfig>\n>({\n advanced,\n displayName,\n minimalValue = (_props, contextData) => contextData?.minimalFullLengthFields,\n ...opts\n}: {\n advanced?: boolean;\n displayName?: string;\n minimalValue?: ComponentContextConfig<Props, any>;\n} & FieldSubpropsOpts<ColumnConfig>): PropType<Props> {\n return {\n type: \"array\",\n advanced,\n displayName,\n hidden: (ps) => !ps.data,\n unstable__keyFunc: (x) => x.key,\n unstable__minimalValue: minimalValue,\n unstable__canDelete: (_ps, _props, ctx, { item }) => {\n if (opts.canChangeField) {\n return true;\n }\n if (!ctx?.schema) {\n // still loading...\n return false;\n }\n if (\n item.fieldId &&\n ctx.schema.fields.some((f) => f.id === item.fieldId)\n ) {\n return false;\n }\n return true;\n },\n itemType: {\n type: \"object\",\n nameFunc: (_item: any) => {\n // Prefer to show the field ID when available, since there's no other indication what field you're edtiing if you relabeled it.\n return _item.fieldId || _item.title || \"Custom value\";\n },\n fields: getFieldSubprops(opts),\n },\n };\n}\n","import { parseDate } from \"@plasmicpkgs/luxon-parser\";\nimport { Checkbox, Switch } from \"antd\";\nimport React from \"react\";\nimport {\n BaseColumnConfig,\n BooleanSettings,\n DateTimeSettings,\n DATETIME_TYPES,\n DEFAULT_BOOLEAN_SETTINGS,\n DEFAULT_CURRENCY_SETTINGS,\n DEFAULT_DATETIME_SETTINGS,\n DEFAULT_RELATIVE_DATETIME_SETTINGS,\n NumberSettings,\n NUMBER_TYPES,\n RelativeDateTimeSettings,\n} from \"./field-mappings\";\nimport { isOneOf, maybe } from \"./utils\";\n\nexport function maybeRenderValue(\n record: any,\n cconfig: BaseColumnConfig | undefined\n) {\n return cconfig ? renderValue(record, cconfig) : undefined;\n}\n\nexport function multiRenderValue(\n record: any,\n cconfigs: BaseColumnConfig[] | undefined\n) {\n return cconfigs\n ?.flatMap((cc) =>\n cc.isHidden ? [] : [` • `, <>{renderValue(record, cc)}</>]\n )\n .slice(1);\n}\n\nexport function maybeRenderString(\n record: any,\n cconfig: BaseColumnConfig | undefined\n) {\n return cconfig && !cconfig.isHidden\n ? maybe(getFieldValue(record, cconfig), asString)\n : undefined;\n}\n\nfunction getFieldValue(record: any, cconfig: BaseColumnConfig) {\n let value = cconfig.fieldId ? record[cconfig.fieldId] : undefined;\n\n if (cconfig.expr) {\n value = cconfig.expr(record, value);\n }\n\n return value;\n}\n\nexport function getFieldAggregateValue(\n record: any,\n cconfigs: BaseColumnConfig[] | undefined,\n separator = \", \"\n) {\n if (!cconfigs?.length) return undefined;\n\n return cconfigs?.length\n ? cconfigs.map((item) => getFieldValue(record, item)).join(separator)\n : undefined;\n}\n\nexport function renderValue(record: any, cconfig: BaseColumnConfig) {\n const value = getFieldValue(record, cconfig);\n\n if (value == null) {\n return \"\";\n }\n\n if (cconfig.dataType === \"auto\") {\n return renderAuto(value);\n } else {\n const coerced = coerceValue(value, cconfig.dataType);\n if (\n isOneOf(cconfig.dataType, NUMBER_TYPES) &&\n typeof coerced === \"number\"\n ) {\n return renderNumber(coerced, cconfig as NumberSettings);\n } else if (cconfig.dataType === \"boolean\" && typeof coerced === \"boolean\") {\n return renderBoolean(coerced, cconfig);\n } else if (cconfig.dataType === \"datetime\" && coerced instanceof Date) {\n return renderDate(coerced, cconfig);\n } else if (\n cconfig.dataType === \"relative-datetime\" &&\n coerced instanceof Date\n ) {\n return renderRelativeDate(coerced, cconfig);\n }\n return asString(value);\n }\n}\n\nfunction renderAuto(value: unknown): React.ReactNode {\n if (typeof value === \"number\") {\n return renderNumber(value, { dataType: \"number\" });\n } else if (typeof value === \"boolean\") {\n return renderBoolean(value, DEFAULT_BOOLEAN_SETTINGS);\n } else if (value instanceof Date) {\n return renderDate(value, DEFAULT_DATETIME_SETTINGS);\n } else {\n const coerced = tryCoerceAuto(value);\n if (coerced === CANNOT_COERCE) {\n return asString(value);\n } else {\n return renderAuto(coerced);\n }\n }\n}\n\nfunction tryCoerceAuto(value: unknown) {\n for (const dataType of [\n \"number\",\n \"datetime\",\n ] as BaseColumnConfig[\"dataType\"][]) {\n const coerced = coerceValue(value, dataType);\n if (coerced !== CANNOT_COERCE) {\n return coerced;\n }\n }\n return CANNOT_COERCE;\n}\n\nfunction renderNumber(value: number, cconfig: NumberSettings) {\n if (cconfig.dataType === \"number\") {\n return new Intl.NumberFormat(cconfig.locale, cconfig).format(value);\n } else if (cconfig.dataType === \"percent\") {\n return new Intl.NumberFormat(cconfig.locale, {\n ...cconfig,\n style: \"percent\",\n }).format(value);\n } else if (cconfig.dataType === \"currency\") {\n return new Intl.NumberFormat(cconfig.locale, {\n ...DEFAULT_CURRENCY_SETTINGS,\n ...cconfig,\n style: \"currency\",\n }).format(value);\n } else {\n throw new Error(`Unexpected dataType ${(cconfig as any).dataType}`);\n }\n}\n\nfunction renderDate(value: Date, cconfig: DateTimeSettings) {\n const opts = {\n ...DEFAULT_DATETIME_SETTINGS,\n ...cconfig,\n };\n if (opts.dateStyle === \"none\") {\n delete opts[\"dateStyle\"];\n }\n if (opts.timeStyle === \"none\") {\n delete opts[\"timeStyle\"];\n }\n return new Intl.DateTimeFormat(cconfig.locale, opts as any).format(value);\n}\n\nconst SECOND_MS = 1000;\nconst MINUTE_MS = 60 * SECOND_MS;\nconst HOUR_MS = 60 * MINUTE_MS;\nconst DAY_MS = 24 * HOUR_MS;\nconst WEEK_MS = 7 * DAY_MS;\nconst UNIT_TO_MS = {\n second: SECOND_MS,\n minute: MINUTE_MS,\n hour: HOUR_MS,\n day: DAY_MS,\n week: WEEK_MS,\n} as const;\nconst UNITS_BY_MS = Object.keys(UNIT_TO_MS) as (keyof typeof UNIT_TO_MS)[];\n\nfunction renderRelativeDate(value: Date, cconfig: RelativeDateTimeSettings) {\n const opts = {\n ...DEFAULT_RELATIVE_DATETIME_SETTINGS,\n ...cconfig,\n };\n const unit = cconfig.unit ?? \"day\";\n const formatter = new Intl.RelativeTimeFormat(cconfig.locale, opts);\n if (isOneOf(unit, UNITS_BY_MS)) {\n // for \"exact\" units, we can do it by just calcluating the difference\n // by ms\n const diff = value.getTime() - new Date().getTime();\n return formatter.format(Math.round(diff / UNIT_TO_MS[unit]), unit);\n } else {\n // otherwise we need to calculate by the specific unit\n if (unit === \"year\") {\n const diff = value.getFullYear() - new Date().getFullYear();\n return formatter.format(diff, unit);\n } else if (unit === \"month\") {\n const months = (d: Date) => d.getFullYear() * 12 + d.getMonth() + 1;\n const diff = months(value) - months(new Date());\n return formatter.format(diff, unit);\n } else {\n throw new Error(`Unexpected relative time unit ${unit}`);\n }\n }\n}\n\nfunction renderBoolean(value: boolean, cconfig: BooleanSettings) {\n const showAs = cconfig.showAs ?? DEFAULT_BOOLEAN_SETTINGS.showAs;\n if (showAs === \"checkbox\") {\n return <Checkbox checked={value} />;\n } else if (showAs === \"switch\") {\n return <Switch checked={value} />;\n } else {\n return value ? \"true\" : \"false\";\n }\n}\n\nconst CANNOT_COERCE = Symbol(\"plasmic-cannot-coerce\");\nfunction coerceValue(value: unknown, dataType: BaseColumnConfig[\"dataType\"]) {\n if (value == null) {\n return null;\n }\n try {\n if (isOneOf(dataType, NUMBER_TYPES)) {\n if (typeof value === \"number\") {\n return value;\n } else if (typeof value === \"string\") {\n const maybeNumber = +value;\n if (!isNaN(maybeNumber)) {\n return maybeNumber;\n }\n }\n } else if (isOneOf(dataType, DATETIME_TYPES)) {\n if (value instanceof Date) {\n return value;\n } else if (typeof value === \"number\") {\n return new Date(value);\n } else if (typeof value === \"string\") {\n // We don't want to simply use Date because it's too loose and varies across platforms.\n // It'll parse even things like \"42\" and \"iPhone 8\" as dates!\n //\n // After a bunch of research, I couldn't find a great simple way to recognize a bunch of common date formats.\n // Closest such resource I could find was this list of formats:\n // https://gist.github.com/brandonjp/ac259099ba95868c4826fc0f58f9e7b4\n // But for now it's probably better to stick to one of the \"standard\" computer formats rather than try to recognize various \"humanized\" date time formats.\n // We could try to expand this in the future.\n //\n // As far as libraries go:\n // dayjs has very buggy and long-neglected support for parsing.\n // Temporal doesn't handle general parsing by format.\n // Luxon is maintained and decent, though it doesn't accept a whole list of formats.\n //\n // Right now we also don't know anything about performance.\n const parsed = parseDate(value);\n return parsed ? parsed : CANNOT_COERCE;\n }\n } else if (dataType === \"boolean\") {\n if (value === true || value === false) {\n return value;\n } else if (typeof value === \"number\") {\n return value !== 0;\n } else if (typeof value === \"string\") {\n return value.toLowerCase() === \"true\";\n }\n } else if (dataType === \"string\") {\n return asString(value);\n } else if (dataType === \"auto\") {\n return value;\n }\n } catch (err) {\n // Ignore error; just fail to coerce\n }\n\n return CANNOT_COERCE;\n}\n\nfunction asString(value: unknown) {\n if (value == null) {\n return \"\";\n } else if (typeof value === \"string\") {\n return value;\n } else if (typeof value === \"object\") {\n if (\"toString\" in value && typeof value.toString === \"function\") {\n return value.toString();\n } else {\n return JSON.stringify(value);\n }\n } else {\n return `${value}`;\n }\n}\n"],"names":["__spreadValues","_a","__spreadProps"],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ var luxonParser = require('@plasmicpkgs/luxon-parser');
|
|
|
4
4
|
var antd = require('antd');
|
|
5
5
|
var React = require('react');
|
|
6
6
|
require('lodash/get');
|
|
7
|
-
var utils = require('./utils-
|
|
7
|
+
var utils = require('./utils-da451c58.cjs.js');
|
|
8
8
|
|
|
9
9
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
10
|
|
|
@@ -642,4 +642,4 @@ exports.getFieldSubprops = getFieldSubprops;
|
|
|
642
642
|
exports.maybeRenderString = maybeRenderString;
|
|
643
643
|
exports.multiRenderValue = multiRenderValue;
|
|
644
644
|
exports.renderValue = renderValue;
|
|
645
|
-
//# sourceMappingURL=formatting-
|
|
645
|
+
//# sourceMappingURL=formatting-c37b4133.cjs.js.map
|