@embeddable.com/remarkable-pro 0.1.23 → 0.1.24

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.
Files changed (28) hide show
  1. package/dist/ComparisonPeriodSelectFieldPro.js +1 -1
  2. package/dist/DateRangePickerCustomPro.js +1 -1
  3. package/dist/DateRangeSelectFieldPro.js +1 -1
  4. package/dist/components/editors/dates/DateRangePickerCustomPro/DateRangePickerCustomPro.emb.d.ts +8 -0
  5. package/dist/components/editors/dates/DateRangePickerCustomPro/DateRangePickerCustomPro.emb.d.ts.map +1 -1
  6. package/dist/components/editors/dates/DateRangePickerCustomPro/definition.d.ts +38 -3
  7. package/dist/components/editors/dates/DateRangePickerCustomPro/definition.d.ts.map +1 -1
  8. package/dist/components/editors/dates/DateRangePickerPresetsPro/DateRangeSelectFieldPro.emb.d.ts +8 -0
  9. package/dist/components/editors/dates/DateRangePickerPresetsPro/DateRangeSelectFieldPro.emb.d.ts.map +1 -1
  10. package/dist/components/editors/dates/DateRangePickerPresetsPro/definition.d.ts +38 -3
  11. package/dist/components/editors/dates/DateRangePickerPresetsPro/definition.d.ts.map +1 -1
  12. package/dist/{dates.utils-C44-7RLR.js → dates.utils-BkOKKqSH.js} +2 -2
  13. package/dist/{dates.utils-C44-7RLR.js.map → dates.utils-BkOKKqSH.js.map} +1 -1
  14. package/dist/definition-CBNh4l83.js +117 -0
  15. package/dist/definition-CBNh4l83.js.map +1 -0
  16. package/dist/{definition-Dy6sdVbU.js → definition-DvYcZXNL.js} +2 -2
  17. package/dist/{definition-Dy6sdVbU.js.map → definition-DvYcZXNL.js.map} +1 -1
  18. package/dist/definition-I1tZR9Mu.js +209 -0
  19. package/dist/{definition-cZxEU0FY.js.map → definition-I1tZR9Mu.js.map} +1 -1
  20. package/dist/embeddable-components.json +40 -40
  21. package/dist/index.js +4 -4
  22. package/dist/{km-D7TzqXJr.js → km-DVInE0MH.js} +25 -23
  23. package/dist/km-DVInE0MH.js.map +1 -0
  24. package/package.json +4 -4
  25. package/dist/definition-DyMdJqf8.js +0 -105
  26. package/dist/definition-DyMdJqf8.js.map +0 -1
  27. package/dist/definition-cZxEU0FY.js +0 -197
  28. package/dist/km-D7TzqXJr.js.map +0 -1
