@servicetitan/dte-unlayer 0.157.0 → 0.159.0
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/api-core.js +22 -29
- package/dist/api-core.js.map +1 -1
- package/dist/api-custom-tools.js +23 -29
- package/dist/api-custom-tools.js.map +1 -1
- package/dist/business-calendar/BusinessCalendarDrawer.d.ts +19 -0
- package/dist/business-calendar/BusinessCalendarDrawer.d.ts.map +1 -0
- package/dist/business-calendar/BusinessCalendarDrawer.js +41 -0
- package/dist/business-calendar/BusinessCalendarDrawer.js.map +1 -0
- package/dist/business-calendar/business-calendar-requests.d.ts +25 -0
- package/dist/business-calendar/business-calendar-requests.d.ts.map +1 -0
- package/dist/business-calendar/business-calendar-requests.js +46 -0
- package/dist/business-calendar/business-calendar-requests.js.map +1 -0
- package/dist/business-calendar/business-calendar-state.d.ts +22 -0
- package/dist/business-calendar/business-calendar-state.d.ts.map +1 -0
- package/dist/business-calendar/business-calendar-state.js +74 -0
- package/dist/business-calendar/business-calendar-state.js.map +1 -0
- package/dist/business-calendar/useBusinessCalendarRequests.d.ts +15 -0
- package/dist/business-calendar/useBusinessCalendarRequests.d.ts.map +1 -0
- package/dist/business-calendar/useBusinessCalendarRequests.js +30 -0
- package/dist/business-calendar/useBusinessCalendarRequests.js.map +1 -0
- package/dist/display-conditions/ConditionGroup.js +15 -89
- package/dist/display-conditions/ConditionGroup.js.map +1 -1
- package/dist/display-conditions/ConditionGroupsSection.js +2 -70
- package/dist/display-conditions/ConditionGroupsSection.js.map +1 -1
- package/dist/display-conditions/ConditionRow.d.ts.map +1 -1
- package/dist/display-conditions/ConditionRow.js +71 -296
- package/dist/display-conditions/ConditionRow.js.map +1 -1
- package/dist/display-conditions/DisplayConditionModal.js +40 -190
- package/dist/display-conditions/DisplayConditionModal.js.map +1 -1
- package/dist/display-conditions/LookupValueControl.d.ts.map +1 -1
- package/dist/display-conditions/LookupValueControl.js +42 -109
- package/dist/display-conditions/LookupValueControl.js.map +1 -1
- package/dist/display-conditions/SeparatorWithChip.js +1 -10
- package/dist/display-conditions/SeparatorWithChip.js.map +1 -1
- package/dist/display-conditions/constants.js +15 -20
- package/dist/display-conditions/constants.js.map +1 -1
- package/dist/display-conditions/displayConditionController.js +5 -8
- package/dist/display-conditions/displayConditionController.js.map +1 -1
- package/dist/display-conditions/lookupOptionsController.js +16 -16
- package/dist/display-conditions/lookupOptionsController.js.map +1 -1
- package/dist/display-conditions/nunjucks.js +98 -116
- package/dist/display-conditions/nunjucks.js.map +1 -1
- package/dist/display-conditions/schemaDataPoints.js +13 -11
- package/dist/display-conditions/schemaDataPoints.js.map +1 -1
- package/dist/display-conditions/types.js +23 -67
- package/dist/display-conditions/types.js.map +1 -1
- package/dist/display-conditions/useConditionForms.js +38 -56
- package/dist/display-conditions/useConditionForms.js.map +1 -1
- package/dist/display-conditions/useLookupOptions.js +24 -44
- package/dist/display-conditions/useLookupOptions.js.map +1 -1
- package/dist/e-sign-offset/ESignDateSignedOffsetModal.d.ts.map +1 -1
- package/dist/e-sign-offset/ESignDateSignedOffsetModal.js +48 -156
- package/dist/e-sign-offset/ESignDateSignedOffsetModal.js.map +1 -1
- package/dist/e-sign-offset/ESignOffsetRuleRow.d.ts +3 -1
- package/dist/e-sign-offset/ESignOffsetRuleRow.d.ts.map +1 -1
- package/dist/e-sign-offset/ESignOffsetRuleRow.js +12 -71
- package/dist/e-sign-offset/ESignOffsetRuleRow.js.map +1 -1
- package/dist/e-sign-offset/eSignOffsetController.js +5 -8
- package/dist/e-sign-offset/eSignOffsetController.js.map +1 -1
- package/dist/editor-core-source.d.ts +2 -2
- package/dist/editor-core-source.d.ts.map +1 -1
- package/dist/editor-core-source.js +3 -3
- package/dist/editor-core-source.js.map +1 -1
- package/dist/editor-core.js +2 -2
- package/dist/editor-core.js.map +1 -1
- package/dist/editor.d.ts.map +1 -1
- package/dist/editor.js +56 -118
- package/dist/editor.js.map +1 -1
- package/dist/image-upload-error.js +3 -3
- package/dist/image-upload-error.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -1
- package/dist/index.js.map +1 -1
- package/dist/loadScript.js +7 -8
- package/dist/loadScript.js.map +1 -1
- package/dist/log.js +2 -3
- package/dist/log.js.map +1 -1
- package/dist/merge-tags.js +18 -17
- package/dist/merge-tags.js.map +1 -1
- package/dist/shared/configs.js +1 -2
- package/dist/shared/configs.js.map +1 -1
- package/dist/shared/const.d.ts +72 -0
- package/dist/shared/const.d.ts.map +1 -1
- package/dist/shared/const.js +13 -4
- package/dist/shared/const.js.map +1 -1
- package/dist/shared/date-calc.d.ts +32 -13
- package/dist/shared/date-calc.d.ts.map +1 -1
- package/dist/shared/date-calc.js +130 -76
- package/dist/shared/date-calc.js.map +1 -1
- package/dist/shared/e-sign-offset.js +46 -63
- package/dist/shared/e-sign-offset.js.map +1 -1
- package/dist/shared/edit-icon.js +0 -1
- package/dist/shared/edit-icon.js.map +1 -1
- package/dist/shared/fonts.js +16 -17
- package/dist/shared/fonts.js.map +1 -1
- package/dist/shared/forms.js +16 -38
- package/dist/shared/forms.js.map +1 -1
- package/dist/shared/instance-id.d.ts +3 -0
- package/dist/shared/instance-id.d.ts.map +1 -1
- package/dist/shared/instance-id.js +10 -7
- package/dist/shared/instance-id.js.map +1 -1
- package/dist/shared/nunjucks-helpers.js +2 -5
- package/dist/shared/nunjucks-helpers.js.map +1 -1
- package/dist/shared/schema.js +52 -96
- package/dist/shared/schema.js.map +1 -1
- package/dist/shared/tools.js +6 -13
- package/dist/shared/tools.js.map +1 -1
- package/dist/store.d.ts +15 -1
- package/dist/store.d.ts.map +1 -1
- package/dist/store.js +851 -547
- package/dist/store.js.map +1 -1
- package/dist/tools.js +133 -143
- package/dist/tools.js.map +1 -1
- package/dist/unlayer-interface.d.ts +25 -1
- package/dist/unlayer-interface.d.ts.map +1 -1
- package/dist/unlayer-interface.js +1 -2
- package/dist/unlayer-interface.js.map +1 -1
- package/dist/unlayer.js +86 -113
- package/dist/unlayer.js.map +1 -1
- package/dist/vendor/dte-shared/business-calendar-validation.utils.d.ts +25 -0
- package/dist/vendor/dte-shared/business-calendar-validation.utils.js +80 -0
- package/dist/vendor/dte-shared/components/business-calendar-section.d.ts +15 -0
- package/dist/vendor/dte-shared/components/business-calendar-section.js +14 -0
- package/dist/vendor/dte-shared/components/schedule-drawer.d.ts +18 -0
- package/dist/vendor/dte-shared/components/schedule-drawer.js +119 -0
- package/dist/vendor/dte-shared/components/schedule-picker.d.ts +8 -0
- package/dist/vendor/dte-shared/components/schedule-picker.js +88 -0
- package/dist/vendor/dte-shared/constants.d.ts +31 -0
- package/dist/vendor/dte-shared/constants.js +34 -0
- package/dist/vendor/dte-shared/field-schedule-editor-context.d.ts +31 -0
- package/dist/vendor/dte-shared/field-schedule-editor-context.js +110 -0
- package/dist/vendor/dte-shared/index.d.ts +8 -0
- package/dist/vendor/dte-shared/index.js +7 -0
- package/dist/vendor/dte-shared/schedule-bindings.utils.d.ts +22 -0
- package/dist/vendor/dte-shared/schedule-bindings.utils.js +31 -0
- package/dist/vendor/dte-shared/styles/schedule.css +19 -0
- package/dist/vendor/dte-shared/types.d.ts +129 -0
- package/dist/vendor/dte-shared/types.js +1 -0
- package/package.json +7 -1
- package/src/__tests__/business-calendar-drawer.test.tsx +183 -0
- package/src/__tests__/business-calendar-requests.test.ts +166 -0
- package/src/__tests__/business-calendar-state.test.tsx +142 -0
- package/src/__tests__/condition-row.test.tsx +131 -0
- package/src/__tests__/date-calc.test.ts +145 -0
- package/src/__tests__/e-sign-offset-modal.test.tsx +124 -0
- package/src/__tests__/instance-id.test.ts +49 -0
- package/src/__tests__/store.business-calendar.test.ts +185 -0
- package/src/__tests__/unlayer.e-sign-types.test.ts +30 -0
- package/src/business-calendar/BusinessCalendarDrawer.tsx +76 -0
- package/src/business-calendar/business-calendar-requests.ts +80 -0
- package/src/business-calendar/business-calendar-state.ts +113 -0
- package/src/business-calendar/useBusinessCalendarRequests.ts +49 -0
- package/src/display-conditions/ConditionRow.tsx +102 -175
- package/src/display-conditions/LookupValueControl.tsx +1 -12
- package/src/e-sign-offset/ESignDateSignedOffsetModal.tsx +20 -12
- package/src/e-sign-offset/ESignOffsetRuleRow.tsx +7 -2
- package/src/editor-core-source.ts +2 -2
- package/src/editor.tsx +15 -0
- package/src/index.ts +10 -0
- package/src/shared/const.ts +61 -0
- package/src/shared/date-calc.ts +155 -78
- package/src/shared/instance-id.ts +6 -1
- package/src/store.ts +68 -5
- package/src/unlayer-interface.tsx +25 -1
- package/src/unlayer.tsx +5 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/display-conditions/LookupValueControl.tsx"],"sourcesContent":["import { TextField } from '@servicetitan/anvil2';\nimport { SelectField, SelectFieldOption, SelectFieldSync } from '@servicetitan/anvil2/beta';\nimport { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { LookupOption } from './lookupOptionsController';\nimport { useLookupOptions } from './useLookupOptions';\n\nexport interface LookupValueControlProps {\n value: string;\n fieldType: 'number' | 'string';\n /** The selected data point's `options.fieldLookupSource`; empty -> free-text input. */\n lookupSource?: string;\n onChange: (value: string) => void;\n}\n\nconst toOption = (option: LookupOption): SelectFieldOption => ({\n id: option.key,\n label: option.label,\n});\n\n/*\n * Searchable sources return nothing until the user types, which would make the\n * dropdown show its built-in \"No match found\" empty state on open — confusing\n * before any search has happened. Render a disabled hint instead so the list is\n * never mistaken for \"no results\".\n */\nconst SEARCH_HINT_OPTION: SelectFieldOption = {\n id: '__lookup_search_hint__',\n label: 'Start typing to search…',\n disabled: true,\n};\n\nconst sanitizeNumericInput = (raw: string): string => {\n let value = raw.replaceAll(/[^0-9.-]/g, '');\n const isNegative = value.startsWith('-');\n value = value.replaceAll('-', '');\n if (isNegative) {\n value = `-${value}`;\n }\n const firstDot = value.indexOf('.');\n if (firstDot >= 0) {\n value = `${value.slice(0, firstDot + 1)}${value.slice(firstDot + 1).replaceAll('.', '')}`;\n }\n return value;\n};\n\n/**\n * Renders the value control for a single condition based on the field's lookup source:\n * - `static` -> full list returned by the host, filtered locally (`SelectFieldSync`).\n * - `searchable` -> host searches per typed query (`SelectField` + `loadOptions`).\n * - `idle`/`fallback`/`loading` -> free-text input (never block the user).\n *\n * Unlayer persists conditions as a Nunjucks string, so a saved searchable value\n * has no stored label — we display the saved key as the label until the user\n * re-searches and re-selects.\n */\nexport function LookupValueControl({\n fieldType,\n lookupSource,\n onChange,\n value,\n}: Readonly<LookupValueControlProps>) {\n const { loadOptions, options, resolveOptions, status } = useLookupOptions(lookupSource);\n\n const staticOptions = useMemo<SelectFieldOption[]>(() => options.map(toOption), [options]);\n\n /*\n * Fall back to the raw value so a saved key that the host omits from its list\n * (e.g. an inactive/renamed option) still shows on edit instead of vanishing.\n */\n const staticSelected = useMemo<SelectFieldOption | null>(() => {\n if (!value) {\n return null;\n }\n return (\n staticOptions.find(option => String(option.id) === value) ?? { id: value, label: value }\n );\n }, [staticOptions, value]);\n\n /*\n * Ensure the saved value is present in the list so it is visible/selectable\n * even when the host did not return it.\n */\n const staticOptionsWithSelected = useMemo<SelectFieldOption[]>(() => {\n if (\n staticSelected &&\n !staticOptions.some(option => String(option.id) === String(staticSelected.id))\n ) {\n return [staticSelected, ...staticOptions];\n }\n return staticOptions;\n }, [staticOptions, staticSelected]);\n\n const [searchableSelected, setSearchableSelected] = useState<SelectFieldOption | null>(\n value ? { id: value, label: value } : null,\n );\n\n // Tracks the key we've already turned into a human-readable label so we don't re-resolve it.\n const resolvedKeyRef = useRef<string | null>(null);\n\n useEffect(() => {\n setSearchableSelected(prev => {\n if (!value) {\n return null;\n }\n if (prev?.id === value) {\n return prev;\n }\n return { id: value, label: value };\n });\n }, [value]);\n\n // On open (or when a saved searchable value appears), ask the host to resolve key -> label.\n useEffect(() => {\n if (status !== 'searchable' || !value) {\n resolvedKeyRef.current = null;\n return;\n }\n if (resolvedKeyRef.current === value) {\n return;\n }\n\n let cancelled = false;\n resolveOptions([value]).then(result => {\n if (cancelled) {\n return;\n }\n const match = result.find(option => option.key === value);\n if (match) {\n resolvedKeyRef.current = value;\n setSearchableSelected({ id: match.key, label: match.label });\n }\n });\n\n return () => {\n cancelled = true;\n };\n }, [status, value, resolveOptions]);\n\n const handleLoadOptions = useCallback(\n async (query: string) => {\n if (!query.trim()) {\n return [SEARCH_HINT_OPTION];\n }\n const result = await loadOptions(query);\n return result.map(toOption);\n },\n [loadOptions],\n );\n\n if (status === 'loading') {\n return (\n <TextField\n label=\"Value\"\n size=\"small\"\n flex={1}\n disabled\n value=\"\"\n placeholder=\"\"\n aria-label=\"Value\"\n />\n );\n }\n\n if (status === 'static') {\n return (\n <SelectFieldSync\n flex={1}\n size=\"small\"\n label=\"Value\"\n placeholder=\"Search value...\"\n options={staticOptionsWithSelected}\n value={staticSelected}\n onSelectedOptionChange={option => onChange(option ? String(option.id) : '')}\n />\n );\n }\n\n if (status === 'searchable') {\n return (\n <SelectField\n flex={1}\n size=\"small\"\n label=\"Value\"\n placeholder=\"Type to search...\"\n initialLoad=\"open\"\n loadOptions={handleLoadOptions}\n value={searchableSelected}\n onSelectedOptionChange={option => {\n resolvedKeyRef.current = option ? String(option.id) : null;\n setSearchableSelected(option);\n onChange(option ? String(option.id) : '');\n }}\n />\n );\n }\n\n // idle / fallback (no source, empty, error, or timeout) -> free text.\n const handleTextChange = (raw: string) => {\n onChange(fieldType === 'number' ? sanitizeNumericInput(raw) : raw);\n };\n\n return (\n <TextField\n label=\"Value\"\n size=\"small\"\n flex={1}\n value={value}\n onChange={e => handleTextChange(e.target.value)}\n placeholder={fieldType === 'number' ? 'e.g. 1.5' : 'Enter value...'}\n aria-label=\"Value\"\n {...(fieldType === 'number' && { inputMode: 'decimal' })}\n />\n );\n}\n"],"names":["TextField","SelectField","SelectFieldSync","useCallback","useEffect","useMemo","useRef","useState","useLookupOptions","toOption","option","id","key","label","SEARCH_HINT_OPTION","disabled","sanitizeNumericInput","raw","value","replaceAll","isNegative","startsWith","firstDot","indexOf","slice","LookupValueControl","fieldType","lookupSource","onChange","loadOptions","options","resolveOptions","status","staticOptions","map","staticSelected","find","String","staticOptionsWithSelected","some","searchableSelected","setSearchableSelected","resolvedKeyRef","prev","current","cancelled","then","result","match","handleLoadOptions","query","trim","size","flex","placeholder","aria-label","onSelectedOptionChange","initialLoad","handleTextChange","e","target","inputMode"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"LookupValueControl.js","sourceRoot":"","sources":["../../src/display-conditions/LookupValueControl.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { Chip, Divider } from '@servicetitan/anvil2';
|
|
3
3
|
export function SeparatorWithChip({ color = '#94a3b8', label }) {
|
|
4
|
-
return
|
|
5
|
-
alignContent: "center",
|
|
6
|
-
spacing: "2",
|
|
7
|
-
children: /*#__PURE__*/ _jsx(Chip, {
|
|
8
|
-
label: label,
|
|
9
|
-
size: "small",
|
|
10
|
-
color: color
|
|
11
|
-
})
|
|
12
|
-
});
|
|
4
|
+
return (_jsx(Divider, { alignContent: "center", spacing: "2", children: _jsx(Chip, { label: label, size: "small", color: color }) }));
|
|
13
5
|
}
|
|
14
|
-
|
|
15
6
|
//# sourceMappingURL=SeparatorWithChip.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/display-conditions/SeparatorWithChip.tsx"],"
|
|
1
|
+
{"version":3,"file":"SeparatorWithChip.js","sourceRoot":"","sources":["../../src/display-conditions/SeparatorWithChip.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAOrD,MAAM,UAAU,iBAAiB,CAAC,EAAE,KAAK,GAAG,SAAS,EAAE,KAAK,EAAoC;IAC5F,OAAO,CACH,KAAC,OAAO,IAAC,YAAY,EAAC,QAAQ,EAAC,OAAO,EAAC,GAAG,YACtC,KAAC,IAAI,IAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAC,OAAO,EAAC,KAAK,EAAE,KAAK,GAAI,GAC3C,CACb,CAAC;AACN,CAAC"}
|
|
@@ -1,22 +1,17 @@
|
|
|
1
|
-
export const generateId = ()=>Math.random().toString(36).slice(2, 11);
|
|
2
|
-
export const defaultCondition = ()=>({
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
export const defaultGroup = ()=>({
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
groups: [
|
|
17
|
-
defaultGroup()
|
|
18
|
-
]
|
|
19
|
-
});
|
|
1
|
+
export const generateId = () => Math.random().toString(36).slice(2, 11);
|
|
2
|
+
export const defaultCondition = () => ({
|
|
3
|
+
dataPointKey: '',
|
|
4
|
+
id: generateId(),
|
|
5
|
+
operator: 'is_equal_to',
|
|
6
|
+
value: '',
|
|
7
|
+
});
|
|
8
|
+
export const defaultGroup = () => ({
|
|
9
|
+
conditions: [defaultCondition()],
|
|
10
|
+
id: generateId(),
|
|
11
|
+
});
|
|
12
|
+
export const defaultState = () => ({
|
|
13
|
+
behavior: 'show',
|
|
14
|
+
groups: [defaultGroup()],
|
|
15
|
+
});
|
|
20
16
|
export const MODAL_CONTENT_MAX_HEIGHT = '70vh';
|
|
21
|
-
|
|
22
17
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/display-conditions/constants.ts"],"
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/display-conditions/constants.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAExE,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAoB,EAAE,CAAC,CAAC;IACpD,YAAY,EAAE,EAAE;IAChB,EAAE,EAAE,UAAU,EAAE;IAChB,QAAQ,EAAE,aAAa;IACvB,KAAK,EAAE,EAAE;CACZ,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,YAAY,GAAG,GAAmB,EAAE,CAAC,CAAC;IAC/C,UAAU,EAAE,CAAC,gBAAgB,EAAE,CAAC;IAChC,EAAE,EAAE,UAAU,EAAE;CACnB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,YAAY,GAAG,GAA0B,EAAE,CAAC,CAAC;IACtD,QAAQ,EAAE,MAAM;IAChB,MAAM,EAAE,CAAC,YAAY,EAAE,CAAC;CAC3B,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,wBAAwB,GAAG,MAAM,CAAC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
const DISPLAY_CONDITION_EVENT = 'dte:display-condition';
|
|
2
2
|
const displayConditionEvents = new EventTarget();
|
|
3
3
|
let activeListeners = 0;
|
|
4
|
-
export const onDisplayCondition = (listener)=>{
|
|
5
|
-
const handler = (event)=>{
|
|
4
|
+
export const onDisplayCondition = (listener) => {
|
|
5
|
+
const handler = (event) => {
|
|
6
6
|
const detail = event.detail;
|
|
7
7
|
if (!detail) {
|
|
8
8
|
return;
|
|
@@ -11,19 +11,16 @@ export const onDisplayCondition = (listener)=>{
|
|
|
11
11
|
};
|
|
12
12
|
activeListeners += 1;
|
|
13
13
|
displayConditionEvents.addEventListener(DISPLAY_CONDITION_EVENT, handler);
|
|
14
|
-
return ()=>{
|
|
14
|
+
return () => {
|
|
15
15
|
activeListeners = Math.max(0, activeListeners - 1);
|
|
16
16
|
displayConditionEvents.removeEventListener(DISPLAY_CONDITION_EVENT, handler);
|
|
17
17
|
};
|
|
18
18
|
};
|
|
19
|
-
export const emitDisplayCondition = (request)=>{
|
|
19
|
+
export const emitDisplayCondition = (request) => {
|
|
20
20
|
if (activeListeners === 0) {
|
|
21
21
|
request.done(request.data);
|
|
22
22
|
return;
|
|
23
23
|
}
|
|
24
|
-
displayConditionEvents.dispatchEvent(new CustomEvent(DISPLAY_CONDITION_EVENT, {
|
|
25
|
-
detail: request
|
|
26
|
-
}));
|
|
24
|
+
displayConditionEvents.dispatchEvent(new CustomEvent(DISPLAY_CONDITION_EVENT, { detail: request }));
|
|
27
25
|
};
|
|
28
|
-
|
|
29
26
|
//# sourceMappingURL=displayConditionController.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/display-conditions/displayConditionController.ts"],"
|
|
1
|
+
{"version":3,"file":"displayConditionController.js","sourceRoot":"","sources":["../../src/display-conditions/displayConditionController.ts"],"names":[],"mappings":"AAOA,MAAM,uBAAuB,GAAG,uBAAuB,CAAC;AACxD,MAAM,sBAAsB,GAAG,IAAI,WAAW,EAAE,CAAC;AACjD,IAAI,eAAe,GAAG,CAAC,CAAC;AAExB,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,QAAkB,EAAE,EAAE;IACrD,MAAM,OAAO,GAAG,CAAC,KAAY,EAAE,EAAE;QAC7B,MAAM,MAAM,GAAI,KAA8C,CAAC,MAAM,CAAC;QACtE,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,OAAO;QACX,CAAC;QACD,QAAQ,CAAC,MAAM,CAAC,CAAC;IACrB,CAAC,CAAC;IAEF,eAAe,IAAI,CAAC,CAAC;IACrB,sBAAsB,CAAC,gBAAgB,CAAC,uBAAuB,EAAE,OAAwB,CAAC,CAAC;IAE3F,OAAO,GAAG,EAAE;QACR,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,eAAe,GAAG,CAAC,CAAC,CAAC;QACnD,sBAAsB,CAAC,mBAAmB,CACtC,uBAAuB,EACvB,OAAwB,CAC3B,CAAC;IACN,CAAC,CAAC;AACN,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,OAAgC,EAAE,EAAE;IACrE,IAAI,eAAe,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3B,OAAO;IACX,CAAC;IAED,sBAAsB,CAAC,aAAa,CAChC,IAAI,WAAW,CAA0B,uBAAuB,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CACzF,CAAC;AACN,CAAC,CAAC"}
|
|
@@ -25,16 +25,17 @@
|
|
|
25
25
|
* The host-side resolver is intentionally NOT implemented in this package. The
|
|
26
26
|
* host listens via `onLookupOptionsRequest` and replies via
|
|
27
27
|
* `emitLookupOptionsResponse`.
|
|
28
|
-
*/
|
|
28
|
+
*/
|
|
29
|
+
export const LOOKUP_OPTIONS_REQUEST_EVENT = 'dte-unlayer:lookup-options-request';
|
|
29
30
|
export const LOOKUP_OPTIONS_RESPONSE_EVENT = 'dte-unlayer:lookup-options-response';
|
|
30
31
|
const lookupOptionsEvents = new EventTarget();
|
|
31
|
-
/** editor -> host: ask the host to resolve options for a lookup source. */
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
}));
|
|
32
|
+
/** editor -> host: ask the host to resolve options for a lookup source. */
|
|
33
|
+
export const emitLookupOptionsRequest = (request) => {
|
|
34
|
+
lookupOptionsEvents.dispatchEvent(new CustomEvent(LOOKUP_OPTIONS_REQUEST_EVENT, { detail: request }));
|
|
35
35
|
};
|
|
36
|
-
/** host side: listen for editor requests. Returns an unsubscribe function. */
|
|
37
|
-
|
|
36
|
+
/** host side: listen for editor requests. Returns an unsubscribe function. */
|
|
37
|
+
export const onLookupOptionsRequest = (listener) => {
|
|
38
|
+
const handler = (event) => {
|
|
38
39
|
const detail = event.detail;
|
|
39
40
|
if (!detail) {
|
|
40
41
|
return;
|
|
@@ -42,17 +43,17 @@ const lookupOptionsEvents = new EventTarget();
|
|
|
42
43
|
listener(detail);
|
|
43
44
|
};
|
|
44
45
|
lookupOptionsEvents.addEventListener(LOOKUP_OPTIONS_REQUEST_EVENT, handler);
|
|
45
|
-
return ()=>{
|
|
46
|
+
return () => {
|
|
46
47
|
lookupOptionsEvents.removeEventListener(LOOKUP_OPTIONS_REQUEST_EVENT, handler);
|
|
47
48
|
};
|
|
48
49
|
};
|
|
49
|
-
/** host -> editor: deliver resolved options back to the editor. */
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
}));
|
|
50
|
+
/** host -> editor: deliver resolved options back to the editor. */
|
|
51
|
+
export const emitLookupOptionsResponse = (response) => {
|
|
52
|
+
lookupOptionsEvents.dispatchEvent(new CustomEvent(LOOKUP_OPTIONS_RESPONSE_EVENT, { detail: response }));
|
|
53
53
|
};
|
|
54
|
-
/** editor side: listen for host responses. Returns an unsubscribe function. */
|
|
55
|
-
|
|
54
|
+
/** editor side: listen for host responses. Returns an unsubscribe function. */
|
|
55
|
+
export const onLookupOptionsResponse = (listener) => {
|
|
56
|
+
const handler = (event) => {
|
|
56
57
|
const detail = event.detail;
|
|
57
58
|
if (!detail) {
|
|
58
59
|
return;
|
|
@@ -60,9 +61,8 @@ const lookupOptionsEvents = new EventTarget();
|
|
|
60
61
|
listener(detail);
|
|
61
62
|
};
|
|
62
63
|
lookupOptionsEvents.addEventListener(LOOKUP_OPTIONS_RESPONSE_EVENT, handler);
|
|
63
|
-
return ()=>{
|
|
64
|
+
return () => {
|
|
64
65
|
lookupOptionsEvents.removeEventListener(LOOKUP_OPTIONS_RESPONSE_EVENT, handler);
|
|
65
66
|
};
|
|
66
67
|
};
|
|
67
|
-
|
|
68
68
|
//# sourceMappingURL=lookupOptionsController.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/display-conditions/lookupOptionsController.ts"],"
|
|
1
|
+
{"version":3,"file":"lookupOptionsController.js","sourceRoot":"","sources":["../../src/display-conditions/lookupOptionsController.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AA4CH,MAAM,CAAC,MAAM,4BAA4B,GAAG,oCAAoC,CAAC;AACjF,MAAM,CAAC,MAAM,6BAA6B,GAAG,qCAAqC,CAAC;AAEnF,MAAM,mBAAmB,GAAG,IAAI,WAAW,EAAE,CAAC;AAE9C,2EAA2E;AAC3E,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,OAA6B,EAAE,EAAE;IACtE,mBAAmB,CAAC,aAAa,CAC7B,IAAI,WAAW,CAAuB,4BAA4B,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAC3F,CAAC;AACN,CAAC,CAAC;AAEF,8EAA8E;AAC9E,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,QAAiD,EAAE,EAAE;IACxF,MAAM,OAAO,GAAG,CAAC,KAAY,EAAE,EAAE;QAC7B,MAAM,MAAM,GAAI,KAA2C,CAAC,MAAM,CAAC;QACnE,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,OAAO;QACX,CAAC;QACD,QAAQ,CAAC,MAAM,CAAC,CAAC;IACrB,CAAC,CAAC;IAEF,mBAAmB,CAAC,gBAAgB,CAAC,4BAA4B,EAAE,OAAO,CAAC,CAAC;IAE5E,OAAO,GAAG,EAAE;QACR,mBAAmB,CAAC,mBAAmB,CAAC,4BAA4B,EAAE,OAAO,CAAC,CAAC;IACnF,CAAC,CAAC;AACN,CAAC,CAAC;AAEF,mEAAmE;AACnE,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,QAA+B,EAAE,EAAE;IACzE,mBAAmB,CAAC,aAAa,CAC7B,IAAI,WAAW,CAAwB,6BAA6B,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAC9F,CAAC;AACN,CAAC,CAAC;AAEF,+EAA+E;AAC/E,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,QAAmD,EAAE,EAAE;IAC3F,MAAM,OAAO,GAAG,CAAC,KAAY,EAAE,EAAE;QAC7B,MAAM,MAAM,GAAI,KAA4C,CAAC,MAAM,CAAC;QACpE,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,OAAO;QACX,CAAC;QACD,QAAQ,CAAC,MAAM,CAAC,CAAC;IACrB,CAAC,CAAC;IAEF,mBAAmB,CAAC,gBAAgB,CAAC,6BAA6B,EAAE,OAAO,CAAC,CAAC;IAE7E,OAAO,GAAG,EAAE;QACR,mBAAmB,CAAC,mBAAmB,CAAC,6BAA6B,EAAE,OAAO,CAAC,CAAC;IACpF,CAAC,CAAC;AACN,CAAC,CAAC"}
|