@icure/form 2.0.11 → 3.0.2
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/.yarn/cache/@babel-runtime-npm-7.26.9-8369ff039f-838492d8a9.zip +0 -0
- package/.yarn/cache/@icure-motss-app-datepicker-npm-6.0.0-rc.36-66219db2d1-5f34375d97.zip +0 -0
- package/.yarn/cache/@lit-labs-ssr-dom-shim-npm-1.3.0-6bfa115c08-c2003e8bb6.zip +0 -0
- package/.yarn/cache/@lit-reactive-element-npm-1.6.3-4828441e51-79b58631c3.zip +0 -0
- package/.yarn/cache/@lit-reactive-element-npm-2.0.4-4836436301-368d788d9e.zip +0 -0
- package/.yarn/cache/@material-animation-npm-14.0.0-canary.53b3cad2f.0-06a813cdea-9b5190654c.zip +0 -0
- package/.yarn/cache/@material-base-npm-14.0.0-canary.53b3cad2f.0-d195c1fdc4-9f4928d115.zip +0 -0
- package/.yarn/cache/@material-button-npm-14.0.0-canary.53b3cad2f.0-d4b070f508-873295c56a.zip +0 -0
- package/.yarn/cache/@material-density-npm-14.0.0-canary.53b3cad2f.0-48c1f65059-a23f00edfe.zip +0 -0
- package/.yarn/cache/@material-dialog-npm-14.0.0-canary.53b3cad2f.0-96168fa294-c1a498b81a.zip +0 -0
- package/.yarn/cache/@material-dom-npm-14.0.0-canary.53b3cad2f.0-ac009dc871-f5817f76dd.zip +0 -0
- package/.yarn/cache/@material-elevation-npm-14.0.0-canary.53b3cad2f.0-3312f06793-2f8945c7b6.zip +0 -0
- package/.yarn/cache/@material-feature-targeting-npm-14.0.0-canary.53b3cad2f.0-a919042d50-e7a1ed68f9.zip +0 -0
- package/.yarn/cache/@material-floating-label-npm-14.0.0-canary.53b3cad2f.0-eb8f330f2f-5295dc481d.zip +0 -0
- package/.yarn/cache/@material-focus-ring-npm-14.0.0-canary.53b3cad2f.0-b22f851a2e-92273b1247.zip +0 -0
- package/.yarn/cache/@material-icon-button-npm-14.0.0-canary.53b3cad2f.0-e158d26048-19b51665f2.zip +0 -0
- package/.yarn/cache/@material-line-ripple-npm-14.0.0-canary.53b3cad2f.0-d089468db9-6518961487.zip +0 -0
- package/.yarn/cache/@material-list-npm-14.0.0-canary.53b3cad2f.0-df9ce05084-6c977f518d.zip +0 -0
- package/.yarn/cache/@material-menu-npm-14.0.0-canary.53b3cad2f.0-9489b592c8-71b6a1f4dd.zip +0 -0
- package/.yarn/cache/@material-menu-surface-npm-14.0.0-canary.53b3cad2f.0-52212f38f4-ad48e168ca.zip +0 -0
- package/.yarn/cache/@material-mwc-base-npm-0.27.0-79caf3ef2b-07af17edfc.zip +0 -0
- package/.yarn/cache/@material-mwc-button-npm-0.27.0-4b85f2b26f-2ef5cc0951.zip +0 -0
- package/.yarn/cache/@material-mwc-checkbox-npm-0.27.0-e837031d8e-ba53a6ea8c.zip +0 -0
- package/.yarn/cache/@material-mwc-dialog-npm-0.27.0-77c6071543-ffab528e8e.zip +0 -0
- package/.yarn/cache/@material-mwc-floating-label-npm-0.27.0-80e62b22c0-fbbf4f2e42.zip +0 -0
- package/.yarn/cache/@material-mwc-icon-button-npm-0.27.0-41f82f135b-7315c0735b.zip +0 -0
- package/.yarn/cache/@material-mwc-icon-npm-0.27.0-98c9e8509f-6dfa5115d5.zip +0 -0
- package/.yarn/cache/@material-mwc-line-ripple-npm-0.27.0-e6704221e0-6862ede0f4.zip +0 -0
- package/.yarn/cache/@material-mwc-list-npm-0.27.0-5344fc9de4-6c2ae4f1c6.zip +0 -0
- package/.yarn/cache/@material-mwc-menu-npm-0.27.0-7c2bb47797-126f733659.zip +0 -0
- package/.yarn/cache/@material-mwc-notched-outline-npm-0.27.0-0e0d1c4d5f-2739032f76.zip +0 -0
- package/.yarn/cache/@material-mwc-radio-npm-0.27.0-aa2098a280-0b0a0a6b99.zip +0 -0
- package/.yarn/cache/@material-mwc-ripple-npm-0.27.0-ed37672f08-9cd73fdfe4.zip +0 -0
- package/.yarn/cache/@material-mwc-textfield-npm-0.27.0-dabd704f55-978c893aca.zip +0 -0
- package/.yarn/cache/@material-notched-outline-npm-14.0.0-canary.53b3cad2f.0-ecacde98db-1a9f8db4d8.zip +0 -0
- package/.yarn/cache/@material-radio-npm-14.0.0-canary.53b3cad2f.0-c50de64d41-898554f2b3.zip +0 -0
- package/.yarn/cache/@material-ripple-npm-14.0.0-canary.53b3cad2f.0-49060bfe7e-08b71917e2.zip +0 -0
- package/.yarn/cache/@material-rtl-npm-14.0.0-canary.53b3cad2f.0-daca794b76-3c1b8b48c6.zip +0 -0
- package/.yarn/cache/@material-shape-npm-14.0.0-canary.53b3cad2f.0-5bcff722a6-6ad9b020c0.zip +0 -0
- package/.yarn/cache/@material-textfield-npm-14.0.0-canary.53b3cad2f.0-4414808dda-7072e3c9df.zip +0 -0
- package/.yarn/cache/@material-theme-npm-14.0.0-canary.53b3cad2f.0-9a24e7b046-fd44e92917.zip +0 -0
- package/.yarn/cache/@material-tokens-npm-14.0.0-canary.53b3cad2f.0-f1c87523da-efa909f861.zip +0 -0
- package/.yarn/cache/@material-touch-target-npm-14.0.0-canary.53b3cad2f.0-fa6a2d0875-dbc13cbe7a.zip +0 -0
- package/.yarn/cache/@material-typography-npm-14.0.0-canary.53b3cad2f.0-f4a58946f1-fa2671df40.zip +0 -0
- package/.yarn/cache/@types-trusted-types-npm-2.0.7-a07fc44f59-8e4202766a.zip +0 -0
- package/.yarn/cache/@webcomponents-webcomponentsjs-npm-2.8.0-36c07db4d2-186373c030.zip +0 -0
- package/.yarn/cache/argparse-npm-2.0.1-faff7999e6-83644b5649.zip +0 -0
- package/.yarn/cache/blocking-elements-npm-0.1.1-423f51c76e-9a34084405.zip +0 -0
- package/.yarn/cache/date-fns-npm-2.30.0-895c790e0f-f7be015232.zip +0 -0
- package/.yarn/cache/entities-npm-4.5.0-7cdb83b832-853f8ebd5b.zip +0 -0
- package/.yarn/cache/fast-deep-equal-npm-3.1.3-790edcfcf5-e21a9d8d84.zip +0 -0
- package/.yarn/cache/linkify-it-npm-5.0.0-adb5f9c96f-b0b86cadaf.zip +0 -0
- package/.yarn/cache/lit-element-npm-3.3.3-2f9f9e38c0-29a596fa55.zip +0 -0
- package/.yarn/cache/lit-element-npm-4.1.1-bb20932b82-74d0f2d6fb.zip +0 -0
- package/.yarn/cache/lit-html-npm-2.8.0-82f88d6ebf-2d70df0724.zip +0 -0
- package/.yarn/cache/lit-html-npm-3.2.1-1662fc597d-1bacd9f8b2.zip +0 -0
- package/.yarn/cache/lit-npm-2.8.0-92bb1333a4-2480e733f7.zip +0 -0
- package/.yarn/cache/lit-npm-3.2.1-27cb5b7782-ee22bbc53d.zip +0 -0
- package/.yarn/cache/markdown-it-npm-14.1.0-e337d75bfe-07296b45eb.zip +0 -0
- package/.yarn/cache/mdurl-npm-2.0.0-3259713daf-880bc289ef.zip +0 -0
- package/.yarn/cache/orderedmap-npm-2.1.1-64b8a0684f-082cf970b0.zip +0 -0
- package/.yarn/cache/prosemirror-commands-npm-1.5.2-27f8f3fee9-ff65063a8c.zip +0 -0
- package/.yarn/cache/prosemirror-history-npm-1.3.2-cc128c8ee6-b85fe6378a.zip +0 -0
- package/.yarn/cache/prosemirror-keymap-npm-1.2.2-efb8276b00-85fe4fc303.zip +0 -0
- package/.yarn/cache/prosemirror-markdown-npm-1.12.0-28e990f443-d7607ee1a6.zip +0 -0
- package/.yarn/cache/prosemirror-model-npm-1.19.4-4fd32211c8-12c277ed30.zip +0 -0
- package/.yarn/cache/prosemirror-model-npm-1.24.1-6467e55b40-386076e2ff.zip +0 -0
- package/.yarn/cache/prosemirror-schema-basic-npm-1.2.2-def7bf2ec7-1f93f8678c.zip +0 -0
- package/.yarn/cache/prosemirror-schema-list-npm-1.3.0-23c1830a7e-03654e37c8.zip +0 -0
- package/.yarn/cache/prosemirror-state-npm-1.4.3-d6540e44ad-28857d935c.zip +0 -0
- package/.yarn/cache/prosemirror-transform-npm-1.10.2-1c2da9123e-93b0c03aff.zip +0 -0
- package/.yarn/cache/prosemirror-transform-npm-1.8.0-ea3ca0411f-6d16ca4f95.zip +0 -0
- package/.yarn/cache/prosemirror-view-npm-1.32.7-63c3e4b182-40c9038a52.zip +0 -0
- package/.yarn/cache/prosemirror-view-npm-1.38.0-9061dc9cf4-0d0f17c1b2.zip +0 -0
- package/.yarn/cache/punycode.js-npm-2.3.1-9084ecbbf5-13466d7ed5.zip +0 -0
- package/.yarn/cache/regenerator-runtime-npm-0.14.1-a6c97c609a-9f57c93277.zip +0 -0
- package/.yarn/cache/rope-sequence-npm-1.3.4-3b09587e5f-95cca2f99a.zip +0 -0
- package/.yarn/cache/tslib-npm-2.8.1-66590b21b8-e4aba30e63.zip +0 -0
- package/.yarn/cache/uc.micro-npm-2.1.0-c45282c865-3719735824.zip +0 -0
- package/.yarn/cache/uuid-npm-9.0.1-39a8442bc6-39931f6da7.zip +0 -0
- package/.yarn/cache/w3c-keyname-npm-2.2.8-66d7d5317a-95bafa4c04.zip +0 -0
- package/.yarn/cache/wicg-inert-npm-3.1.3-38590e83f2-45b3cfec63.zip +0 -0
- package/.yarn/install-state.gz +0 -0
- package/components/common/field-with-options.js +9 -5
- package/components/common/field-with-options.js.map +1 -1
- package/components/common/field.js +25 -21
- package/components/common/field.js.map +1 -1
- package/components/common/index.js +17 -1
- package/components/common/index.js.map +1 -1
- package/components/common/metadata-buttons-bar.d.ts +1 -1
- package/components/common/metadata-buttons-bar.js +58 -65
- package/components/common/metadata-buttons-bar.js.map +1 -1
- package/components/common/styles/paths.js +13 -10
- package/components/common/styles/paths.js.map +1 -1
- package/components/common/utils.js +21 -11
- package/components/common/utils.js.map +1 -1
- package/components/icure-button/index.js +19 -15
- package/components/icure-button/index.js.map +1 -1
- package/components/icure-button-group/index.js +26 -22
- package/components/icure-button-group/index.js.map +1 -1
- package/components/icure-date-picker/index.d.ts +2 -2
- package/components/icure-date-picker/index.js +31 -27
- package/components/icure-date-picker/index.js.map +1 -1
- package/components/icure-dropdown-field/index.js +25 -21
- package/components/icure-dropdown-field/index.js.map +1 -1
- package/components/icure-form/fields/button/button.js +17 -13
- package/components/icure-form/fields/button/button.js.map +1 -1
- package/components/icure-form/fields/button/index.js +17 -1
- package/components/icure-form/fields/button/index.js.map +1 -1
- package/components/icure-form/fields/button-group/checkbox.js +14 -10
- package/components/icure-form/fields/button-group/checkbox.js.map +1 -1
- package/components/icure-form/fields/button-group/index.js +18 -2
- package/components/icure-form/fields/button-group/index.js.map +1 -1
- package/components/icure-form/fields/button-group/radio-button.js +14 -10
- package/components/icure-form/fields/button-group/radio-button.js.map +1 -1
- package/components/icure-form/fields/date-picker/date-picker.js +12 -8
- package/components/icure-form/fields/date-picker/date-picker.js.map +1 -1
- package/components/icure-form/fields/date-picker/date-time-picker.js +12 -8
- package/components/icure-form/fields/date-picker/date-time-picker.js.map +1 -1
- package/components/icure-form/fields/date-picker/index.js +19 -3
- package/components/icure-form/fields/date-picker/index.js.map +1 -1
- package/components/icure-form/fields/date-picker/time-picker.js +12 -8
- package/components/icure-form/fields/date-picker/time-picker.js.map +1 -1
- package/components/icure-form/fields/dropdown/dropdown-field.js +14 -10
- package/components/icure-form/fields/dropdown/dropdown-field.js.map +1 -1
- package/components/icure-form/fields/dropdown/index.js +17 -1
- package/components/icure-form/fields/dropdown/index.js.map +1 -1
- package/components/icure-form/fields/index.js +26 -10
- package/components/icure-form/fields/index.js.map +1 -1
- package/components/icure-form/fields/items-list-field/index.js +17 -1
- package/components/icure-form/fields/items-list-field/index.js.map +1 -1
- package/components/icure-form/fields/items-list-field/items-list-field.js +11 -7
- package/components/icure-form/fields/items-list-field/items-list-field.js.map +1 -1
- package/components/icure-form/fields/label/index.js +17 -1
- package/components/icure-form/fields/label/index.js.map +1 -1
- package/components/icure-form/fields/label/label.js +15 -11
- package/components/icure-form/fields/label/label.js.map +1 -1
- package/components/icure-form/fields/measure-field/index.js +17 -1
- package/components/icure-form/fields/measure-field/index.js.map +1 -1
- package/components/icure-form/fields/measure-field/measure-field.js +12 -8
- package/components/icure-form/fields/measure-field/measure-field.js.map +1 -1
- package/components/icure-form/fields/number-field/index.js +17 -1
- package/components/icure-form/fields/number-field/index.js.map +1 -1
- package/components/icure-form/fields/number-field/number-field.js +12 -8
- package/components/icure-form/fields/number-field/number-field.js.map +1 -1
- package/components/icure-form/fields/text-field/index.js +17 -1
- package/components/icure-form/fields/text-field/index.js.map +1 -1
- package/components/icure-form/fields/text-field/text-field.js +24 -20
- package/components/icure-form/fields/text-field/text-field.js.map +1 -1
- package/components/icure-form/fields/token-field/index.js +17 -1
- package/components/icure-form/fields/token-field/index.js.map +1 -1
- package/components/icure-form/fields/token-field/token-field.js +12 -8
- package/components/icure-form/fields/token-field/token-field.js.map +1 -1
- package/components/icure-form/fields/utils/index.js +13 -5
- package/components/icure-form/fields/utils/index.js.map +1 -1
- package/components/icure-form/index.js +32 -28
- package/components/icure-form/index.js.map +1 -1
- package/components/icure-form/renderer/form/form-selection-button.js +19 -15
- package/components/icure-form/renderer/form/form-selection-button.js.map +1 -1
- package/components/icure-form/renderer/form/form.js +127 -123
- package/components/icure-form/renderer/form/form.js.map +1 -1
- package/components/icure-form/renderer/index.js +2 -1
- package/components/icure-label/index.js +17 -13
- package/components/icure-label/index.js.map +1 -1
- package/components/icure-text-field/index.js +106 -98
- package/components/icure-text-field/index.js.map +1 -1
- package/components/icure-text-field/plugin/caret-fix-plugin.js +7 -3
- package/components/icure-text-field/plugin/caret-fix-plugin.js.map +1 -1
- package/components/icure-text-field/plugin/has-content-class-plugin.js +7 -3
- package/components/icure-text-field/plugin/has-content-class-plugin.js.map +1 -1
- package/components/icure-text-field/plugin/mask-plugin.js +11 -7
- package/components/icure-text-field/plugin/mask-plugin.js.map +1 -1
- package/components/icure-text-field/plugin/regexp-plugin.js +9 -5
- package/components/icure-text-field/plugin/regexp-plugin.js.map +1 -1
- package/components/icure-text-field/prosemirror-commands.js +15 -10
- package/components/icure-text-field/prosemirror-commands.js.map +1 -1
- package/components/icure-text-field/prosemirror-utils.js +5 -1
- package/components/icure-text-field/prosemirror-utils.js.map +1 -1
- package/components/icure-text-field/schema/common-marks.js +7 -3
- package/components/icure-text-field/schema/common-marks.js.map +1 -1
- package/components/icure-text-field/schema/date-time-schema.js +9 -3
- package/components/icure-text-field/schema/date-time-schema.js.map +1 -1
- package/components/icure-text-field/schema/decimal-schema.js +5 -1
- package/components/icure-text-field/schema/decimal-schema.js.map +1 -1
- package/components/icure-text-field/schema/index.js +21 -17
- package/components/icure-text-field/schema/index.js.map +1 -1
- package/components/icure-text-field/schema/items-list-schema.js +7 -3
- package/components/icure-text-field/schema/items-list-schema.js.map +1 -1
- package/components/icure-text-field/schema/markdown-schema.js +9 -5
- package/components/icure-text-field/schema/markdown-schema.js.map +1 -1
- package/components/icure-text-field/schema/measure-schema.js +12 -6
- package/components/icure-text-field/schema/measure-schema.js.map +1 -1
- package/components/icure-text-field/schema/token-schema.js +9 -5
- package/components/icure-text-field/schema/token-schema.js.map +1 -1
- package/components/icure-text-field/schema/utils.js +7 -2
- package/components/icure-text-field/schema/utils.js.map +1 -1
- package/components/icure-text-field/selection-companion.js +5 -1
- package/components/icure-text-field/selection-companion.js.map +1 -1
- package/components/icure-text-field/suggestion-palette.js +10 -3
- package/components/icure-text-field/suggestion-palette.js.map +1 -1
- package/components/index.js +21 -5
- package/components/index.js.map +1 -1
- package/components/model/index.js +46 -22
- package/components/model/index.js.map +1 -1
- package/components/themes/default/index.js +32 -30
- package/components/themes/default/index.js.map +1 -1
- package/components/themes/icure-blue/index.js +47 -45
- package/components/themes/icure-blue/index.js.map +1 -1
- package/components/themes/kendo/index.js +47 -45
- package/components/themes/kendo/index.js.map +1 -1
- package/conversion/ckmeans-grouping.js +10 -3
- package/conversion/ckmeans-grouping.js.map +1 -1
- package/conversion/ckmeans.js +3 -1
- package/conversion/ckmeans.js.map +1 -1
- package/generic/index.js +17 -1
- package/generic/index.js.map +1 -1
- package/generic/model.js +2 -1
- package/icure/form-values-container.d.ts +14 -14
- package/icure/form-values-container.js +45 -37
- package/icure/form-values-container.js.map +1 -1
- package/icure/icure-utils.d.ts +7 -7
- package/icure/icure-utils.js +28 -16
- package/icure/icure-utils.js.map +1 -1
- package/icure/index.js +18 -2
- package/icure/index.js.map +1 -1
- package/icure/model.d.ts +1 -1
- package/icure/model.js +2 -1
- package/icure/model.js.map +1 -1
- package/index.js +17 -1
- package/index.js.map +1 -1
- package/package.json +3 -2
- package/utils/code-utils.d.ts +10 -1
- package/utils/code-utils.js +59 -11
- package/utils/code-utils.js.map +1 -1
- package/utils/dates.js +21 -9
- package/utils/dates.js.map +1 -1
- package/utils/fields-values-provider.js +17 -8
- package/utils/fields-values-provider.js.map +1 -1
- package/utils/form-value-container.js +7 -3
- package/utils/form-value-container.js.map +1 -1
- package/utils/interpreter.js +5 -1
- package/utils/interpreter.js.map +1 -1
- package/utils/languages.js +8 -3
- package/utils/languages.js.map +1 -1
- package/utils/markdown.js +11 -6
- package/utils/markdown.js.map +1 -1
- package/utils/no-lodash.js +9 -3
- package/utils/no-lodash.js.map +1 -1
- package/utils/primitive.js +12 -7
- package/utils/primitive.js.map +1 -1
- package/conversion/icure-convert.d.ts +0 -3
- package/conversion/icure-convert.js +0 -161
- package/conversion/icure-convert.js.map +0 -1
|
@@ -1,5 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.measureOnFocusHandler = exports.measureTransactionMapper = exports.getMeasureSpec = void 0;
|
|
4
|
+
const prosemirror_state_1 = require("prosemirror-state");
|
|
5
|
+
function getMeasureSpec() {
|
|
3
6
|
return {
|
|
4
7
|
topNode: 'paragraph',
|
|
5
8
|
nodes: {
|
|
@@ -31,7 +34,8 @@ export function getMeasureSpec() {
|
|
|
31
34
|
marks: {},
|
|
32
35
|
};
|
|
33
36
|
}
|
|
34
|
-
|
|
37
|
+
exports.getMeasureSpec = getMeasureSpec;
|
|
38
|
+
const measureTransactionMapper = (tr) => {
|
|
35
39
|
var _a, _b, _c, _d, _e, _f, _g;
|
|
36
40
|
const decimal = tr.doc.childCount && tr.doc.child(0).type.name === 'decimal' ? tr.doc.child(0) : null;
|
|
37
41
|
const decimalText = (_a = decimal === null || decimal === void 0 ? void 0 : decimal.textContent) !== null && _a !== void 0 ? _a : '';
|
|
@@ -58,9 +62,10 @@ export const measureTransactionMapper = (tr) => {
|
|
|
58
62
|
const newFrom = patchedTr.steps.slice(tr.steps.length).reduce((acc, step) => step.getMap().map(acc), from) +
|
|
59
63
|
((newUnitText === null || newUnitText === void 0 ? void 0 : newUnitText.charAt(0)) !== (unitText === null || unitText === void 0 ? void 0 : unitText.charAt(0)) && ((_b = newUnitText === null || newUnitText === void 0 ? void 0 : newUnitText.length) !== null && _b !== void 0 ? _b : 0) > ((_c = unitText === null || unitText === void 0 ? void 0 : unitText.length) !== null && _c !== void 0 ? _c : 0) ? 2 : 0) +
|
|
60
64
|
(((_d = newDecimalText === null || newDecimalText === void 0 ? void 0 : newDecimalText.length) !== null && _d !== void 0 ? _d : 0) > ((_e = decimalText === null || decimalText === void 0 ? void 0 : decimalText.length) !== null && _e !== void 0 ? _e : 0) && ((_f = newUnitText === null || newUnitText === void 0 ? void 0 : newUnitText.length) !== null && _f !== void 0 ? _f : 0) < ((_g = unitText === null || unitText === void 0 ? void 0 : unitText.length) !== null && _g !== void 0 ? _g : 0) ? -2 : 0);
|
|
61
|
-
return patchedTr.setSelection(TextSelection.create(patchedTr.doc, Math.min(newFrom, tr.doc.content.size - 1)));
|
|
65
|
+
return patchedTr.setSelection(prosemirror_state_1.TextSelection.create(patchedTr.doc, Math.min(newFrom, tr.doc.content.size - 1)));
|
|
62
66
|
};
|
|
63
|
-
|
|
67
|
+
exports.measureTransactionMapper = measureTransactionMapper;
|
|
68
|
+
const measureOnFocusHandler = (view) => {
|
|
64
69
|
var _a;
|
|
65
70
|
const doc = view.state.tr.doc;
|
|
66
71
|
const decimal = doc.childCount && doc.child(0).type.name === 'decimal' ? doc.child(0) : null;
|
|
@@ -69,7 +74,8 @@ export const measureOnFocusHandler = (view) => {
|
|
|
69
74
|
const unitText = unit === null || unit === void 0 ? void 0 : unit.textContent;
|
|
70
75
|
if ((unitText === null || unitText === void 0 ? void 0 : unitText.length) && !(decimalText === null || decimalText === void 0 ? void 0 : decimalText.length)) {
|
|
71
76
|
console.log('Setting selection to 1');
|
|
72
|
-
view.dispatch(view.state.tr.setSelection(TextSelection.create(view.state.tr.doc, 1)));
|
|
77
|
+
view.dispatch(view.state.tr.setSelection(prosemirror_state_1.TextSelection.create(view.state.tr.doc, 1)));
|
|
73
78
|
}
|
|
74
79
|
};
|
|
80
|
+
exports.measureOnFocusHandler = measureOnFocusHandler;
|
|
75
81
|
//# sourceMappingURL=measure-schema.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"measure-schema.js","sourceRoot":"","sources":["../../../../tmp/components/icure-text-field/schema/measure-schema.ts"],"names":[],"mappings":"AACA,
|
|
1
|
+
{"version":3,"file":"measure-schema.js","sourceRoot":"","sources":["../../../../tmp/components/icure-text-field/schema/measure-schema.ts"],"names":[],"mappings":"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","sourcesContent":["import { Node, SchemaSpec } from 'prosemirror-model'\nimport { TextSelection, Transaction } from 'prosemirror-state'\nimport { EditorView } from 'prosemirror-view'\n\nexport type MeasureSchema = 'measure'\n\nexport function getMeasureSpec(): SchemaSpec {\n\treturn {\n\t\ttopNode: 'paragraph',\n\t\tnodes: {\n\t\t\tparagraph: {\n\t\t\t\tcontent: 'decimal unit?',\n\t\t\t\tparseDOM: [{ tag: 'p' }],\n\t\t\t},\n\n\t\t\tdecimal: {\n\t\t\t\tcontent: 'inline*',\n\t\t\t\tgroup: 'block',\n\t\t\t\tparseDOM: [{ tag: 'span' }],\n\t\t\t\ttoDOM() {\n\t\t\t\t\treturn ['span', { class: 'measure' }, 0]\n\t\t\t\t},\n\t\t\t},\n\n\t\t\tunit: {\n\t\t\t\tcontent: 'inline*',\n\t\t\t\tgroup: 'block',\n\t\t\t\tparseDOM: [{ tag: 'span.unit' }],\n\t\t\t\ttoDOM() {\n\t\t\t\t\treturn ['span', { class: 'unit' }, 0]\n\t\t\t\t},\n\t\t\t\teditable: false,\n\t\t\t},\n\n\t\t\ttext: {\n\t\t\t\tgroup: 'inline',\n\t\t\t},\n\t\t},\n\t\tmarks: {},\n\t}\n}\n\nexport const measureTransactionMapper = (tr: Transaction) => {\n\tconst decimal = tr.doc.childCount && tr.doc.child(0).type.name === 'decimal' ? tr.doc.child(0) : null\n\tconst decimalText = decimal?.textContent ?? ''\n\tconst unit = tr.doc.childCount > 1 && tr.doc.child(1).type.name === 'unit' ? tr.doc.child(1) : null\n\tconst unitText = unit?.textContent\n\tconst schema = tr.doc.type.schema\n\n\tconst from = tr.selection.from\n\n\tconsole.log(`[${decimalText}] <${unitText}> : ${from} - ${tr.selection.to}`)\n\n\tif (decimalText?.match(/^[0-9.,-]+$/)) {\n\t\treturn tr\n\t}\n\n\tconst combinedText = (decimalText ?? '') + (unitText ?? '')\n\n\tconst newUnitText = combinedText.replace(/^[0-9.,-]*/, '').trimStart()\n\tconst newDecimalText = combinedText.replace(/^([0-9.,-]*) *.*$/, '$1').trim()\n\n\tif (newDecimalText === decimalText && newUnitText === unitText) {\n\t\treturn tr\n\t}\n\n\tconst patchedTr = tr.replaceWith(0, tr.doc.content.size, [\n\t\tschema.nodes['paragraph'].create(\n\t\t\t{},\n\t\t\t[\n\t\t\t\tschema.nodes['decimal'].create({}, newDecimalText.length ? [schema.text(newDecimalText)] : []),\n\t\t\t\tnewUnitText?.length ? schema.nodes['unit'].create({}, schema.text(newUnitText)) : undefined,\n\t\t\t].filter((x) => !!x) as Node[],\n\t\t),\n\t])\n\n\tconst newFrom =\n\t\tpatchedTr.steps.slice(tr.steps.length).reduce((acc, step) => step.getMap().map(acc), from) +\n\t\t(newUnitText?.charAt(0) !== unitText?.charAt(0) && (newUnitText?.length ?? 0) > (unitText?.length ?? 0) ? 2 : 0) +\n\t\t((newDecimalText?.length ?? 0) > (decimalText?.length ?? 0) && (newUnitText?.length ?? 0) < (unitText?.length ?? 0) ? -2 : 0)\n\n\treturn patchedTr.setSelection(TextSelection.create(patchedTr.doc, Math.min(newFrom, tr.doc.content.size - 1)))\n}\n\nexport const measureOnFocusHandler = (view: EditorView) => {\n\tconst doc = view.state.tr.doc\n\tconst decimal = doc.childCount && doc.child(0).type.name === 'decimal' ? doc.child(0) : null\n\tconst decimalText = decimal?.textContent ?? ''\n\tconst unit = doc.childCount > 1 && doc.child(1).type.name === 'unit' ? doc.child(1) : null\n\tconst unitText = unit?.textContent\n\n\tif (unitText?.length && !decimalText?.length) {\n\t\tconsole.log('Setting selection to 1')\n\t\tview.dispatch(view.state.tr.setSelection(TextSelection.create(view.state.tr.doc, 1)))\n\t}\n}\n"]}
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getTokensSpec = void 0;
|
|
4
|
+
const utils_1 = require("./utils");
|
|
5
|
+
const common_marks_1 = require("./common-marks");
|
|
6
|
+
function getTokensSpec(type, contentProvider, colorProvider) {
|
|
4
7
|
const marksSelector = (key) => {
|
|
5
8
|
// noinspection RedundantConditionalExpressionJS
|
|
6
9
|
return key !== 'link' && ['styled-tokens-list', 'styled-tokens-list-with-codes'].includes(type)
|
|
@@ -10,7 +13,7 @@ export function getTokensSpec(type, contentProvider, colorProvider) {
|
|
|
10
13
|
: false;
|
|
11
14
|
};
|
|
12
15
|
return {
|
|
13
|
-
nodes: reduceNodes({
|
|
16
|
+
nodes: (0, utils_1.reduceNodes)({
|
|
14
17
|
doc: {
|
|
15
18
|
content: 'token*',
|
|
16
19
|
},
|
|
@@ -27,7 +30,8 @@ export function getTokensSpec(type, contentProvider, colorProvider) {
|
|
|
27
30
|
group: 'inline',
|
|
28
31
|
},
|
|
29
32
|
}),
|
|
30
|
-
marks: reduceMarks(getMarks(contentProvider, colorProvider), marksSelector),
|
|
33
|
+
marks: (0, utils_1.reduceMarks)((0, common_marks_1.getMarks)(contentProvider, colorProvider), marksSelector),
|
|
31
34
|
};
|
|
32
35
|
}
|
|
36
|
+
exports.getTokensSpec = getTokensSpec;
|
|
33
37
|
//# sourceMappingURL=token-schema.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token-schema.js","sourceRoot":"","sources":["../../../../tmp/components/icure-text-field/schema/token-schema.ts"],"names":[],"mappings":"AACA,
|
|
1
|
+
{"version":3,"file":"token-schema.js","sourceRoot":"","sources":["../../../../tmp/components/icure-text-field/schema/token-schema.ts"],"names":[],"mappings":";;;AACA,mCAAkD;AAClD,iDAAyC;AAIzC,SAAgB,aAAa,CAC5B,IAAkB,EAClB,eAAoE,EACpE,aAAsE;IAEtE,MAAM,aAAa,GAA6C,CAAC,GAAW,EAAE,EAAE;QAC/E,gDAAgD;QAChD,OAAO,GAAG,KAAK,MAAM,IAAI,CAAC,oBAAoB,EAAE,+BAA+B,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC9F,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,GAAG,KAAK,MAAM,IAAI,CAAC,wBAAwB,EAAE,wBAAwB,CAAC;gBACxE,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC,KAAK,CAAA;IACT,CAAC,CAAA;IACD,OAAO;QACN,KAAK,EAAE,IAAA,mBAAW,EAAC;YAClB,GAAG,EAAE;gBACJ,OAAO,EAAE,QAAQ;aACjB;YAED,KAAK,EAAE;gBACN,OAAO,EAAE,SAAS;gBAClB,KAAK,EAAE,OAAO;gBACd,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE;gBACrC,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;gBACzB,KAAK,CAAC,IAAI;oBACT,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,oCAAoC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;gBAClH,CAAC;aACD;YAED,IAAI,EAAE;gBACL,KAAK,EAAE,QAAQ;aACf;SACD,CAAC;QACF,KAAK,EAAE,IAAA,mBAAW,EAAC,IAAA,uBAAQ,EAAC,eAAe,EAAE,aAAa,CAAC,EAAE,aAAa,CAAC;KAC3E,CAAA;AACF,CAAC;AAnCD,sCAmCC","sourcesContent":["import { MarkSpec, SchemaSpec } from 'prosemirror-model'\nimport { reduceMarks, reduceNodes } from './utils'\nimport { getMarks } from './common-marks'\n\nexport type TokensSchema = 'tokens-list' | 'styled-tokens-list' | 'tokens-list-with-codes' | 'styled-tokens-list-with-codes'\n\nexport function getTokensSpec(\n\ttype: TokensSchema,\n\tcontentProvider: (codes: { type: string; code: string }[]) => string,\n\tcolorProvider: (type: string, code: string, isCode: boolean) => string,\n): SchemaSpec {\n\tconst marksSelector: (key: string, spec: MarkSpec) => boolean = (key: string) => {\n\t\t// noinspection RedundantConditionalExpressionJS\n\t\treturn key !== 'link' && ['styled-tokens-list', 'styled-tokens-list-with-codes'].includes(type)\n\t\t\t? true\n\t\t\t: key === 'link' && ['tokens-list-with-codes', 'styled-text-with-codes']\n\t\t\t? true\n\t\t\t: false\n\t}\n\treturn {\n\t\tnodes: reduceNodes({\n\t\t\tdoc: {\n\t\t\t\tcontent: 'token*',\n\t\t\t},\n\n\t\t\ttoken: {\n\t\t\t\tcontent: 'inline*',\n\t\t\t\tgroup: 'block',\n\t\t\t\tattrs: { id: { default: undefined } },\n\t\t\t\tparseDOM: [{ tag: 'li' }],\n\t\t\t\ttoDOM(node) {\n\t\t\t\t\treturn ['li', {}, ['span', { class: 'token' }, 0], ['icure-metadata-buttons-bar-wrapper', { id: node.attrs.id }]]\n\t\t\t\t},\n\t\t\t},\n\n\t\t\ttext: {\n\t\t\t\tgroup: 'inline',\n\t\t\t},\n\t\t}),\n\t\tmarks: reduceMarks(getMarks(contentProvider, colorProvider), marksSelector),\n\t}\n}\n"]}
|
|
@@ -1,7 +1,12 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.reduceMarks = exports.reduceNodes = void 0;
|
|
4
|
+
function reduceNodes(nodes, selector = () => true) {
|
|
2
5
|
return Object.keys(nodes).reduce((r, k) => (selector(k, nodes[k]) ? Object.assign(r, { [k]: nodes[k] }) : r), {});
|
|
3
6
|
}
|
|
4
|
-
|
|
7
|
+
exports.reduceNodes = reduceNodes;
|
|
8
|
+
function reduceMarks(marks, selector = () => true) {
|
|
5
9
|
return Object.keys(marks).reduce((r, k) => (selector(k, marks[k]) ? Object.assign(r, { [k]: marks[k] }) : r), {});
|
|
6
10
|
}
|
|
11
|
+
exports.reduceMarks = reduceMarks;
|
|
7
12
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../tmp/components/icure-text-field/schema/utils.ts"],"names":[],"mappings":"AAEA,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../tmp/components/icure-text-field/schema/utils.ts"],"names":[],"mappings":";;;AAEA,SAAgB,WAAW,CAAC,KAAkC,EAAE,WAAqD,GAAG,EAAE,CAAC,IAAI;IAC9H,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAiC,CAAC,CAAA;AACjJ,CAAC;AAFD,kCAEC;AAED,SAAgB,WAAW,CAAC,KAAkC,EAAE,WAAqD,GAAG,EAAE,CAAC,IAAI;IAC9H,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAiC,CAAC,CAAA;AACjJ,CAAC;AAFD,kCAEC","sourcesContent":["import { MarkSpec, NodeSpec } from 'prosemirror-model'\n\nexport function reduceNodes(nodes: { [key: string]: NodeSpec }, selector: (key: string, spec: NodeSpec) => boolean = () => true): { [key: string]: NodeSpec } {\n\treturn Object.keys(nodes).reduce((r, k) => (selector(k, nodes[k]) ? Object.assign(r, { [k]: nodes[k] }) : r), {} as { [key: string]: NodeSpec })\n}\n\nexport function reduceMarks(marks: { [key: string]: MarkSpec }, selector: (key: string, spec: MarkSpec) => boolean = () => true): { [key: string]: MarkSpec } {\n\treturn Object.keys(marks).reduce((r, k) => (selector(k, marks[k]) ? Object.assign(r, { [k]: marks[k] }) : r), {} as { [key: string]: MarkSpec })\n}\n"]}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SelectionCompanion = void 0;
|
|
4
|
+
class SelectionCompanion {
|
|
2
5
|
constructor(view, delay) {
|
|
3
6
|
var _a, _b;
|
|
4
7
|
this.delay = () => false;
|
|
@@ -47,4 +50,5 @@ export class SelectionCompanion {
|
|
|
47
50
|
this.companion.remove();
|
|
48
51
|
}
|
|
49
52
|
}
|
|
53
|
+
exports.SelectionCompanion = SelectionCompanion;
|
|
50
54
|
//# sourceMappingURL=selection-companion.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"selection-companion.js","sourceRoot":"","sources":["../../../tmp/components/icure-text-field/selection-companion.ts"],"names":[],"mappings":"AAGA,
|
|
1
|
+
{"version":3,"file":"selection-companion.js","sourceRoot":"","sources":["../../../tmp/components/icure-text-field/selection-companion.ts"],"names":[],"mappings":";;;AAGA,MAAa,kBAAkB;IAK9B,YAAY,IAAgB,EAAE,KAAoB;;QAH1C,UAAK,GAAkB,GAAG,EAAE,CAAC,KAAK,CAAA;QAClC,aAAQ,GAAG,CAAC,CAAA;QAGnB,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;QAC9C,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,WAAW,CAAA;QAEtC,MAAA,MAAA,IAAI,CAAC,GAAG,0CAAE,UAAU,0CAAE,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAEjD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAElB,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;IAC7B,CAAC;IAED,MAAM,CAAC,IAAgB,EAAE,SAAuB;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QACxB,4DAA4D;QAC5D,IAAI,SAAS,IAAI,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;YACzF,OAAM;QACP,CAAC;QAED,+CAA+C;QAC/C,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;YAC3B,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAA;YACrC,OAAM;QACP,CAAC;QAED,kDAAkD;QAClD,MAAM,EAAE,EAAE,EAAE,GAAG,KAAK,CAAC,SAAS,CAAA;QAC9B,kCAAkC;QAClC,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;QAChC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAA;IACjD,CAAC;IAEO,OAAO,CAAC,GAAiE,EAAE,IAAY;;QAC9F,IAAI,IAAI,KAAK,IAAI,CAAC,QAAQ;YAAE,OAAM;QAClC,IAAI,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;YAClB,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC,CAAA;YAC9C,OAAM;QACP,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAA;QACjC,MAAM,GAAG,GAAG,MAAA,IAAI,CAAC,SAAS,CAAC,YAAY,0CAAE,qBAAqB,EAAE,CAAA;QAChE,IAAI,GAAG,EAAE,CAAC;YACT,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,IAAI,GAAG,IAAI,CAAA;YACvD,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,IAAI,CAAA;YACvD,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,IAAI,CAAA;YAC7D,IAAI,CAAC,SAAS,CAAC,WAAW,GAAG,GAAG,CAAA;QACjC,CAAC;IACF,CAAC;IAED,OAAO;QACN,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAA;IACxB,CAAC;CACD;AAvDD,gDAuDC","sourcesContent":["import { EditorView } from 'prosemirror-view'\nimport { EditorState } from 'prosemirror-state'\n\nexport class SelectionCompanion {\n\tprivate readonly companion: HTMLDivElement\n\tprivate delay: () => boolean = () => false\n\tprivate lastTime = 0\n\n\tconstructor(view: EditorView, delay: () => boolean) {\n\t\tthis.companion = document.createElement('div')\n\t\tthis.companion.className = 'companion'\n\n\t\tview.dom?.parentNode?.appendChild(this.companion)\n\n\t\tthis.delay = delay\n\n\t\tthis.update(view, undefined)\n\t}\n\n\tupdate(view: EditorView, lastState?: EditorState): void {\n\t\tconst state = view.state\n\t\t// Don't do anything if the document/selection didn't change\n\t\tif (lastState && lastState.doc.eq(state.doc) && lastState.selection.eq(state.selection)) {\n\t\t\treturn\n\t\t}\n\n\t\t// Hide the companion if the selection is empty\n\t\tif (state.selection.empty) {\n\t\t\tthis.companion.style.display = 'none'\n\t\t\treturn\n\t\t}\n\n\t\t// Otherwise, reposition it and update its content\n\t\tconst { to } = state.selection\n\t\t// These are in screen coordinates\n\t\tconst end = view.coordsAtPos(to)\n\t\tthis.display(end, (this.lastTime = +new Date()))\n\t}\n\n\tprivate display(pos: { left: number; right: number; top: number; bottom: number }, time: number) {\n\t\tif (time !== this.lastTime) return\n\t\tif (this.delay()) {\n\t\t\tsetTimeout(() => this.display(pos, time), 100)\n\t\t\treturn\n\t\t}\n\t\tthis.companion.style.display = ''\n\t\tconst box = this.companion.offsetParent?.getBoundingClientRect()\n\t\tif (box) {\n\t\t\tthis.companion.style.left = pos.right - box.left + 'px'\n\t\t\tthis.companion.style.top = pos.top - box.top - 2 + 'px'\n\t\t\tthis.companion.style.height = pos.bottom - pos.top + 2 + 'px'\n\t\t\tthis.companion.textContent = '+'\n\t\t}\n\t}\n\n\tdestroy(): void {\n\t\tthis.companion.remove()\n\t}\n}\n"]}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
"use strict";
|
|
1
2
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
3
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
4
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -7,8 +8,13 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
7
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
9
|
});
|
|
9
10
|
};
|
|
10
|
-
|
|
11
|
-
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.SuggestionPalette = void 0;
|
|
16
|
+
const fast_deep_equal_1 = __importDefault(require("fast-deep-equal"));
|
|
17
|
+
class SuggestionPalette {
|
|
12
18
|
constructor(schema, view, suggestionProvider, suggestionStopWordsProvider, delay) {
|
|
13
19
|
var _a, _b;
|
|
14
20
|
this.delay = () => false;
|
|
@@ -55,7 +61,7 @@ export class SuggestionPalette {
|
|
|
55
61
|
const stopWords = this.suggestionStopWordsProvider();
|
|
56
62
|
let length = sug.terms.join(' ').length - 1;
|
|
57
63
|
while (sel.to - length >= 0 &&
|
|
58
|
-
!
|
|
64
|
+
!(0, fast_deep_equal_1.default)(view.state.doc
|
|
59
65
|
.textBetween(sel.to - length, sel.to)
|
|
60
66
|
.split(/\s+/)
|
|
61
67
|
.filter((x) => !stopWords.has(x)), sug.terms)) {
|
|
@@ -159,4 +165,5 @@ export class SuggestionPalette {
|
|
|
159
165
|
this.palette.remove();
|
|
160
166
|
}
|
|
161
167
|
}
|
|
168
|
+
exports.SuggestionPalette = SuggestionPalette;
|
|
162
169
|
//# sourceMappingURL=suggestion-palette.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"suggestion-palette.js","sourceRoot":"","sources":["../../../tmp/components/icure-text-field/suggestion-palette.ts"],"names":[],"mappings":"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","sourcesContent":["import equal from 'fast-deep-equal'\n\nimport { EditorView } from 'prosemirror-view'\nimport { EditorState, Transaction } from 'prosemirror-state'\nimport { Schema } from 'prosemirror-model'\nimport { Suggestion } from '../../generic'\n\nexport class SuggestionPalette {\n\tprivate readonly palette: HTMLDivElement\n\tprivate delay: () => boolean = () => false\n\tprivate lastTime = 0\n\tprivate suggestionProvider: (terms: string[]) => Promise<Suggestion[]>\n\tprivate previousFingerprint?: string\n\n\tprivate suggestionStopWordsProvider: () => Set<string>\n\tprivate currentFocus?: number\n\tprivate hasFocus = false\n\tprivate suggestions: Suggestion[] = []\n\tprivate schema: Schema\n\n\tconstructor(\n\t\tschema: Schema,\n\t\tview: EditorView,\n\t\tsuggestionProvider: (terms: string[]) => Promise<Suggestion[]>,\n\t\tsuggestionStopWordsProvider: () => Set<string>,\n\t\tdelay?: () => boolean,\n\t) {\n\t\tthis.schema = schema\n\t\tthis.suggestionStopWordsProvider = suggestionStopWordsProvider\n\t\tthis.suggestionProvider = suggestionProvider\n\t\tthis.palette = document.createElement('div')\n\t\tthis.palette.className = 'suggestion-palette'\n\n\t\tview.dom?.parentNode?.appendChild(this.palette)\n\n\t\tdelay && (this.delay = delay)\n\n\t\tthis.update(view, undefined)\n\t}\n\n\tfocusItem(idx?: number): void {\n\t\tconst ul = this.palette.getElementsByTagName('ul')[0]\n\t\tif (ul) {\n\t\t\tul.classList.add('focused')\n\t\t\tconst lis = ul.getElementsByTagName('li')\n\t\t\tthis.currentFocus !== undefined && (lis[this.currentFocus] as HTMLElement).classList.remove('focused')\n\t\t\tidx !== undefined && (lis[idx] as HTMLElement).classList.add('focused')\n\n\t\t\tthis.currentFocus = idx\n\t\t}\n\t}\n\n\tfocus(): boolean {\n\t\tif (this.palette.style.display === 'none') return false\n\t\tthis.hasFocus = true\n\t\tthis.focusItem(0)\n\t\treturn true\n\t}\n\n\tfocusOrInsert(view: EditorView, transactionProvider: (from: number, to: number, sug: Suggestion) => Promise<Transaction | undefined>): boolean {\n\t\tif (this.palette.style.display === 'none') return false\n\t\treturn this.hasFocus ? this.insert(view, transactionProvider) : this.focus()\n\t}\n\n\tinsert(view: EditorView, transactionProvider: (from: number, to: number, sug: Suggestion) => Promise<Transaction | undefined>): boolean {\n\t\tif (this.palette.style.display === 'none' || !this.hasFocus || this.currentFocus === undefined) return false\n\t\tconst sug = this.suggestions[this.currentFocus]\n\t\tif (sug) {\n\t\t\tconst sel = view.state.selection\n\t\t\tconst stopWords = this.suggestionStopWordsProvider()\n\n\t\t\tlet length = sug.terms.join(' ').length - 1\n\t\t\twhile (\n\t\t\t\tsel.to - length >= 0 &&\n\t\t\t\t!equal(\n\t\t\t\t\tview.state.doc\n\t\t\t\t\t\t.textBetween(sel.to - length, sel.to)\n\t\t\t\t\t\t.split(/\\s+/)\n\t\t\t\t\t\t.filter((x) => !stopWords.has(x)),\n\t\t\t\t\tsug.terms,\n\t\t\t\t)\n\t\t\t) {\n\t\t\t\tlength++\n\t\t\t}\n\t\t\tif (length > sel.to) {\n\t\t\t\tlength = sug.terms.join(' ').length\n\t\t\t\twhile (sel.to - length >= 0 && !view.state.doc.textBetween(sel.to - length, sel.to).startsWith(sug.terms[0])) {\n\t\t\t\t\tlength++\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (length <= sel.to) {\n\t\t\t\ttransactionProvider(sel.to - length, sel.to, sug).then((tr) => tr && view.dispatch(tr.scrollIntoView()))\n\t\t\t}\n\t\t\tthis.palette.style.display = 'none'\n\t\t\treturn true\n\t\t}\n\t\treturn false\n\t}\n\n\tarrowUp(): boolean {\n\t\tif (!this.hasFocus) return false\n\t\tthis.currentFocus && this.focusItem(this.currentFocus - 1)\n\t\treturn true\n\t}\n\n\tarrowDown(): boolean {\n\t\tif (!this.hasFocus) return false\n\t\tthis.currentFocus !== undefined && this.currentFocus < this.palette.getElementsByTagName('ul')[0].childElementCount - 1 && this.focusItem(this.currentFocus + 1)\n\t\treturn true\n\t}\n\n\tupdate(view: EditorView, lastState?: EditorState): void {\n\t\tconst state = view.state\n\n\t\t// Hide the palette if the selection is not empty\n\t\tthis.focusItem(undefined)\n\t\tthis.hasFocus = false\n\n\t\tif (!state.selection.empty) {\n\t\t\tthis.palette.style.display = 'none'\n\t\t\treturn\n\t\t}\n\n\t\tconst $pos = state.selection.$head\n\t\tif (lastState?.doc.textContent === state.doc.textContent) {\n\t\t\tthis.palette.style.display = 'none'\n\t\t\treturn\n\t\t}\n\n\t\tconst text = state.doc.textBetween($pos.pos && $pos.depth ? $pos.before() + 1 : 0, $pos.pos)\n\n\t\tconst words = text.split(/\\s+/)\n\t\tconst lastWordDelta = Math.min(\n\t\t\twords\n\t\t\t\t.concat()\n\t\t\t\t.reverse()\n\t\t\t\t.reduce((d, w) => (d < 0 ? d : w.length ? -d - w.length : d + 1), 0),\n\t\t\t-1,\n\t\t)\n\t\tconsole.log('lwd', lastWordDelta)\n\t\tif ($pos.pos > 1 && state.doc.rangeHasMark($pos.pos + lastWordDelta, $pos.pos, this.schema.marks['link'])) {\n\t\t\tconsole.log('Skip suggestion')\n\t\t\tthis.palette.style.display = 'none'\n\t\t\treturn\n\t\t}\n\n\t\tconst terms = words.filter((x) => x.length > 2 && !this.suggestionStopWordsProvider().has(x))\n\t\tconst lastTerms = terms.length > 3 ? terms.slice(length - 3) : terms\n\t\tconst fingerprint = lastTerms.join(' ')\n\n\t\tconst { to } = state.selection\n\n\t\tif (this.previousFingerprint !== fingerprint) {\n\t\t\tthis.previousFingerprint = fingerprint\n\t\t\tsetTimeout(async () => {\n\t\t\t\tif (this.previousFingerprint !== fingerprint) return\n\t\t\t\tconst res = await this.suggestionProvider(lastTerms)\n\t\t\t\tthis.suggestions = res\n\t\t\t\tif (res.length) {\n\t\t\t\t\tthis.palette.innerHTML = `<ul>${res\n\t\t\t\t\t\t.map(\n\t\t\t\t\t\t\t(x) =>\n\t\t\t\t\t\t\t\t`<li id=\"${x.id}\" data-code=\"${x.code}\">${x.text}<div class=\"icn-container\"><svg class=\"tab-icn\" viewBox=\"0 0 24 24\"><path d=\"M12.29 8.12L15.17 11H2c-.55 0-1 .45-1 1s.45 1 1 1h13.17l-2.88 2.88c-.39.39-.39 1.02 0 1.41.39.39 1.02.39 1.41 0l4.59-4.59c.39-.39.39-1.02 0-1.41L13.7 6.7c-.39-.39-1.02-.39-1.41 0-.38.39-.39 1.03 0 1.42zM20 7v10c0 .55.45 1 1 1s1-.45 1-1V7c0-.55-.45-1-1-1s-1 .45-1 1z\"/></svg><svg class=\"return-icn\" viewBox=\"0 0 24 24\"><path d=\"M19 8v3H5.83l2.88-2.88c.39-.39.39-1.02 0-1.41-.39-.39-1.02-.39-1.41 0L2.71 11.3c-.39.39-.39 1.02 0 1.41L7.3 17.3c.39.39 1.02.39 1.41 0 .39-.39.39-1.02 0-1.41L5.83 13H20c.55 0 1-.45 1-1V8c0-.55-.45-1-1-1s-1 .45-1 1z\"/></svg></div></li>`,\n\t\t\t\t\t\t)\n\t\t\t\t\t\t.join('\\n')}</ul>`\n\t\t\t\t\t// These are in screen coordinates\n\t\t\t\t\tconst end = view.coordsAtPos(to)\n\t\t\t\t\tconst start = view.coordsAtPos(Math.max(0, to - terms[terms.length - 1].length))\n\n\t\t\t\t\tthis.display(start.left > end.left ? end : start, (this.lastTime = +new Date()))\n\t\t\t\t} else {\n\t\t\t\t\tthis.palette.style.display = 'none'\n\t\t\t\t}\n\t\t\t}, 30)\n\t\t}\n\t}\n\n\tprivate display(pos: { left: number; right: number; top: number; bottom: number }, time: number): void {\n\t\tif (time !== this.lastTime) return\n\t\tif (this.delay()) {\n\t\t\tsetTimeout(() => this.display(pos, time), 100)\n\t\t\treturn\n\t\t}\n\t\tthis.palette.style.display = ''\n\t\tconst box = this.palette.offsetParent?.getBoundingClientRect()\n\t\tconst palBox = this.palette.getBoundingClientRect()\n\t\tif (box) {\n\t\t\tthis.palette.style.left = Math.max(0, Math.min(pos.left - box.left - 12, box.width - palBox.width)) + 'px'\n\t\t\tthis.palette.style.top = pos.bottom - box.top + 4 + 'px'\n\t\t}\n\t}\n\n\tdestroy(): void {\n\t\tthis.palette.remove()\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"suggestion-palette.js","sourceRoot":"","sources":["../../../tmp/components/icure-text-field/suggestion-palette.ts"],"names":[],"mappings":"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","sourcesContent":["import equal from 'fast-deep-equal'\n\nimport { EditorView } from 'prosemirror-view'\nimport { EditorState, Transaction } from 'prosemirror-state'\nimport { Schema } from 'prosemirror-model'\nimport { Suggestion } from '../../generic'\n\nexport class SuggestionPalette {\n\tprivate readonly palette: HTMLDivElement\n\tprivate delay: () => boolean = () => false\n\tprivate lastTime = 0\n\tprivate suggestionProvider: (terms: string[]) => Promise<Suggestion[]>\n\tprivate previousFingerprint?: string\n\n\tprivate suggestionStopWordsProvider: () => Set<string>\n\tprivate currentFocus?: number\n\tprivate hasFocus = false\n\tprivate suggestions: Suggestion[] = []\n\tprivate schema: Schema\n\n\tconstructor(\n\t\tschema: Schema,\n\t\tview: EditorView,\n\t\tsuggestionProvider: (terms: string[]) => Promise<Suggestion[]>,\n\t\tsuggestionStopWordsProvider: () => Set<string>,\n\t\tdelay?: () => boolean,\n\t) {\n\t\tthis.schema = schema\n\t\tthis.suggestionStopWordsProvider = suggestionStopWordsProvider\n\t\tthis.suggestionProvider = suggestionProvider\n\t\tthis.palette = document.createElement('div')\n\t\tthis.palette.className = 'suggestion-palette'\n\n\t\tview.dom?.parentNode?.appendChild(this.palette)\n\n\t\tdelay && (this.delay = delay)\n\n\t\tthis.update(view, undefined)\n\t}\n\n\tfocusItem(idx?: number): void {\n\t\tconst ul = this.palette.getElementsByTagName('ul')[0]\n\t\tif (ul) {\n\t\t\tul.classList.add('focused')\n\t\t\tconst lis = ul.getElementsByTagName('li')\n\t\t\tthis.currentFocus !== undefined && (lis[this.currentFocus] as HTMLElement).classList.remove('focused')\n\t\t\tidx !== undefined && (lis[idx] as HTMLElement).classList.add('focused')\n\n\t\t\tthis.currentFocus = idx\n\t\t}\n\t}\n\n\tfocus(): boolean {\n\t\tif (this.palette.style.display === 'none') return false\n\t\tthis.hasFocus = true\n\t\tthis.focusItem(0)\n\t\treturn true\n\t}\n\n\tfocusOrInsert(view: EditorView, transactionProvider: (from: number, to: number, sug: Suggestion) => Promise<Transaction | undefined>): boolean {\n\t\tif (this.palette.style.display === 'none') return false\n\t\treturn this.hasFocus ? this.insert(view, transactionProvider) : this.focus()\n\t}\n\n\tinsert(view: EditorView, transactionProvider: (from: number, to: number, sug: Suggestion) => Promise<Transaction | undefined>): boolean {\n\t\tif (this.palette.style.display === 'none' || !this.hasFocus || this.currentFocus === undefined) return false\n\t\tconst sug = this.suggestions[this.currentFocus]\n\t\tif (sug) {\n\t\t\tconst sel = view.state.selection\n\t\t\tconst stopWords = this.suggestionStopWordsProvider()\n\n\t\t\tlet length = sug.terms.join(' ').length - 1\n\t\t\twhile (\n\t\t\t\tsel.to - length >= 0 &&\n\t\t\t\t!equal(\n\t\t\t\t\tview.state.doc\n\t\t\t\t\t\t.textBetween(sel.to - length, sel.to)\n\t\t\t\t\t\t.split(/\\s+/)\n\t\t\t\t\t\t.filter((x) => !stopWords.has(x)),\n\t\t\t\t\tsug.terms,\n\t\t\t\t)\n\t\t\t) {\n\t\t\t\tlength++\n\t\t\t}\n\t\t\tif (length > sel.to) {\n\t\t\t\tlength = sug.terms.join(' ').length\n\t\t\t\twhile (sel.to - length >= 0 && !view.state.doc.textBetween(sel.to - length, sel.to).startsWith(sug.terms[0])) {\n\t\t\t\t\tlength++\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (length <= sel.to) {\n\t\t\t\ttransactionProvider(sel.to - length, sel.to, sug).then((tr) => tr && view.dispatch(tr.scrollIntoView()))\n\t\t\t}\n\t\t\tthis.palette.style.display = 'none'\n\t\t\treturn true\n\t\t}\n\t\treturn false\n\t}\n\n\tarrowUp(): boolean {\n\t\tif (!this.hasFocus) return false\n\t\tthis.currentFocus && this.focusItem(this.currentFocus - 1)\n\t\treturn true\n\t}\n\n\tarrowDown(): boolean {\n\t\tif (!this.hasFocus) return false\n\t\tthis.currentFocus !== undefined && this.currentFocus < this.palette.getElementsByTagName('ul')[0].childElementCount - 1 && this.focusItem(this.currentFocus + 1)\n\t\treturn true\n\t}\n\n\tupdate(view: EditorView, lastState?: EditorState): void {\n\t\tconst state = view.state\n\n\t\t// Hide the palette if the selection is not empty\n\t\tthis.focusItem(undefined)\n\t\tthis.hasFocus = false\n\n\t\tif (!state.selection.empty) {\n\t\t\tthis.palette.style.display = 'none'\n\t\t\treturn\n\t\t}\n\n\t\tconst $pos = state.selection.$head\n\t\tif (lastState?.doc.textContent === state.doc.textContent) {\n\t\t\tthis.palette.style.display = 'none'\n\t\t\treturn\n\t\t}\n\n\t\tconst text = state.doc.textBetween($pos.pos && $pos.depth ? $pos.before() + 1 : 0, $pos.pos)\n\n\t\tconst words = text.split(/\\s+/)\n\t\tconst lastWordDelta = Math.min(\n\t\t\twords\n\t\t\t\t.concat()\n\t\t\t\t.reverse()\n\t\t\t\t.reduce((d, w) => (d < 0 ? d : w.length ? -d - w.length : d + 1), 0),\n\t\t\t-1,\n\t\t)\n\t\tconsole.log('lwd', lastWordDelta)\n\t\tif ($pos.pos > 1 && state.doc.rangeHasMark($pos.pos + lastWordDelta, $pos.pos, this.schema.marks['link'])) {\n\t\t\tconsole.log('Skip suggestion')\n\t\t\tthis.palette.style.display = 'none'\n\t\t\treturn\n\t\t}\n\n\t\tconst terms = words.filter((x) => x.length > 2 && !this.suggestionStopWordsProvider().has(x))\n\t\tconst lastTerms = terms.length > 3 ? terms.slice(length - 3) : terms\n\t\tconst fingerprint = lastTerms.join(' ')\n\n\t\tconst { to } = state.selection\n\n\t\tif (this.previousFingerprint !== fingerprint) {\n\t\t\tthis.previousFingerprint = fingerprint\n\t\t\tsetTimeout(async () => {\n\t\t\t\tif (this.previousFingerprint !== fingerprint) return\n\t\t\t\tconst res = await this.suggestionProvider(lastTerms)\n\t\t\t\tthis.suggestions = res\n\t\t\t\tif (res.length) {\n\t\t\t\t\tthis.palette.innerHTML = `<ul>${res\n\t\t\t\t\t\t.map(\n\t\t\t\t\t\t\t(x) =>\n\t\t\t\t\t\t\t\t`<li id=\"${x.id}\" data-code=\"${x.code}\">${x.text}<div class=\"icn-container\"><svg class=\"tab-icn\" viewBox=\"0 0 24 24\"><path d=\"M12.29 8.12L15.17 11H2c-.55 0-1 .45-1 1s.45 1 1 1h13.17l-2.88 2.88c-.39.39-.39 1.02 0 1.41.39.39 1.02.39 1.41 0l4.59-4.59c.39-.39.39-1.02 0-1.41L13.7 6.7c-.39-.39-1.02-.39-1.41 0-.38.39-.39 1.03 0 1.42zM20 7v10c0 .55.45 1 1 1s1-.45 1-1V7c0-.55-.45-1-1-1s-1 .45-1 1z\"/></svg><svg class=\"return-icn\" viewBox=\"0 0 24 24\"><path d=\"M19 8v3H5.83l2.88-2.88c.39-.39.39-1.02 0-1.41-.39-.39-1.02-.39-1.41 0L2.71 11.3c-.39.39-.39 1.02 0 1.41L7.3 17.3c.39.39 1.02.39 1.41 0 .39-.39.39-1.02 0-1.41L5.83 13H20c.55 0 1-.45 1-1V8c0-.55-.45-1-1-1s-1 .45-1 1z\"/></svg></div></li>`,\n\t\t\t\t\t\t)\n\t\t\t\t\t\t.join('\\n')}</ul>`\n\t\t\t\t\t// These are in screen coordinates\n\t\t\t\t\tconst end = view.coordsAtPos(to)\n\t\t\t\t\tconst start = view.coordsAtPos(Math.max(0, to - terms[terms.length - 1].length))\n\n\t\t\t\t\tthis.display(start.left > end.left ? end : start, (this.lastTime = +new Date()))\n\t\t\t\t} else {\n\t\t\t\t\tthis.palette.style.display = 'none'\n\t\t\t\t}\n\t\t\t}, 30)\n\t\t}\n\t}\n\n\tprivate display(pos: { left: number; right: number; top: number; bottom: number }, time: number): void {\n\t\tif (time !== this.lastTime) return\n\t\tif (this.delay()) {\n\t\t\tsetTimeout(() => this.display(pos, time), 100)\n\t\t\treturn\n\t\t}\n\t\tthis.palette.style.display = ''\n\t\tconst box = this.palette.offsetParent?.getBoundingClientRect()\n\t\tconst palBox = this.palette.getBoundingClientRect()\n\t\tif (box) {\n\t\t\tthis.palette.style.left = Math.max(0, Math.min(pos.left - box.left - 12, box.width - palBox.width)) + 'px'\n\t\t\tthis.palette.style.top = pos.bottom - box.top + 4 + 'px'\n\t\t}\n\t}\n\n\tdestroy(): void {\n\t\tthis.palette.remove()\n\t}\n}\n"]}
|
package/components/index.js
CHANGED
|
@@ -1,6 +1,22 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./common"), exports);
|
|
18
|
+
__exportStar(require("./icure-form"), exports);
|
|
19
|
+
__exportStar(require("./icure-date-picker"), exports);
|
|
20
|
+
__exportStar(require("./icure-button-group"), exports);
|
|
21
|
+
__exportStar(require("./icure-label"), exports);
|
|
6
22
|
//# sourceMappingURL=index.js.map
|
package/components/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../tmp/components/index.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../tmp/components/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAwB;AACxB,+CAA4B;AAC5B,sDAAmC;AACnC,uDAAoC;AACpC,gDAA6B","sourcesContent":["export * from './common'\nexport * from './icure-form'\nexport * from './icure-date-picker'\nexport * from './icure-button-group'\nexport * from './icure-label'\n"]}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Form = exports.TranslationTable = exports.Codification = exports.Section = exports.Subform = exports.Group = exports.Button = exports.Label = exports.CheckBox = exports.RadioButton = exports.DropdownField = exports.DateTimePicker = exports.TimePicker = exports.DatePicker = exports.ItemsListField = exports.TokenField = exports.NumberField = exports.MeasureField = exports.TextField = exports.Field = exports.pteq = void 0;
|
|
4
|
+
const pteq = (a, b) => {
|
|
2
5
|
if (a === b) {
|
|
3
6
|
return true;
|
|
4
7
|
}
|
|
@@ -12,11 +15,12 @@ export const pteq = (a, b) => {
|
|
|
12
15
|
return true;
|
|
13
16
|
}
|
|
14
17
|
if (a.type === 'compound' && b.type === 'compound') {
|
|
15
|
-
return Object.keys(a.value).every((k) => pteq(a.value[k], b.value[k]));
|
|
18
|
+
return Object.keys(a.value).every((k) => (0, exports.pteq)(a.value[k], b.value[k]));
|
|
16
19
|
}
|
|
17
20
|
return false;
|
|
18
21
|
};
|
|
19
|
-
|
|
22
|
+
exports.pteq = pteq;
|
|
23
|
+
class Field {
|
|
20
24
|
label() {
|
|
21
25
|
return this.field;
|
|
22
26
|
}
|
|
@@ -91,7 +95,8 @@ export class Field {
|
|
|
91
95
|
};
|
|
92
96
|
}
|
|
93
97
|
}
|
|
94
|
-
|
|
98
|
+
exports.Field = Field;
|
|
99
|
+
class TextField extends Field {
|
|
95
100
|
constructor(label, { shortLabel, grows, span, rowSpan, schema, tags, codifications, readonly, options, labels, value, unit, multiline, computedProperties, validators, translate, width, styleOptions, }) {
|
|
96
101
|
super('text-field', label, {
|
|
97
102
|
shortLabel,
|
|
@@ -118,7 +123,8 @@ export class TextField extends Field {
|
|
|
118
123
|
return new TextField(this.field, Object.assign(Object.assign({}, this), properties));
|
|
119
124
|
}
|
|
120
125
|
}
|
|
121
|
-
|
|
126
|
+
exports.TextField = TextField;
|
|
127
|
+
class MeasureField extends Field {
|
|
122
128
|
constructor(label, { shortLabel, grows, span, rowSpan, tags, codifications, readonly, options, labels, value, unit, computedProperties, validators, translate, width, styleOptions, }) {
|
|
123
129
|
super('measure-field', label, {
|
|
124
130
|
shortLabel,
|
|
@@ -143,7 +149,8 @@ export class MeasureField extends Field {
|
|
|
143
149
|
return new MeasureField(this.field, Object.assign(Object.assign({}, this), properties));
|
|
144
150
|
}
|
|
145
151
|
}
|
|
146
|
-
|
|
152
|
+
exports.MeasureField = MeasureField;
|
|
153
|
+
class NumberField extends Field {
|
|
147
154
|
constructor(label, { shortLabel, grows, span, rowSpan, tags, codifications, readonly, options, labels, value, unit, computedProperties, validators, translate, width, styleOptions, }) {
|
|
148
155
|
super('number-field', label, {
|
|
149
156
|
shortLabel,
|
|
@@ -168,7 +175,8 @@ export class NumberField extends Field {
|
|
|
168
175
|
return new NumberField(this.field, Object.assign(Object.assign({}, this), properties));
|
|
169
176
|
}
|
|
170
177
|
}
|
|
171
|
-
|
|
178
|
+
exports.NumberField = NumberField;
|
|
179
|
+
class TokenField extends Field {
|
|
172
180
|
constructor(label, { shortLabel, grows, span, rowSpan, tags, codifications, readonly, options, labels, value, unit, computedProperties, validators, translate, width, styleOptions, }) {
|
|
173
181
|
super('token-field', label, {
|
|
174
182
|
shortLabel,
|
|
@@ -193,7 +201,8 @@ export class TokenField extends Field {
|
|
|
193
201
|
return new TokenField(this.field, Object.assign(Object.assign({}, this), properties));
|
|
194
202
|
}
|
|
195
203
|
}
|
|
196
|
-
|
|
204
|
+
exports.TokenField = TokenField;
|
|
205
|
+
class ItemsListField extends Field {
|
|
197
206
|
constructor(label, { shortLabel, grows, span, rowSpan, tags, codifications, readonly, options, labels, value, unit, computedProperties, validators, translate, width, styleOptions, }) {
|
|
198
207
|
super('items-list-field', label, {
|
|
199
208
|
shortLabel,
|
|
@@ -218,7 +227,8 @@ export class ItemsListField extends Field {
|
|
|
218
227
|
return new ItemsListField(this.field, Object.assign(Object.assign({}, this), properties));
|
|
219
228
|
}
|
|
220
229
|
}
|
|
221
|
-
|
|
230
|
+
exports.ItemsListField = ItemsListField;
|
|
231
|
+
class DatePicker extends Field {
|
|
222
232
|
constructor(label, { shortLabel, grows, span, rowSpan, tags, codifications, readonly, options, labels, value, unit, computedProperties, validators, now, translate, width, styleOptions, }) {
|
|
223
233
|
super('date-picker', label, {
|
|
224
234
|
shortLabel,
|
|
@@ -244,7 +254,8 @@ export class DatePicker extends Field {
|
|
|
244
254
|
return new DatePicker(this.field, Object.assign(Object.assign({}, this), properties));
|
|
245
255
|
}
|
|
246
256
|
}
|
|
247
|
-
|
|
257
|
+
exports.DatePicker = DatePicker;
|
|
258
|
+
class TimePicker extends Field {
|
|
248
259
|
constructor(label, { shortLabel, grows, span, rowSpan, tags, codifications, readonly, options, labels, value, unit, computedProperties, validators, now, translate, width, styleOptions, }) {
|
|
249
260
|
super('time-picker', label, {
|
|
250
261
|
shortLabel,
|
|
@@ -270,7 +281,8 @@ export class TimePicker extends Field {
|
|
|
270
281
|
return new TimePicker(this.field, Object.assign(Object.assign({}, this), properties));
|
|
271
282
|
}
|
|
272
283
|
}
|
|
273
|
-
|
|
284
|
+
exports.TimePicker = TimePicker;
|
|
285
|
+
class DateTimePicker extends Field {
|
|
274
286
|
constructor(label, { shortLabel, grows, span, rowSpan, tags, codifications, readonly, options, labels, value, unit, computedProperties, validators, now, translate, width, styleOptions, }) {
|
|
275
287
|
super('date-time-picker', label, {
|
|
276
288
|
shortLabel,
|
|
@@ -296,7 +308,8 @@ export class DateTimePicker extends Field {
|
|
|
296
308
|
return new DateTimePicker(this.field, Object.assign(Object.assign({}, this), properties));
|
|
297
309
|
}
|
|
298
310
|
}
|
|
299
|
-
|
|
311
|
+
exports.DateTimePicker = DateTimePicker;
|
|
312
|
+
class DropdownField extends Field {
|
|
300
313
|
constructor(label, options) {
|
|
301
314
|
var _a;
|
|
302
315
|
super('dropdown-field', label, {
|
|
@@ -320,7 +333,8 @@ export class DropdownField extends Field {
|
|
|
320
333
|
return new DropdownField(this.field, Object.assign(Object.assign({}, this), properties));
|
|
321
334
|
}
|
|
322
335
|
}
|
|
323
|
-
|
|
336
|
+
exports.DropdownField = DropdownField;
|
|
337
|
+
class RadioButton extends Field {
|
|
324
338
|
constructor(label, { shortLabel, grows, span, rowSpan, tags, codifications, readonly, options, value, computedProperties, validators, translate, sortOptions, width, styleOptions, hasOther, }) {
|
|
325
339
|
super('radio-button', label, {
|
|
326
340
|
shortLabel,
|
|
@@ -345,7 +359,8 @@ export class RadioButton extends Field {
|
|
|
345
359
|
return new RadioButton(this.field, Object.assign(Object.assign({}, this), properties));
|
|
346
360
|
}
|
|
347
361
|
}
|
|
348
|
-
|
|
362
|
+
exports.RadioButton = RadioButton;
|
|
363
|
+
class CheckBox extends Field {
|
|
349
364
|
constructor(label, { shortLabel, grows, span, rowSpan, tags, codifications, readonly, options, value, computedProperties, validators, translate, sortOptions, width, styleOptions, }) {
|
|
350
365
|
super('checkbox', label, {
|
|
351
366
|
shortLabel,
|
|
@@ -369,7 +384,8 @@ export class CheckBox extends Field {
|
|
|
369
384
|
return new CheckBox(this.field, Object.assign(Object.assign({}, this), properties));
|
|
370
385
|
}
|
|
371
386
|
}
|
|
372
|
-
|
|
387
|
+
exports.CheckBox = CheckBox;
|
|
388
|
+
class Label extends Field {
|
|
373
389
|
constructor(label, { shortLabel, grows, span }) {
|
|
374
390
|
super('label', label, { shortLabel, grows, span });
|
|
375
391
|
}
|
|
@@ -377,7 +393,8 @@ export class Label extends Field {
|
|
|
377
393
|
return new Label(this.field, Object.assign(Object.assign({}, this), properties));
|
|
378
394
|
}
|
|
379
395
|
}
|
|
380
|
-
|
|
396
|
+
exports.Label = Label;
|
|
397
|
+
class Button extends Field {
|
|
381
398
|
constructor(label, { shortLabel, grows, span, event, payload }) {
|
|
382
399
|
super('action', label, { shortLabel, grows, span, event, payload });
|
|
383
400
|
}
|
|
@@ -385,7 +402,8 @@ export class Button extends Field {
|
|
|
385
402
|
return new Button(this.field, Object.assign(Object.assign({}, this), properties));
|
|
386
403
|
}
|
|
387
404
|
}
|
|
388
|
-
|
|
405
|
+
exports.Button = Button;
|
|
406
|
+
class Group {
|
|
389
407
|
constructor(title, fields, { span, rowSpan, borderless, translate, computedProperties, width, styleOptions, }) {
|
|
390
408
|
this.clazz = 'group';
|
|
391
409
|
this.group = title;
|
|
@@ -429,7 +447,8 @@ export class Group {
|
|
|
429
447
|
};
|
|
430
448
|
}
|
|
431
449
|
}
|
|
432
|
-
|
|
450
|
+
exports.Group = Group;
|
|
451
|
+
class Subform {
|
|
433
452
|
constructor(title, forms, { id, shortLabel, span, rowSpan, computedProperties, width, styleOptions, refs, labels, }) {
|
|
434
453
|
this.clazz = 'subform';
|
|
435
454
|
this.id = id || title;
|
|
@@ -471,7 +490,8 @@ export class Subform {
|
|
|
471
490
|
};
|
|
472
491
|
}
|
|
473
492
|
}
|
|
474
|
-
|
|
493
|
+
exports.Subform = Subform;
|
|
494
|
+
class Section {
|
|
475
495
|
constructor(title, fields, description, keywords) {
|
|
476
496
|
this.section = title;
|
|
477
497
|
this.fields = fields;
|
|
@@ -495,7 +515,8 @@ export class Section {
|
|
|
495
515
|
};
|
|
496
516
|
}
|
|
497
517
|
}
|
|
498
|
-
|
|
518
|
+
exports.Section = Section;
|
|
519
|
+
class Codification {
|
|
499
520
|
constructor(type, codes) {
|
|
500
521
|
this.type = type;
|
|
501
522
|
this.codes = codes;
|
|
@@ -522,7 +543,8 @@ export class Codification {
|
|
|
522
543
|
};
|
|
523
544
|
}
|
|
524
545
|
}
|
|
525
|
-
|
|
546
|
+
exports.Codification = Codification;
|
|
547
|
+
class TranslationTable {
|
|
526
548
|
constructor(language, translations) {
|
|
527
549
|
this.language = language;
|
|
528
550
|
this.translations = translations;
|
|
@@ -538,7 +560,8 @@ export class TranslationTable {
|
|
|
538
560
|
};
|
|
539
561
|
}
|
|
540
562
|
}
|
|
541
|
-
|
|
563
|
+
exports.TranslationTable = TranslationTable;
|
|
564
|
+
class Form {
|
|
542
565
|
constructor(title, sections, id, description, keywords, codifications, translations) {
|
|
543
566
|
this.form = title;
|
|
544
567
|
this.description = description;
|
|
@@ -608,4 +631,5 @@ export class Form {
|
|
|
608
631
|
};
|
|
609
632
|
}
|
|
610
633
|
}
|
|
634
|
+
exports.Form = Form;
|
|
611
635
|
//# sourceMappingURL=index.js.map
|