@@ -0,0 +1,209 @@
1
+ import { useTheme as W, definePreview as q } from "@embeddable.com/react";
2
+ import { Q as B, R as H, j as n, U as Q, W as U, X as p, Y as X, Z as Y, _ as Z, $, a0 as A, a1 as G, V as i } from "./index-CnLFSN1m.js";
3
+ import { c as k, u as J, g as K, b as D, a as ee } from "./dates.utils-BkOKKqSH.js";
4
+ import { b as te, a as ae, r as ne, i as m } from "./component.utils-CbnwaSi1.js";
5
+ import { E as oe } from "./EditorCard-DhASZ5NL.js";
6
+ import { useState as f, useEffect as se } from "react";
7
+ import { I as re } from "./IconCalendarFilled-DaTHLPcZ.js";
8
+ import { i as s } from "./component.inputs.constants-Cs7gX1rI.js";
9
+ const le = (e) => e.map((o) => ({
10
+ rightLabel: k(o.getRange(), o.dateFormat),
11
+ value: o.value,
12
+ label: te(o.label)
13
+ })), ie = "_dateRangePickerContent_pig22_1", ce = "_dateRangePickerContainer_pig22_5", R = {
14
+ dateRangePickerContent: ie,
15
+ dateRangePickerContainer: ce
16
+ }, h = (e) => {
17
+ const o = W();
18
+ ae(o);
19
+ const { dayjsLocaleReady: c } = J(), { onChange: r, clearable: w, selectedValue: t, showCustomRangeOptions: j, showTwoMonths: x } = e, C = !j, [y, v] = f(C), [T, b] = f(!1), [d, g] = f(
20
+ K(t)
21
+ ), l = o.defaults.dateRangesOptions;
22
+ if (se(() => {
23
+ if (!c)
24
+ return;
25
+ const a = D(t, l);
26
+ B(a, t) || r(a);
27
+ }, [t, c, r, l]), !c)
28
+ return null;
29
+ const { description: F, placeholder: S, title: O, tooltip: L } = ne(e), P = le(l), _ = (a) => {
30
+ const u = D(
31
+ { relativeTimeString: a },
32
+ l
33
+ );
34
+ r(u), g(void 0);
35
+ }, I = (a) => {
36
+ r(ee(a)), b(!1);
37
+ }, M = () => {
38
+ g(void 0), r(void 0);
39
+ }, E = (() => {
40
+ if (t != null && t.relativeTimeString) {
41
+ const a = P.find((u) => u.value === t.relativeTimeString);
42
+ if (a)
43
+ return a.label;
44
+ }
45
+ return t != null && t.from && (t != null && t.to) ? k(t, "MMM DD") : "";
46
+ })(), V = o.i18n.language ?? o.formatter.locale, z = H(d, t), N = x ? 2 : 1;
47
+ return /* @__PURE__ */ n.jsx(oe, { title: O, description: F, tooltip: L, children: /* @__PURE__ */ n.jsx(
48
+ Q,
49
+ {
50
+ open: T,
51
+ onOpenChange: b,
52
+ avoidCollisions: !1,
53
+ triggerComponent: /* @__PURE__ */ n.jsx(
54
+ G,
55
+ {
56
+ startIcon: re,
57
+ "aria-label": S,
58
+ placeholder: S,
59
+ valueLabel: E,
60
+ onClear: M,
61
+ isClearable: w
62
+ }
63
+ ),
64
+ children: /* @__PURE__ */ n.jsx(U, { fitContent: !0, className: R.dateRangePickerContent, children: y ? /* @__PURE__ */ n.jsxs("div", { className: R.dateRangePickerContainer, children: [
65
+ !C && /* @__PURE__ */ n.jsx(
66
+ p,
67
+ {
68
+ label: m.t("editors.dateRangePicker.backToPresets"),
69
+ onClick: (a) => {
70
+ a.preventDefault(), v(!1);
71
+ },
72
+ startIcon: /* @__PURE__ */ n.jsx(X, {})
73
+ }
74
+ ),
75
+ /* @__PURE__ */ n.jsx(
76
+ Y,
77
+ {
78
+ locale: V,
79
+ numberOfMonths: N,
80
+ value: d,
81
+ onChange: g
82
+ }
83
+ ),
84
+ /* @__PURE__ */ n.jsx(
85
+ Z,
86
+ {
87
+ size: "small",
88
+ disabled: z,
89
+ onClick: () => I(d),
90
+ children: m.t("editors.dateRangePicker.apply")
91
+ }
92
+ )
93
+ ] }) : /* @__PURE__ */ n.jsxs($, { children: [
94
+ /* @__PURE__ */ n.jsx(
95
+ p,
96
+ {
97
+ label: m.t("editors.dateRangePicker.custom"),
98
+ onClick: (a) => {
99
+ a.preventDefault(), v(!0);
100
+ },
101
+ endIcon: /* @__PURE__ */ n.jsx(A, {})
102
+ }
103
+ ),
104
+ P.map((a) => /* @__PURE__ */ n.jsx(
105
+ p,
106
+ {
107
+ ...a,
108
+ isSelected: (t == null ? void 0 : t.relativeTimeString) === a.value,
109
+ onClick: () => _(a.value)
110
+ },
111
+ a.value
112
+ ))
113
+ ] }) })
114
+ }
115
+ ) });
116
+ }, Re = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
117
+ __proto__: null,
118
+ default: h
119
+ }, Symbol.toStringTag, { value: "Module" })), de = {
120
+ name: "DateRangeSelectFieldPro",
121
+ label: "Date-Range Picker - Presets",
122
+ category: "Dropdowns - dates",
123
+ defaultWidth: 300,
124
+ defaultHeight: 120,
125
+ inputs: [
126
+ s.title,
127
+ s.description,
128
+ s.tooltip,
129
+ { ...s.placeholder, defaultValue: "Select a date-range" },
130
+ {
131
+ ...s.boolean,
132
+ name: "showCustomRangeOptions",
133
+ label: "Show custom date-range option",
134
+ defaultValue: !0,
135
+ category: "Component Settings"
136
+ },
137
+ {
138
+ ...s.boolean,
139
+ name: "showTwoMonths",
140
+ label: "Show two-month view",
141
+ defaultValue: !1,
142
+ category: "Component Settings"
143
+ },
144
+ s.clearable,
145
+ {
146
+ ...s.timeRange,
147
+ name: "selectedValue",
148
+ label: "Selected value",
149
+ category: "Pre-configured variables"
150
+ }
151
+ ],
152
+ events: [
153
+ {
154
+ name: "onChange",
155
+ label: "Selected date-range updated",
156
+ properties: [
157
+ {
158
+ name: "value",
159
+ label: "Selected date-range",
160
+ type: "timeRange"
161
+ },
162
+ {
163
+ name: "fromDate",
164
+ label: "Start date of selected range",
165
+ type: "time"
166
+ },
167
+ {
168
+ name: "toDate",
169
+ label: "To date of selected range",
170
+ type: "time"
171
+ }
172
+ ]
173
+ }
174
+ ],
175
+ variables: [
176
+ {
177
+ name: "date-range value",
178
+ type: "timeRange",
179
+ defaultValue: i.noFilter(),
180
+ inputs: ["selectedValue"],
181
+ events: [{ name: "onChange", property: "value" }]
182
+ }
183
+ ]
184
+ }, ge = q(h, {
185
+ showCustomRangeOptions: !0,
186
+ onChange: () => null
187
+ }), ue = (e) => ({
188
+ ...e
189
+ }), pe = {
190
+ onChange: (e) => ({
191
+ value: e ?? i.noFilter(),
192
+ fromDate: e != null && e.from ? { date: e == null ? void 0 : e.from } : i.noFilter(),
193
+ toDate: e != null && e.to ? { date: e == null ? void 0 : e.to } : i.noFilter()
194
+ })
195
+ }, ke = {
196
+ Component: h,
197
+ meta: de,
198
+ preview: ge,
199
+ config: {
200
+ props: ue,
201
+ events: pe
202
+ }
203
+ };
204
+ export {
205
+ ke as d,
206
+ le as g,
207
+ Re as i
208
+ };
209
+ //# sourceMappingURL=definition-I1tZR9Mu.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"definition-cZxEU0FY.js","sources":["../src/components/editors/dates/DateRangePickerPresetsPro/DateRangePickerPresetsPro.utils.ts","../src/components/editors/dates/DateRangePickerPresetsPro/index.tsx","../src/components/editors/dates/DateRangePickerPresetsPro/definition.ts"],"sourcesContent":["import { DateRangeSelectFieldProOption } from './DateRangePickerPresetsPro.types';\nimport { SelectListOptionProps } from '@embeddable.com/remarkable-ui';\nimport { resolveI18nString } from '../../../component.utils';\nimport { getTimeRangeLabel } from '../dates.utils';\n\nexport const getDateRangeSelectFieldProOptions = (\n dateRangeSelectFieldProOptions: DateRangeSelectFieldProOption[],\n): SelectListOptionProps[] => {\n return dateRangeSelectFieldProOptions.map((option) => {\n return {\n rightLabel: getTimeRangeLabel(option.getRange(), option.dateFormat),\n value: option.value,\n label: resolveI18nString(option.label),\n };\n });\n};\n","import { useTheme } from '@embeddable.com/react';\nimport {\n Button,\n DateRangePicker,\n Dropdown,\n SelectFieldContent,\n SelectFieldContentList,\n SelectListOption,\n DateRange,\n SelectFieldTrigger,\n isSameDateRange,\n shallowEqual,\n} from '@embeddable.com/remarkable-ui';\nimport { Theme } from '../../../../theme/theme.types';\nimport { useLoadDayjsLocale } from '../../../../utils/date.utils';\nimport { getDateRangeSelectFieldProOptions } from './DateRangePickerPresetsPro.utils';\nimport { TimeRange } from '@embeddable.com/core';\nimport { resolveI18nProps } from '../../../component.utils';\nimport { EditorCard, EditorCardHeaderProps } from '../../shared/EditorCard/EditorCard';\nimport { IconCalendarFilled, IconChevronLeft, IconChevronRight } from '@tabler/icons-react';\nimport { i18n, i18nSetup } from '../../../../theme/i18n/i18n';\nimport { useEffect, useState } from 'react';\nimport styles from './DateRangePickerPresetsPro.module.css';\nimport {\n getDateRangeFromTimeRange,\n getTimeRangeFromDateRange,\n getTimeRangeFromPresets,\n getTimeRangeLabel,\n} from '../dates.utils';\n\nexport type DateRangePickerPresetsProps = {\n onChange: (newDateRange: TimeRange) => void;\n placeholder?: string;\n selectedValue?: TimeRange;\n\n clearable?: boolean;\n showCustomRangeOptions?: boolean;\n showTwoMonths?: boolean;\n} & EditorCardHeaderProps;\n\nconst DateRangePickerPresets = (props: DateRangePickerPresetsProps) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n const { dayjsLocaleReady } = useLoadDayjsLocale();\n const { onChange, clearable, selectedValue, showCustomRangeOptions, showTwoMonths } = props;\n const onlyDateRangePicker = !showCustomRangeOptions;\n const [showDateRangePicker, setShowDateRangePicker] = useState(onlyDateRangePicker);\n\n const [isOpen, setIsOpen] = useState(false);\n const [dateRange, setDateRange] = useState<DateRange | undefined>(\n getDateRangeFromTimeRange(selectedValue),\n );\n\n const dateRangeOptions = theme.defaults.dateRangesOptions;\n\n useEffect(() => {\n if (!dayjsLocaleReady) {\n return;\n }\n // Step 1: Convert relativeTimeString to actual time range (from/to)\n const newTimeRange = getTimeRangeFromPresets(selectedValue, dateRangeOptions);\n\n if (!shallowEqual(newTimeRange, selectedValue)) {\n onChange(newTimeRange);\n }\n }, [selectedValue, dayjsLocaleReady, onChange, dateRangeOptions]);\n\n if (!dayjsLocaleReady) {\n return null;\n }\n\n const { description, placeholder, title, tooltip } = resolveI18nProps(props);\n\n const options = getDateRangeSelectFieldProOptions(dateRangeOptions);\n\n const handleOptionChange = (newValue: string | undefined) => {\n const newTimeRange = getTimeRangeFromPresets(\n { relativeTimeString: newValue } as TimeRange,\n dateRangeOptions,\n );\n\n onChange(newTimeRange);\n setDateRange(undefined);\n };\n\n const handleDateRangeChange = (newDateRange: DateRange | undefined) => {\n onChange(getTimeRangeFromDateRange(newDateRange));\n setIsOpen(false);\n };\n\n const handleClear = () => {\n setDateRange(undefined);\n onChange(undefined);\n };\n\n const getValueLabel = () => {\n if (selectedValue?.relativeTimeString) {\n const option = options.find((option) => option.value === selectedValue.relativeTimeString);\n if (option) {\n return option.label;\n }\n }\n\n if (selectedValue?.from && selectedValue?.to) {\n return getTimeRangeLabel(selectedValue, 'MMM DD');\n }\n\n return '';\n };\n\n const valueLabel = getValueLabel();\n\n const locale = theme.i18n.language ?? theme.formatter.locale;\n const isSubmitDisabled = isSameDateRange(dateRange, selectedValue);\n const numberOfMonths = showTwoMonths ? 2 : 1;\n\n return (\n <EditorCard title={title} description={description} tooltip={tooltip}>\n <Dropdown\n open={isOpen}\n onOpenChange={setIsOpen}\n avoidCollisions={false}\n triggerComponent={\n <SelectFieldTrigger\n startIcon={IconCalendarFilled}\n aria-label={placeholder}\n placeholder={placeholder}\n valueLabel={valueLabel}\n onClear={handleClear}\n isClearable={clearable}\n />\n }\n >\n <SelectFieldContent fitContent className={styles.dateRangePickerContent}>\n {showDateRangePicker ? (\n <div className={styles.dateRangePickerContainer}>\n {!onlyDateRangePicker && (\n <SelectListOption\n label={i18n.t('editors.dateRangePicker.backToPresets')}\n onClick={(e) => {\n e.preventDefault();\n setShowDateRangePicker(false);\n }}\n startIcon={<IconChevronLeft />}\n />\n )}\n <DateRangePicker\n locale={locale}\n numberOfMonths={numberOfMonths}\n value={dateRange}\n onChange={setDateRange}\n />\n <Button\n size=\"small\"\n disabled={isSubmitDisabled}\n onClick={() => handleDateRangeChange(dateRange)}\n >\n {i18n.t('editors.dateRangePicker.apply')}\n </Button>\n </div>\n ) : (\n <SelectFieldContentList>\n <SelectListOption\n label={i18n.t('editors.dateRangePicker.custom')}\n onClick={(e) => {\n e.preventDefault();\n setShowDateRangePicker(true);\n }}\n endIcon={<IconChevronRight />}\n />\n {options.map((option) => (\n <SelectListOption\n key={option.value}\n {...option}\n isSelected={selectedValue?.relativeTimeString === option.value}\n onClick={() => handleOptionChange(option.value)}\n />\n ))}\n </SelectFieldContentList>\n )}\n </SelectFieldContent>\n </Dropdown>\n </EditorCard>\n );\n};\n\nexport default DateRangePickerPresets;\n","import { EmbeddedComponentMeta, Inputs, definePreview } from '@embeddable.com/react';\nimport { Value } from '@embeddable.com/core';\nimport Component from './index';\nimport { inputs } from '../../../component.inputs.constants';\n\nconst meta = {\n name: 'DateRangeSelectFieldPro',\n label: 'Date-Range Picker - Presets',\n category: 'Dropdowns - dates',\n defaultWidth: 300,\n defaultHeight: 120,\n inputs: [\n inputs.title,\n inputs.description,\n inputs.tooltip,\n { ...inputs.placeholder, defaultValue: 'Select a date-range' },\n {\n ...inputs.boolean,\n name: 'showCustomRangeOptions',\n label: 'Show custom date-range option',\n defaultValue: true,\n category: 'Component Settings',\n },\n {\n ...inputs.boolean,\n name: 'showTwoMonths',\n label: 'Show two-month view',\n defaultValue: false,\n category: 'Component Settings',\n },\n inputs.clearable,\n {\n ...inputs.timeRange,\n name: 'selectedValue',\n label: 'Selected value',\n category: 'Pre-configured variables',\n },\n ],\n events: [\n {\n name: 'onChange',\n label: 'Selected date-range updated',\n properties: [\n {\n name: 'value',\n label: 'Selected date-range',\n type: 'timeRange',\n },\n ],\n },\n ],\n variables: [\n {\n name: 'date-range value',\n type: 'timeRange',\n defaultValue: Value.noFilter(),\n inputs: ['selectedValue'],\n events: [{ name: 'onChange', property: 'value' }],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nconst preview = definePreview(Component, {\n showCustomRangeOptions: true,\n onChange: () => null,\n});\n\nconst props = (inputs: Inputs<typeof meta>) => {\n return {\n ...inputs,\n };\n};\n\nconst events = {\n onChange: (range: unknown) => ({\n value: range ?? Value.noFilter(),\n }),\n};\n\nexport const dateRangeSelectFieldPro = {\n Component,\n meta,\n preview,\n config: {\n props,\n events,\n },\n} as const;\n"],"names":["getDateRangeSelectFieldProOptions","dateRangeSelectFieldProOptions","option","getTimeRangeLabel","resolveI18nString","DateRangePickerPresets","props","theme","useTheme","i18nSetup","dayjsLocaleReady","useLoadDayjsLocale","onChange","clearable","selectedValue","showCustomRangeOptions","showTwoMonths","onlyDateRangePicker","showDateRangePicker","setShowDateRangePicker","useState","isOpen","setIsOpen","dateRange","setDateRange","getDateRangeFromTimeRange","dateRangeOptions","useEffect","newTimeRange","getTimeRangeFromPresets","shallowEqual","description","placeholder","title","tooltip","resolveI18nProps","options","handleOptionChange","newValue","handleDateRangeChange","newDateRange","getTimeRangeFromDateRange","handleClear","valueLabel","locale","isSubmitDisabled","isSameDateRange","numberOfMonths","jsx","EditorCard","Dropdown","SelectFieldTrigger","IconCalendarFilled","SelectFieldContent","styles","jsxs","SelectListOption","i18n","e","IconChevronLeft","DateRangePicker","Button","SelectFieldContentList","IconChevronRight","meta","inputs","Value","preview","definePreview","Component","events","range","dateRangeSelectFieldPro"],"mappings":"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"}
1
+ {"version":3,"file":"definition-I1tZR9Mu.js","sources":["../src/components/editors/dates/DateRangePickerPresetsPro/DateRangePickerPresetsPro.utils.ts","../src/components/editors/dates/DateRangePickerPresetsPro/index.tsx","../src/components/editors/dates/DateRangePickerPresetsPro/definition.ts"],"sourcesContent":["import { DateRangeSelectFieldProOption } from './DateRangePickerPresetsPro.types';\nimport { SelectListOptionProps } from '@embeddable.com/remarkable-ui';\nimport { resolveI18nString } from '../../../component.utils';\nimport { getTimeRangeLabel } from '../dates.utils';\n\nexport const getDateRangeSelectFieldProOptions = (\n dateRangeSelectFieldProOptions: DateRangeSelectFieldProOption[],\n): SelectListOptionProps[] => {\n return dateRangeSelectFieldProOptions.map((option) => {\n return {\n rightLabel: getTimeRangeLabel(option.getRange(), option.dateFormat),\n value: option.value,\n label: resolveI18nString(option.label),\n };\n });\n};\n","import { useTheme } from '@embeddable.com/react';\nimport {\n Button,\n DateRangePicker,\n Dropdown,\n SelectFieldContent,\n SelectFieldContentList,\n SelectListOption,\n DateRange,\n SelectFieldTrigger,\n isSameDateRange,\n shallowEqual,\n} from '@embeddable.com/remarkable-ui';\nimport { Theme } from '../../../../theme/theme.types';\nimport { useLoadDayjsLocale } from '../../../../utils/date.utils';\nimport { getDateRangeSelectFieldProOptions } from './DateRangePickerPresetsPro.utils';\nimport { TimeRange } from '@embeddable.com/core';\nimport { resolveI18nProps } from '../../../component.utils';\nimport { EditorCard, EditorCardHeaderProps } from '../../shared/EditorCard/EditorCard';\nimport { IconCalendarFilled, IconChevronLeft, IconChevronRight } from '@tabler/icons-react';\nimport { i18n, i18nSetup } from '../../../../theme/i18n/i18n';\nimport { useEffect, useState } from 'react';\nimport styles from './DateRangePickerPresetsPro.module.css';\nimport {\n getDateRangeFromTimeRange,\n getTimeRangeFromDateRange,\n getTimeRangeFromPresets,\n getTimeRangeLabel,\n} from '../dates.utils';\n\nexport type DateRangePickerPresetsProps = {\n onChange: (newDateRange: TimeRange) => void;\n placeholder?: string;\n selectedValue?: TimeRange;\n\n clearable?: boolean;\n showCustomRangeOptions?: boolean;\n showTwoMonths?: boolean;\n} & EditorCardHeaderProps;\n\nconst DateRangePickerPresets = (props: DateRangePickerPresetsProps) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n const { dayjsLocaleReady } = useLoadDayjsLocale();\n const { onChange, clearable, selectedValue, showCustomRangeOptions, showTwoMonths } = props;\n const onlyDateRangePicker = !showCustomRangeOptions;\n const [showDateRangePicker, setShowDateRangePicker] = useState(onlyDateRangePicker);\n\n const [isOpen, setIsOpen] = useState(false);\n const [dateRange, setDateRange] = useState<DateRange | undefined>(\n getDateRangeFromTimeRange(selectedValue),\n );\n\n const dateRangeOptions = theme.defaults.dateRangesOptions;\n\n useEffect(() => {\n if (!dayjsLocaleReady) {\n return;\n }\n // Step 1: Convert relativeTimeString to actual time range (from/to)\n const newTimeRange = getTimeRangeFromPresets(selectedValue, dateRangeOptions);\n\n if (!shallowEqual(newTimeRange, selectedValue)) {\n onChange(newTimeRange);\n }\n }, [selectedValue, dayjsLocaleReady, onChange, dateRangeOptions]);\n\n if (!dayjsLocaleReady) {\n return null;\n }\n\n const { description, placeholder, title, tooltip } = resolveI18nProps(props);\n\n const options = getDateRangeSelectFieldProOptions(dateRangeOptions);\n\n const handleOptionChange = (newValue: string | undefined) => {\n const newTimeRange = getTimeRangeFromPresets(\n { relativeTimeString: newValue } as TimeRange,\n dateRangeOptions,\n );\n\n onChange(newTimeRange);\n setDateRange(undefined);\n };\n\n const handleDateRangeChange = (newDateRange: DateRange | undefined) => {\n onChange(getTimeRangeFromDateRange(newDateRange));\n setIsOpen(false);\n };\n\n const handleClear = () => {\n setDateRange(undefined);\n onChange(undefined);\n };\n\n const getValueLabel = () => {\n if (selectedValue?.relativeTimeString) {\n const option = options.find((option) => option.value === selectedValue.relativeTimeString);\n if (option) {\n return option.label;\n }\n }\n\n if (selectedValue?.from && selectedValue?.to) {\n return getTimeRangeLabel(selectedValue, 'MMM DD');\n }\n\n return '';\n };\n\n const valueLabel = getValueLabel();\n\n const locale = theme.i18n.language ?? theme.formatter.locale;\n const isSubmitDisabled = isSameDateRange(dateRange, selectedValue);\n const numberOfMonths = showTwoMonths ? 2 : 1;\n\n return (\n <EditorCard title={title} description={description} tooltip={tooltip}>\n <Dropdown\n open={isOpen}\n onOpenChange={setIsOpen}\n avoidCollisions={false}\n triggerComponent={\n <SelectFieldTrigger\n startIcon={IconCalendarFilled}\n aria-label={placeholder}\n placeholder={placeholder}\n valueLabel={valueLabel}\n onClear={handleClear}\n isClearable={clearable}\n />\n }\n >\n <SelectFieldContent fitContent className={styles.dateRangePickerContent}>\n {showDateRangePicker ? (\n <div className={styles.dateRangePickerContainer}>\n {!onlyDateRangePicker && (\n <SelectListOption\n label={i18n.t('editors.dateRangePicker.backToPresets')}\n onClick={(e) => {\n e.preventDefault();\n setShowDateRangePicker(false);\n }}\n startIcon={<IconChevronLeft />}\n />\n )}\n <DateRangePicker\n locale={locale}\n numberOfMonths={numberOfMonths}\n value={dateRange}\n onChange={setDateRange}\n />\n <Button\n size=\"small\"\n disabled={isSubmitDisabled}\n onClick={() => handleDateRangeChange(dateRange)}\n >\n {i18n.t('editors.dateRangePicker.apply')}\n </Button>\n </div>\n ) : (\n <SelectFieldContentList>\n <SelectListOption\n label={i18n.t('editors.dateRangePicker.custom')}\n onClick={(e) => {\n e.preventDefault();\n setShowDateRangePicker(true);\n }}\n endIcon={<IconChevronRight />}\n />\n {options.map((option) => (\n <SelectListOption\n key={option.value}\n {...option}\n isSelected={selectedValue?.relativeTimeString === option.value}\n onClick={() => handleOptionChange(option.value)}\n />\n ))}\n </SelectFieldContentList>\n )}\n </SelectFieldContent>\n </Dropdown>\n </EditorCard>\n );\n};\n\nexport default DateRangePickerPresets;\n","import { EmbeddedComponentMeta, Inputs, definePreview } from '@embeddable.com/react';\nimport { TimeRange, Value } from '@embeddable.com/core';\nimport Component from './index';\nimport { inputs } from '../../../component.inputs.constants';\n\nconst meta = {\n name: 'DateRangeSelectFieldPro',\n label: 'Date-Range Picker - Presets',\n category: 'Dropdowns - dates',\n defaultWidth: 300,\n defaultHeight: 120,\n inputs: [\n inputs.title,\n inputs.description,\n inputs.tooltip,\n { ...inputs.placeholder, defaultValue: 'Select a date-range' },\n {\n ...inputs.boolean,\n name: 'showCustomRangeOptions',\n label: 'Show custom date-range option',\n defaultValue: true,\n category: 'Component Settings',\n },\n {\n ...inputs.boolean,\n name: 'showTwoMonths',\n label: 'Show two-month view',\n defaultValue: false,\n category: 'Component Settings',\n },\n inputs.clearable,\n {\n ...inputs.timeRange,\n name: 'selectedValue',\n label: 'Selected value',\n category: 'Pre-configured variables',\n },\n ],\n events: [\n {\n name: 'onChange',\n label: 'Selected date-range updated',\n properties: [\n {\n name: 'value',\n label: 'Selected date-range',\n type: 'timeRange',\n },\n {\n name: 'fromDate',\n label: 'Start date of selected range',\n type: 'time',\n },\n {\n name: 'toDate',\n label: 'To date of selected range',\n type: 'time',\n },\n ],\n },\n ],\n variables: [\n {\n name: 'date-range value',\n type: 'timeRange',\n defaultValue: Value.noFilter(),\n inputs: ['selectedValue'],\n events: [{ name: 'onChange', property: 'value' }],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nconst preview = definePreview(Component, {\n showCustomRangeOptions: true,\n onChange: () => null,\n});\n\nconst props = (inputs: Inputs<typeof meta>) => {\n return {\n ...inputs,\n };\n};\n\nconst events = {\n onChange: (timeRange: TimeRange) => {\n return {\n value: timeRange ?? Value.noFilter(),\n fromDate: timeRange?.from ? { date: timeRange?.from } : Value.noFilter(),\n toDate: timeRange?.to ? { date: timeRange?.to } : Value.noFilter(),\n };\n },\n};\n\nexport const dateRangeSelectFieldPro = {\n Component,\n meta,\n preview,\n config: {\n props,\n events,\n },\n} as const;\n"],"names":["getDateRangeSelectFieldProOptions","dateRangeSelectFieldProOptions","option","getTimeRangeLabel","resolveI18nString","DateRangePickerPresets","props","theme","useTheme","i18nSetup","dayjsLocaleReady","useLoadDayjsLocale","onChange","clearable","selectedValue","showCustomRangeOptions","showTwoMonths","onlyDateRangePicker","showDateRangePicker","setShowDateRangePicker","useState","isOpen","setIsOpen","dateRange","setDateRange","getDateRangeFromTimeRange","dateRangeOptions","useEffect","newTimeRange","getTimeRangeFromPresets","shallowEqual","description","placeholder","title","tooltip","resolveI18nProps","options","handleOptionChange","newValue","handleDateRangeChange","newDateRange","getTimeRangeFromDateRange","handleClear","valueLabel","locale","isSubmitDisabled","isSameDateRange","numberOfMonths","jsx","EditorCard","Dropdown","SelectFieldTrigger","IconCalendarFilled","SelectFieldContent","styles","jsxs","SelectListOption","i18n","e","IconChevronLeft","DateRangePicker","Button","SelectFieldContentList","IconChevronRight","meta","inputs","Value","preview","definePreview","Component","events","timeRange","dateRangeSelectFieldPro"],"mappings":"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"}
@@ -1,37 +1,37 @@
1
1
  {
2
2
  "components": [
3
3
  "DimensionMeasureMultiSelectFieldPro",
4
+ "MarkdownPro",
5
+ "DimensionSingleSelectFieldPro",
6
+ "MeasureMultiSelectFieldPro",
7
+ "MeasureSingleSelectFieldPro",
4
8
  "ComparisonPeriodSelectFieldPro",
9
+ "DateRangePickerCustomPro",
5
10
  "GranularitySelectFieldPro",
6
- "TextFieldPro",
7
- "DimensionSingleSelectFieldPro",
8
11
  "SingleSelectFieldPro",
9
- "BarChartDefaultPro",
10
12
  "MultiSelectFieldPro",
11
- "DateRangePickerCustomPro",
12
- "MeasureMultiSelectFieldPro",
13
- "MeasureSingleSelectFieldPro",
14
- "KpiChartNumberPro",
15
- "LineChartDefaultPro",
16
- "BarChartStackedPro",
13
+ "TextFieldPro",
14
+ "HorizontalDividerPro",
17
15
  "BarChartGroupedHorizontalPro",
16
+ "BarChartDefaultPro",
17
+ "BarChartStackedHorizontalPro",
18
18
  "KpiChartNumberComparisonPro",
19
+ "BarChartStackedPro",
20
+ "BarChartDefaultHorizontalPro",
21
+ "DateRangeSelectFieldPro",
19
22
  "BarChartGroupedPro",
20
- "BarChartStackedHorizontalPro",
21
- "MarkdownPro",
23
+ "HeatMapPro",
22
24
  "EmptyBlockPro",
23
- "HorizontalDividerPro",
24
25
  "LineChartComparisonDefaultPro",
25
- "BarChartDefaultHorizontalPro",
26
- "DonutChartPro",
27
- "DateRangeSelectFieldPro",
28
- "TableScrollable",
29
26
  "LineChartGroupedPro",
30
- "PieChartPro",
27
+ "TableScrollable",
28
+ "DonutLabelChartPro",
29
+ "LineChartDefaultPro",
31
30
  "TableChartPaginated",
32
- "PivotTablePro",
33
- "HeatMapPro",
34
- "DonutLabelChartPro"
31
+ "DonutChartPro",
32
+ "PieChartPro",
33
+ "KpiChartNumberPro",
34
+ "PivotTablePro"
35
35
  ],
36
36
  "editors": [
37
37
  "MarkdownEditor",
@@ -39,37 +39,37 @@
39
39
  ],
40
40
  "previews": [
41
41
  "DimensionMeasureMultiSelectFieldPro",
42
+ "MarkdownPro",
43
+ "DimensionSingleSelectFieldPro",
44
+ "MeasureMultiSelectFieldPro",
45
+ "MeasureSingleSelectFieldPro",
42
46
  "ComparisonPeriodSelectFieldPro",
47
+ "DateRangePickerCustomPro",
43
48
  "GranularitySelectFieldPro",
44
- "TextFieldPro",
45
- "DimensionSingleSelectFieldPro",
46
49
  "SingleSelectFieldPro",
47
- "BarChartDefaultPro",
48
50
  "MultiSelectFieldPro",
49
- "DateRangePickerCustomPro",
50
- "MeasureMultiSelectFieldPro",
51
- "MeasureSingleSelectFieldPro",
52
- "KpiChartNumberPro",
53
- "LineChartDefaultPro",
54
- "BarChartStackedPro",
51
+ "TextFieldPro",
52
+ "HorizontalDividerPro",
55
53
  "BarChartGroupedHorizontalPro",
54
+ "BarChartDefaultPro",
55
+ "BarChartStackedHorizontalPro",
56
56
  "KpiChartNumberComparisonPro",
57
+ "BarChartStackedPro",
58
+ "BarChartDefaultHorizontalPro",
59
+ "DateRangeSelectFieldPro",
57
60
  "BarChartGroupedPro",
58
- "BarChartStackedHorizontalPro",
59
- "MarkdownPro",
61
+ "HeatMapPro",
60
62
  "EmptyBlockPro",
61
- "HorizontalDividerPro",
62
63
  "LineChartComparisonDefaultPro",
63
- "BarChartDefaultHorizontalPro",
64
- "DonutChartPro",
65
- "DateRangeSelectFieldPro",
66
- "TableScrollable",
67
64
  "LineChartGroupedPro",
68
- "PieChartPro",
65
+ "TableScrollable",
66
+ "DonutLabelChartPro",
67
+ "LineChartDefaultPro",
69
68
  "TableChartPaginated",
70
- "PivotTablePro",
71
- "HeatMapPro",
72
- "DonutLabelChartPro"
69
+ "DonutChartPro",
70
+ "PieChartPro",
71
+ "KpiChartNumberPro",
72
+ "PivotTablePro"
73
73
  ],
74
74
  "plugin": "react"
75
75
  }
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { g as r, a as o, b as t, i as s } from "./styles.utils-BfpH_m_W.js";
2
2
  import { i as l, s as n } from "./color.utils-BSg_DFOh.js";
3
3
  import { c as m, g as P, a as d, i as g, p as u } from "./preview.data.constants-BZ8b6ZQ1.js";
4
- import { g as f, a as b, b as h, c as x, l as S, d as c, u as D } from "./dates.utils-C44-7RLR.js";
4
+ import { g as f, a as b, b as h, c as x, l as S, d as c, u as D } from "./dates.utils-BkOKKqSH.js";
5
5
  import { d as T, a as G, b as L, c as O, e as k, f as M, g as R, h as y, i as v, r as B, j as H, k as A } from "./charts.utils-c8yku90J.js";
6
6
  import { i as z, a as E, r as w, b as j } from "./component.utils-CbnwaSi1.js";
7
7
  import { C as V, G as K, d as W, a as X, g as _, i as U, s as Z, t as q, b as J } from "./component.inputs.constants-Cs7gX1rI.js";
@@ -36,9 +36,9 @@ import { i as Ee, e as we } from "./definition-B4ALO0PD.js";
36
36
  import { i as Ne, h as Ve } from "./definition-Dxfa1Pgg.js";
37
37
  import { i as We, m as Xe } from "./definition-Dx_ekjOR.js";
38
38
  import { u as Ue } from "./charts.fillGaps.hooks-PCeJ5uuu.js";
39
- import { i as qe, c as Je, g as Qe, a as Ye } from "./definition-Dy6sdVbU.js";
40
- import { i as ar, d as er, g as rr } from "./definition-cZxEU0FY.js";
41
- import { i as tr, d as sr } from "./definition-DyMdJqf8.js";
39
+ import { i as qe, c as Je, g as Qe, a as Ye } from "./definition-DvYcZXNL.js";
40
+ import { i as ar, d as er, g as rr } from "./definition-I1tZR9Mu.js";
41
+ import { i as tr, d as sr } from "./definition-CBNh4l83.js";
42
42
  import { i as lr, m as nr } from "./definition-DMbgucms.js";
43
43
  import { i as mr, s as Pr } from "./definition-DzFPFv2i.js";
44
44
  import { i as gr, d as ur } from "./definition-Crkfoxb6.js";
@@ -1,43 +1,45 @@
1
1
  import { A as u } from "./index-CnLFSN1m.js";
2
2
  import { r as f } from "./utc-OYNdM3Of.js";
3
- function d(n, a) {
4
- for (var _ = 0; _ < a.length; _++) {
5
- const e = a[_];
6
- if (typeof e != "string" && !Array.isArray(e)) {
7
- for (const t in e)
8
- if (t !== "default" && !(t in n)) {
9
- const o = Object.getOwnPropertyDescriptor(e, t);
10
- o && Object.defineProperty(n, t, o.get ? o : {
3
+ function d(n, i) {
4
+ for (var _ = 0; _ < i.length; _++) {
5
+ const t = i[_];
6
+ if (typeof t != "string" && !Array.isArray(t)) {
7
+ for (const r in t)
8
+ if (r !== "default" && !(r in n)) {
9
+ const o = Object.getOwnPropertyDescriptor(t, r);
10
+ o && Object.defineProperty(n, r, o.get ? o : {
11
11
  enumerable: !0,
12
- get: () => e[t]
12
+ get: () => t[r]
13
13
  });
14
14
  }
15
15
  }
16
16
  }
17
17
  return Object.freeze(Object.defineProperty(n, Symbol.toStringTag, { value: "Module" }));
18
18
  }
19
- var s = { exports: {} }, p = s.exports, i;
19
+ var s = { exports: {} }, p = s.exports, m;
20
20
  function l() {
21
- return i || (i = 1, (function(n, a) {
22
- (function(_, e) {
23
- n.exports = e(f());
21
+ return m || (m = 1, (function(n, i) {
22
+ (function(_, t) {
23
+ n.exports = t(f());
24
24
  })(p, (function(_) {
25
- function e(r) {
26
- return r && typeof r == "object" && "default" in r ? r : { default: r };
25
+ function t(e) {
26
+ return e && typeof e == "object" && "default" in e ? e : { default: e };
27
27
  }
28
- var t = e(_), o = { name: "km", weekdays: "អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍".split("_"), months: "មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ".split("_"), weekStart: 1, weekdaysShort: "អា_ច_អ_ព_ព្រ_សុ_ស".split("_"), monthsShort: "មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ".split("_"), weekdaysMin: "អា_ច_អ_ព_ព្រ_សុ_ស".split("_"), ordinal: function(r) {
29
- return r;
30
- }, formats: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd, D MMMM YYYY HH:mm" }, relativeTime: { future: "%sទៀត", past: "%sមុន", s: "ប៉ុន្មានវិនាទី", m: "មួយនាទី", mm: "%d នាទី", h: "មួយម៉ោង", hh: "%d ម៉ោង", d: "មួយថ្ងៃ", dd: "%d ថ្ងៃ", M: "មួយខែ", MM: "%d ខែ", y: "មួយឆ្នាំ", yy: "%d ឆ្នាំ" } };
31
- return t.default.locale(o, null, !0), o;
28
+ var r = t(_), o = { name: "km", weekdays: "អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍".split("_"), months: "មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ".split("_"), weekStart: 1, weekdaysShort: "អា_ច_អ_ព_ព្រ_សុ_ស".split("_"), monthsShort: "មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ".split("_"), weekdaysMin: "អា_ច_អ_ព_ព្រ_សុ_ស".split("_"), ordinal: function(e) {
29
+ return e;
30
+ }, formats: { LT: "HH:mm", LTS: "HH:mm:ss", L: "DD/MM/YYYY", LL: "D MMMM YYYY", LLL: "D MMMM YYYY HH:mm", LLLL: "dddd, D MMMM YYYY HH:mm" }, relativeTime: { future: "%sទៀត", past: "%sមុន", s: "ប៉ុន្មានវិនាទី", m: "មួយនាទី", mm: "%d នាទី", h: "មួយម៉ោង", hh: "%d ម៉ោង", d: "មួយថ្ងៃ", dd: "%d ថ្ងៃ", M: "មួយខែ", MM: "%d ខែ", y: "មួយឆ្នាំ", yy: "%d ឆ្នាំ" }, meridiem: function(e) {
31
+ return e > 12 ? "ល្ងាច" : "ព្រឹក";
32
+ } };
33
+ return r.default.locale(o, null, !0), o;
32
34
  }));
33
35
  })(s)), s.exports;
34
36
  }
35
- var m = l();
36
- const c = /* @__PURE__ */ u(m), y = /* @__PURE__ */ d({
37
+ var a = l();
38
+ const c = /* @__PURE__ */ u(a), y = /* @__PURE__ */ d({
37
39
  __proto__: null,
38
40
  default: c
39
- }, [m]);
41
+ }, [a]);
40
42
  export {
41
43
  y as k
42
44
  };
43
- //# sourceMappingURL=km-D7TzqXJr.js.map
45
+ //# sourceMappingURL=km-DVInE0MH.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"km-DVInE0MH.js","sources":["../node_modules/dayjs/locale/km.js"],"sourcesContent":["!function(e,_){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=_(require(\"dayjs\")):\"function\"==typeof define&&define.amd?define([\"dayjs\"],_):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_locale_km=_(e.dayjs)}(this,(function(e){\"use strict\";function _(e){return e&&\"object\"==typeof e&&\"default\"in e?e:{default:e}}var t=_(e),d={name:\"km\",weekdays:\"អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍\".split(\"_\"),months:\"មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ\".split(\"_\"),weekStart:1,weekdaysShort:\"អា_ច_អ_ព_ព្រ_សុ_ស\".split(\"_\"),monthsShort:\"មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ\".split(\"_\"),weekdaysMin:\"អា_ច_អ_ព_ព្រ_សុ_ស\".split(\"_\"),ordinal:function(e){return e},formats:{LT:\"HH:mm\",LTS:\"HH:mm:ss\",L:\"DD/MM/YYYY\",LL:\"D MMMM YYYY\",LLL:\"D MMMM YYYY HH:mm\",LLLL:\"dddd, D MMMM YYYY HH:mm\"},relativeTime:{future:\"%sទៀត\",past:\"%sមុន\",s:\"ប៉ុន្មានវិនាទី\",m:\"មួយនាទី\",mm:\"%d នាទី\",h:\"មួយម៉ោង\",hh:\"%d ម៉ោង\",d:\"មួយថ្ងៃ\",dd:\"%d ថ្ងៃ\",M:\"មួយខែ\",MM:\"%d ខែ\",y:\"មួយឆ្នាំ\",yy:\"%d ឆ្នាំ\"},meridiem:function(e){return e>12?\"ល្ងាច\":\"ព្រឹក\"}};return t.default.locale(d,null,!0),d}));"],"names":["e","_","module","require$$0","this","t","d"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,KAAC,SAASA,GAAEC,GAAE;AAAsD,MAAAC,EAAA,UAAeD,EAAEE,EAAA,CAAgB;AAAA,IAA4I,GAAEC,IAAM,SAASJ,GAAE;AAAc,eAASC,EAAE,GAAE;AAAC,eAAO,KAAa,OAAO,KAAjB,YAAoB,aAAY,IAAE,IAAE,EAAC,SAAQ,EAAC;AAAA,MAAC;AAAC,UAAII,IAAEJ,EAAED,CAAC,GAAEM,IAAE,EAAC,MAAK,MAAK,UAAS,iDAAiD,MAAM,GAAG,GAAE,QAAO,yEAAyE,MAAM,GAAG,GAAE,WAAU,GAAE,eAAc,oBAAoB,MAAM,GAAG,GAAE,aAAY,yEAAyE,MAAM,GAAG,GAAE,aAAY,oBAAoB,MAAM,GAAG,GAAE,SAAQ,SAAS,GAAE;AAAC,eAAO;AAAA,MAAC,GAAE,SAAQ,EAAC,IAAG,SAAQ,KAAI,YAAW,GAAE,cAAa,IAAG,eAAc,KAAI,qBAAoB,MAAK,0BAAyB,GAAE,cAAa,EAAC,QAAO,SAAQ,MAAK,SAAQ,GAAE,kBAAiB,GAAE,WAAU,IAAG,WAAU,GAAE,WAAU,IAAG,WAAU,GAAE,WAAU,IAAG,WAAU,GAAE,SAAQ,IAAG,SAAQ,GAAE,YAAW,IAAG,WAAU,GAAE,UAAS,SAAS,GAAE;AAAC,eAAO,IAAE,KAAG,UAAQ;AAAA,MAAO,EAAC;AAAE,aAAOD,EAAE,QAAQ,OAAOC,GAAE,MAAK,EAAE,GAAEA;AAAA,IAAC,EAAC;AAAA;;;;;;;","x_google_ignoreList":[0]}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@embeddable.com/remarkable-pro",
3
3
  "author": "embeddable (https://embeddable.com)",
4
- "version": "0.1.23",
4
+ "version": "0.1.24",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/embeddable-hq/remarkable-pro"
@@ -62,7 +62,7 @@
62
62
  "dependencies": {
63
63
  "@changesets/cli": "^2.29.6",
64
64
  "@embeddable.com/core": "^2.13.6",
65
- "@embeddable.com/react": "^2.13.4",
65
+ "@embeddable.com/react": "^2.13.5",
66
66
  "@embeddable.com/remarkable-ui": "^2.0.45",
67
67
  "@tabler/icons-react": "^3.34.1",
68
68
  "chart.js": "^4.5.0",
@@ -77,8 +77,8 @@
77
77
  "xlsx": "npm:@e965/xlsx@^0.20.3"
78
78
  },
79
79
  "devDependencies": {
80
- "@embeddable.com/sdk-core": "^4.2.0",
81
- "@embeddable.com/sdk-react": "4.3.1",
80
+ "@embeddable.com/sdk-core": "^4.3.1",
81
+ "@embeddable.com/sdk-react": "^4.3.3",
82
82
  "@eslint/css": "^0.13.0",
83
83
  "@testing-library/react": "^16.3.2",
84
84
  "@types/chroma-js": "^3.1.1",
@@ -1,105 +0,0 @@
1
- import { useTheme as y, definePreview as P } from "@embeddable.com/react";
2
- import { j as s, v as D, V as r } from "./index-CnLFSN1m.js";
3
- import { u as w, c as S, g as V, a as j } from "./dates.utils-C44-7RLR.js";
4
- import { a as M, r as T, i as k } from "./component.utils-CbnwaSi1.js";
5
- import { E as x } from "./EditorCard-DhASZ5NL.js";
6
- import { I as F } from "./IconCalendarFilled-DaTHLPcZ.js";
7
- import { i as e } from "./component.inputs.constants-Cs7gX1rI.js";
8
- const n = (a) => {
9
- const t = y();
10
- M(t);
11
- const { dayjsLocaleReady: i } = w();
12
- if (!i)
13
- return null;
14
- const { description: c, placeholder: d, title: u, tooltip: m } = T(a), { onChange: g, clearable: p, selectedValue: o, showTwoMonths: f } = a, h = (v) => {
15
- const C = j(v);
16
- g(C);
17
- }, l = t.defaults.dateRangesOptions, R = S(o, "MMM DD", l), b = t.i18n.language ?? t.formatter.locale;
18
- return /* @__PURE__ */ s.jsx(x, { title: u, description: c, tooltip: m, children: /* @__PURE__ */ s.jsx(
19
- D,
20
- {
21
- startIcon: F,
22
- locale: b,
23
- clearable: p,
24
- placeholder: d,
25
- displayValue: R,
26
- numberOfMonths: f ? 2 : 1,
27
- value: V(o, l),
28
- onChange: h,
29
- submitLabel: k.t("editors.dateRangePicker.apply"),
30
- avoidCollisions: !1
31
- }
32
- ) });
33
- }, G = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
34
- __proto__: null,
35
- default: n
36
- }, Symbol.toStringTag, { value: "Module" })), L = {
37
- name: "DateRangePickerCustomPro",
38
- label: "Date-Range Picker - Custom",
39
- category: "Dropdowns - dates",
40
- defaultWidth: 300,
41
- defaultHeight: 120,
42
- inputs: [
43
- e.title,
44
- e.description,
45
- e.tooltip,
46
- { ...e.placeholder, defaultValue: "Select a date-range" },
47
- e.clearable,
48
- {
49
- ...e.timeRange,
50
- name: "selectedValue",
51
- label: "Selected value",
52
- category: "Pre-configured variables"
53
- },
54
- {
55
- ...e.boolean,
56
- name: "showTwoMonths",
57
- label: "Show two months",
58
- defaultValue: !1,
59
- category: "Component Settings"
60
- }
61
- ],
62
- events: [
63
- {
64
- name: "onChange",
65
- label: "Selected date-range updated",
66
- properties: [
67
- {
68
- name: "value",
69
- label: "Selected date-range",
70
- type: "timeRange"
71
- }
72
- ]
73
- }
74
- ],
75
- variables: [
76
- {
77
- name: "date-range value",
78
- type: "timeRange",
79
- defaultValue: r.noFilter(),
80
- inputs: ["selectedValue"],
81
- events: [{ name: "onChange", property: "value" }]
82
- }
83
- ]
84
- }, O = P(n, {
85
- onChange: () => null
86
- }), I = (a) => ({
87
- ...a
88
- }), _ = {
89
- onChange: (a) => ({
90
- value: a ?? r.noFilter()
91
- })
92
- }, J = {
93
- Component: n,
94
- meta: L,
95
- preview: O,
96
- config: {
97
- props: I,
98
- events: _
99
- }
100
- };
101
- export {
102
- J as d,
103
- G as i
104
- };
105
- //# sourceMappingURL=definition-DyMdJqf8.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"definition-DyMdJqf8.js","sources":["../src/components/editors/dates/DateRangePickerCustomPro/index.tsx","../src/components/editors/dates/DateRangePickerCustomPro/definition.ts"],"sourcesContent":["import { useTheme } from '@embeddable.com/react';\nimport { DateRange, DateRangePickerField } from '@embeddable.com/remarkable-ui';\nimport { Theme } from '../../../../theme/theme.types';\nimport { useLoadDayjsLocale } from '../../../../utils/date.utils';\nimport { TimeRange } from '@embeddable.com/core';\nimport { resolveI18nProps } from '../../../component.utils';\nimport { EditorCard, EditorCardHeaderProps } from '../../shared/EditorCard/EditorCard';\nimport { i18n, i18nSetup } from '../../../../theme/i18n/i18n';\nimport {\n getDateRangeFromTimeRange,\n getTimeRangeFromDateRange,\n getTimeRangeLabel,\n} from '../dates.utils';\nimport { IconCalendarFilled } from '@tabler/icons-react';\n\nexport type DateRangePickerPresetsProps = {\n onChange: (newDateRange: TimeRange) => void;\n placeholder?: string;\n selectedValue?: TimeRange;\n clearable?: boolean;\n showTwoMonths?: boolean;\n} & EditorCardHeaderProps;\n\nconst DateRangePickerPresets = (props: DateRangePickerPresetsProps) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const { dayjsLocaleReady } = useLoadDayjsLocale();\n\n if (!dayjsLocaleReady) {\n return null;\n }\n\n const { description, placeholder, title, tooltip } = resolveI18nProps(props);\n const { onChange, clearable, selectedValue, showTwoMonths } = props;\n\n const handleChange = (newDateRange: DateRange | undefined) => {\n const timeRange: TimeRange = getTimeRangeFromDateRange(newDateRange);\n onChange(timeRange);\n };\n\n const dateRangeOptions = theme.defaults.dateRangesOptions;\n const displayValue = getTimeRangeLabel(selectedValue, 'MMM DD', dateRangeOptions);\n\n const locale = theme.i18n.language ?? theme.formatter.locale;\n\n return (\n <EditorCard title={title} description={description} tooltip={tooltip}>\n <DateRangePickerField\n startIcon={IconCalendarFilled}\n locale={locale}\n clearable={clearable}\n placeholder={placeholder}\n displayValue={displayValue}\n numberOfMonths={showTwoMonths ? 2 : 1}\n value={getDateRangeFromTimeRange(selectedValue, dateRangeOptions)}\n onChange={handleChange}\n submitLabel={i18n.t('editors.dateRangePicker.apply')}\n avoidCollisions={false}\n />\n </EditorCard>\n );\n};\n\nexport default DateRangePickerPresets;\n","import { EmbeddedComponentMeta, Inputs, definePreview } from '@embeddable.com/react';\nimport { Value } from '@embeddable.com/core';\nimport Component from './index';\nimport { inputs } from '../../../component.inputs.constants';\n\nconst meta = {\n name: 'DateRangePickerCustomPro',\n label: 'Date-Range Picker - Custom',\n category: 'Dropdowns - dates',\n defaultWidth: 300,\n defaultHeight: 120,\n inputs: [\n inputs.title,\n inputs.description,\n inputs.tooltip,\n { ...inputs.placeholder, defaultValue: 'Select a date-range' },\n inputs.clearable,\n {\n ...inputs.timeRange,\n name: 'selectedValue',\n label: 'Selected value',\n category: 'Pre-configured variables',\n },\n {\n ...inputs.boolean,\n name: 'showTwoMonths',\n label: 'Show two months',\n defaultValue: false,\n category: 'Component Settings',\n },\n ],\n events: [\n {\n name: 'onChange',\n label: 'Selected date-range updated',\n properties: [\n {\n name: 'value',\n label: 'Selected date-range',\n type: 'timeRange',\n },\n ],\n },\n ],\n variables: [\n {\n name: 'date-range value',\n type: 'timeRange',\n defaultValue: Value.noFilter(),\n inputs: ['selectedValue'],\n events: [{ name: 'onChange', property: 'value' }],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nconst preview = definePreview(Component, {\n onChange: () => null,\n});\n\nconst props = (inputs: Inputs<typeof meta>) => {\n return {\n ...inputs,\n };\n};\n\nconst events = {\n onChange: (range: unknown) => ({\n value: range ?? Value.noFilter(),\n }),\n};\n\nexport const dateRangePickerCustomPro = {\n Component,\n meta,\n preview,\n config: {\n props,\n events,\n },\n} as const;\n"],"names":["DateRangePickerPresets","props","theme","useTheme","i18nSetup","dayjsLocaleReady","useLoadDayjsLocale","description","placeholder","title","tooltip","resolveI18nProps","onChange","clearable","selectedValue","showTwoMonths","handleChange","newDateRange","timeRange","getTimeRangeFromDateRange","dateRangeOptions","displayValue","getTimeRangeLabel","locale","jsx","EditorCard","DateRangePickerField","IconCalendarFilled","getDateRangeFromTimeRange","i18n","meta","inputs","Value","preview","definePreview","Component","events","range","dateRangePickerCustomPro"],"mappings":";;;;;;;AAuBA,MAAMA,IAAyB,CAACC,MAAuC;AACrE,QAAMC,IAAeC,EAAA;AACrB,EAAAC,EAAUF,CAAK;AAEf,QAAM,EAAE,kBAAAG,EAAA,IAAqBC,EAAA;AAE7B,MAAI,CAACD;AACH,WAAO;AAGT,QAAM,EAAE,aAAAE,GAAa,aAAAC,GAAa,OAAAC,GAAO,SAAAC,EAAA,IAAYC,EAAiBV,CAAK,GACrE,EAAE,UAAAW,GAAU,WAAAC,GAAW,eAAAC,GAAe,eAAAC,MAAkBd,GAExDe,IAAe,CAACC,MAAwC;AAC5D,UAAMC,IAAuBC,EAA0BF,CAAY;AACnE,IAAAL,EAASM,CAAS;AAAA,EACpB,GAEME,IAAmBlB,EAAM,SAAS,mBAClCmB,IAAeC,EAAkBR,GAAe,UAAUM,CAAgB,GAE1EG,IAASrB,EAAM,KAAK,YAAYA,EAAM,UAAU;AAEtD,SACEsB,gBAAAA,EAAAA,IAACC,GAAA,EAAW,OAAAhB,GAAc,aAAAF,GAA0B,SAAAG,GAClD,UAAAc,gBAAAA,EAAAA;AAAAA,IAACE;AAAA,IAAA;AAAA,MACC,WAAWC;AAAA,MACX,QAAAJ;AAAA,MACA,WAAAV;AAAA,MACA,aAAAL;AAAA,MACA,cAAAa;AAAA,MACA,gBAAgBN,IAAgB,IAAI;AAAA,MACpC,OAAOa,EAA0Bd,GAAeM,CAAgB;AAAA,MAChE,UAAUJ;AAAA,MACV,aAAaa,EAAK,EAAE,+BAA+B;AAAA,MACnD,iBAAiB;AAAA,IAAA;AAAA,EAAA,GAErB;AAEJ;;;8CCzDMC,IAAO;AAAA,EACX,MAAM;AAAA,EACN,OAAO;AAAA,EACP,UAAU;AAAA,EACV,cAAc;AAAA,EACd,eAAe;AAAA,EACf,QAAQ;AAAA,IACNC,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACP,EAAE,GAAGA,EAAO,aAAa,cAAc,sBAAA;AAAA,IACvCA,EAAO;AAAA,IACP;AAAA,MACE,GAAGA,EAAO;AAAA,MACV,MAAM;AAAA,MACN,OAAO;AAAA,MACP,UAAU;AAAA,IAAA;AAAA,IAEZ;AAAA,MACE,GAAGA,EAAO;AAAA,MACV,MAAM;AAAA,MACN,OAAO;AAAA,MACP,cAAc;AAAA,MACd,UAAU;AAAA,IAAA;AAAA,EACZ;AAAA,EAEF,QAAQ;AAAA,IACN;AAAA,MACE,MAAM;AAAA,MACN,OAAO;AAAA,MACP,YAAY;AAAA,QACV;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,UACP,MAAM;AAAA,QAAA;AAAA,MACR;AAAA,IACF;AAAA,EACF;AAAA,EAEF,WAAW;AAAA,IACT;AAAA,MACE,MAAM;AAAA,MACN,MAAM;AAAA,MACN,cAAcC,EAAM,SAAA;AAAA,MACpB,QAAQ,CAAC,eAAe;AAAA,MACxB,QAAQ,CAAC,EAAE,MAAM,YAAY,UAAU,SAAS;AAAA,IAAA;AAAA,EAClD;AAEJ,GAEMC,IAAUC,EAAcC,GAAW;AAAA,EACvC,UAAU,MAAM;AAClB,CAAC,GAEKlC,IAAQ,CAAC8B,OACN;AAAA,EACL,GAAGA;AAAA,IAIDK,IAAS;AAAA,EACb,UAAU,CAACC,OAAoB;AAAA,IAC7B,OAAOA,KAASL,EAAM,SAAA;AAAA,EAAS;AAEnC,GAEaM,IAA2B;AAAA,EAAA,WACtCH;AAAAA,EACA,MAAAL;AAAA,EACA,SAAAG;AAAA,EACA,QAAQ;AAAA,IACN,OAAAhC;AAAA,IACA,QAAAmC;AAAA,EAAA;AAEJ;"}