@quickflo/quickforms-quasar 1.13.1 → 1.14.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/style.css CHANGED
@@ -1 +1 @@
1
- .datetime-picker-card[data-v-76abc7a3]{overflow:hidden}[data-v-76abc7a3] .datetime-date-picker .q-date__view,[data-v-76abc7a3] .datetime-time-picker .q-time{border:none!important;box-shadow:none!important}[data-v-76abc7a3] .datetime-date-picker,[data-v-76abc7a3] .datetime-time-picker{max-width:290px}.quickform-json-field-wrapper{width:100%}.quickform-label-header{display:flex;align-items:center;gap:.375rem;margin-bottom:.5rem}.quickform-label-text{font-size:.875rem;font-weight:500;color:#000000de}.quickform-hint{font-size:.875rem;color:#0009;margin-bottom:.25rem}.quickform-json-format-hint{font-size:.75rem;color:#00000073;margin-bottom:.5rem;font-style:italic}.quickform-json-format-hint kbd{background-color:#0000000d;border:1px solid rgba(0,0,0,.12);border-radius:3px;padding:.125rem .375rem;font-family:monospace;font-size:.75rem;font-style:normal}.quickform-json-editor-container{border-radius:4px;overflow:hidden;box-shadow:0 1px 3px #0000001f,0 1px 2px #0000003d;font-family:Monaco,Menlo,Ubuntu Mono,Consolas,source-code-pro,monospace;font-size:.875rem}.quickform-error{margin-top:.5rem;font-size:.75rem;color:#c10015}.quickform-json-editor-container :deep(.cm-scroller){overflow:auto}.quickform-json-editor-container:not(.quickform-json-editor-dark) :deep(.cm-editor){background-color:#fff}.quickform-json-editor-container:not(.quickform-json-editor-dark) :deep(.cm-gutters){background-color:#f5f5f5;border-right:1px solid rgba(0,0,0,.12)}.quickform-json-editor-container:not(.quickform-json-editor-dark) :deep(.cm-activeLineGutter){background-color:#1976d214}.quickform-jsonlogic-builder[data-v-722c2e28]{width:100%}.builder-header[data-v-722c2e28]{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.builder-label[data-v-722c2e28]{font-size:.875rem;font-weight:500;color:#000000de}.builder-visual[data-v-722c2e28]{border:1px solid rgba(0,0,0,.12);border-radius:8px;padding:12px;background:#00000005}.logic-toggle[data-v-722c2e28]{display:flex;align-items:center}.conditions-container[data-v-722c2e28]{display:flex;flex-direction:column;gap:8px}.condition-row[data-v-722c2e28]{display:flex;align-items:center;gap:8px;padding:8px;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:6px}.condition-row--nested[data-v-722c2e28]{background:#00000005}.condition-inputs[data-v-722c2e28]{display:flex;align-items:center;gap:8px;flex:1}.condition-input[data-v-722c2e28],.condition-input-placeholder[data-v-722c2e28]{flex:1;min-width:120px}.condition-operator[data-v-722c2e28]{width:160px;flex-shrink:0}.condition-remove[data-v-722c2e28]{opacity:.5;transition:opacity .15s}.condition-row:hover .condition-remove[data-v-722c2e28]{opacity:1}.condition-group[data-v-722c2e28]{border:2px dashed rgba(0,0,0,.12);border-radius:8px;padding:8px;background:#00000005}.group-header[data-v-722c2e28]{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid rgba(0,0,0,.08)}.group-conditions[data-v-722c2e28]{display:flex;flex-direction:column;gap:8px}.group-actions[data-v-722c2e28]{margin-top:4px}.logic-connector[data-v-722c2e28]{display:flex;align-items:center;justify-content:center;padding:4px 0}.logic-connector-text[data-v-722c2e28]{font-size:11px;font-weight:600;color:#0006;text-transform:uppercase;letter-spacing:.5px}.builder-actions-bottom[data-v-722c2e28]{display:flex;align-items:center;padding-top:8px;border-top:1px solid rgba(0,0,0,.08)}.builder-advanced .json-editor[data-v-722c2e28] .json-textarea{font-family:Monaco,Menlo,Ubuntu Mono,Consolas,monospace;font-size:13px;line-height:1.5}
1
+ .datetime-picker-card[data-v-76abc7a3]{overflow:hidden}[data-v-76abc7a3] .datetime-date-picker .q-date__view,[data-v-76abc7a3] .datetime-time-picker .q-time{border:none!important;box-shadow:none!important}[data-v-76abc7a3] .datetime-date-picker,[data-v-76abc7a3] .datetime-time-picker{max-width:290px}.quickform-json-field-wrapper{width:100%}.quickform-label-header{display:flex;align-items:center;gap:.375rem;margin-bottom:.5rem}.quickform-label-text{font-size:.875rem;font-weight:500;color:#000000de}.quickform-hint{font-size:.875rem;color:#0009;margin-bottom:.25rem}.quickform-json-format-hint{font-size:.75rem;color:#00000073;margin-bottom:.5rem;font-style:italic}.quickform-json-format-hint kbd{background-color:#0000000d;border:1px solid rgba(0,0,0,.12);border-radius:3px;padding:.125rem .375rem;font-family:monospace;font-size:.75rem;font-style:normal}.quickform-json-editor-container{border-radius:4px;overflow:hidden;box-shadow:0 1px 3px #0000001f,0 1px 2px #0000003d;font-family:Monaco,Menlo,Ubuntu Mono,Consolas,source-code-pro,monospace;font-size:.875rem}.quickform-error{margin-top:.5rem;font-size:.75rem;color:#c10015}.quickform-json-editor-container :deep(.cm-scroller){overflow:auto}.quickform-json-editor-container:not(.quickform-json-editor-dark) :deep(.cm-editor){background-color:#fff}.quickform-json-editor-container:not(.quickform-json-editor-dark) :deep(.cm-gutters){background-color:#f5f5f5;border-right:1px solid rgba(0,0,0,.12)}.quickform-json-editor-container:not(.quickform-json-editor-dark) :deep(.cm-activeLineGutter){background-color:#1976d214}.quickform-jsonlogic-builder[data-v-722c2e28]{width:100%}.builder-header[data-v-722c2e28]{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.builder-label[data-v-722c2e28]{font-size:.875rem;font-weight:500;color:#000000de}.builder-visual[data-v-722c2e28]{border:1px solid rgba(0,0,0,.12);border-radius:8px;padding:12px;background:#00000005}.logic-toggle[data-v-722c2e28]{display:flex;align-items:center}.conditions-container[data-v-722c2e28]{display:flex;flex-direction:column;gap:8px}.condition-row[data-v-722c2e28]{display:flex;align-items:center;gap:8px;padding:8px;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:6px}.condition-row--nested[data-v-722c2e28]{background:#00000005}.condition-inputs[data-v-722c2e28]{display:flex;align-items:center;gap:8px;flex:1}.condition-input[data-v-722c2e28],.condition-input-placeholder[data-v-722c2e28]{flex:1;min-width:120px}.condition-operator[data-v-722c2e28]{width:160px;flex-shrink:0}.condition-operator[data-v-722c2e28] .q-field__append{display:none}.condition-remove[data-v-722c2e28]{opacity:.5;transition:opacity .15s}.condition-row:hover .condition-remove[data-v-722c2e28]{opacity:1}.condition-group[data-v-722c2e28]{border:2px dashed rgba(0,0,0,.12);border-radius:8px;padding:8px;background:#00000005}.group-header[data-v-722c2e28]{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid rgba(0,0,0,.08)}.group-conditions[data-v-722c2e28]{display:flex;flex-direction:column;gap:8px}.group-actions[data-v-722c2e28]{margin-top:4px}.logic-connector[data-v-722c2e28]{display:flex;align-items:center;justify-content:center;padding:4px 0}.logic-connector-text[data-v-722c2e28]{font-size:11px;font-weight:600;color:#0006;text-transform:uppercase;letter-spacing:.5px}.builder-actions-bottom[data-v-722c2e28]{display:flex;align-items:center;padding-top:8px;border-top:1px solid rgba(0,0,0,.08)}.builder-advanced .json-editor[data-v-722c2e28] .json-textarea{font-family:Monaco,Menlo,Ubuntu Mono,Consolas,monospace;font-size:13px;line-height:1.5}
package/dist/types.d.ts CHANGED
@@ -183,6 +183,40 @@ export interface QuickFormsQuasarDefaults {
183
183
  /** Keyboard shortcut for formatting. Default: 'Ctrl-.' */
184
184
  formatKey?: string;
185
185
  };
186
+ /** JSONLogic builder-specific QuickForms features */
187
+ jsonlogicbuilder?: {
188
+ /**
189
+ * Display mode for operators in dropdown
190
+ * - 'icon': Show only icons (most compact)
191
+ * - 'symbol': Show math symbols (e.g., "=", "≠")
192
+ * - 'short': Show short text (e.g., "eq", "neq")
193
+ * - 'verbose': Show full labels with symbols (e.g., "= equals")
194
+ * Default: 'symbol'
195
+ */
196
+ operatorDisplayMode?: 'icon' | 'symbol' | 'short' | 'verbose';
197
+ /**
198
+ * Limit which operators are available
199
+ * If provided, only these operators will be shown in the dropdown
200
+ * Useful to simplify the UI for specific use cases
201
+ * Example: ['==', '!=', '>', '<'] for basic comparisons
202
+ */
203
+ allowedOperators?: string[];
204
+ /**
205
+ * Enable template syntax ({{ }}) for values instead of JSONLogic's { "var": ... }
206
+ *
207
+ * When enabled:
208
+ * - Values like "{{ initial.status }}" are kept as strings in the JSONLogic output
209
+ * - The consuming application is responsible for resolving templates before JSONLogic evaluation
210
+ * - Existing { "var": ... } values are displayed as {{ ... }} in the UI for backwards compatibility
211
+ *
212
+ * When disabled (default):
213
+ * - Variable references like "initial.status" are converted to { "var": "initial.status" }
214
+ * - Standard JSONLogic behavior
215
+ *
216
+ * Default: false
217
+ */
218
+ useTemplateSyntax?: boolean;
219
+ };
186
220
  }
187
221
  /**
188
222
  * Quasar-specific form options
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,12 @@ export interface OperatorInfo {
18
18
  rightRequired: boolean;
19
19
  rightType?: 'text' | 'number' | 'regex' | 'array';
20
20
  description?: string;
21
+ /** Short text label (e.g., "eq", "gt") */
22
+ shortLabel?: string;
23
+ /** Icon name for Quasar QIcon */
24
+ icon?: string;
25
+ /** Search shortcuts for autocomplete (e.g., ">=", "!=") */
26
+ searchTerms?: string[];
21
27
  }
22
28
  /**
23
29
  * A single condition (left operator right)
@@ -56,14 +62,34 @@ export type JsonLogic = Record<string, unknown> | boolean;
56
62
  export declare const OPERATORS: OperatorInfo[];
57
63
  export declare function getOperatorInfo(op: ComparisonOperator): OperatorInfo | undefined;
58
64
  export declare function generateConditionId(): string;
65
+ /**
66
+ * Options for JSONLogic conversion
67
+ */
68
+ export interface ToJsonLogicOptions {
69
+ /**
70
+ * When true, {{ }} template expressions are kept as strings.
71
+ * When false (default), variable references are converted to { "var": ... }.
72
+ */
73
+ useTemplateSyntax?: boolean;
74
+ }
59
75
  /**
60
76
  * Convert a condition root to JSONLogic
61
77
  */
62
- export declare function toJsonLogic(root: ConditionRoot): JsonLogic;
78
+ export declare function toJsonLogic(root: ConditionRoot, options?: ToJsonLogicOptions): JsonLogic;
63
79
  /**
64
80
  * Convert JSONLogic to a condition root
65
81
  */
66
- export declare function fromJsonLogic(logic: JsonLogic): ConditionRoot;
82
+ export declare function fromJsonLogic(logic: JsonLogic, options?: FromJsonLogicOptions): ConditionRoot;
83
+ /**
84
+ * Options for extracting values from JSONLogic
85
+ */
86
+ export interface FromJsonLogicOptions {
87
+ /**
88
+ * When true, { "var": ... } is converted to {{ ... }} for UI display.
89
+ * When false (default), { "var": ... } is extracted as the raw path string.
90
+ */
91
+ useTemplateSyntax?: boolean;
92
+ }
67
93
  /**
68
94
  * Create an empty condition
69
95
  */
@@ -1 +1 @@
1
- {"version":3,"file":"jsonlogic.d.ts","sourceRoot":"","sources":["../../src/utils/jsonlogic.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAC1B,IAAI,GACJ,IAAI,GACJ,GAAG,GACH,IAAI,GACJ,GAAG,GACH,IAAI,GACJ,IAAI,GACJ,UAAU,GACV,YAAY,GACZ,UAAU,GACV,SAAS,GACT,QAAQ,GACR,SAAS,GACT,SAAS,GACT,YAAY,CAAA;AAEhB;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,kBAAkB,CAAA;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,aAAa,EAAE,OAAO,CAAA;IACtB,SAAS,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,CAAA;IACjD,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,WAAW,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,kBAAkB,CAAA;IAC5B,KAAK,EAAE,MAAM,CAAA;CACd;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,OAAO,CAAA;IACb,KAAK,EAAE,KAAK,GAAG,IAAI,CAAA;IACnB,UAAU,EAAE,aAAa,EAAE,CAAA;CAC5B;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,eAAe,GAAG,cAAc,CAAA;AAE5D;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,KAAK,GAAG,IAAI,CAAA;IACnB,UAAU,EAAE,aAAa,EAAE,CAAA;CAC5B;AAED;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAA;AAMzD,eAAO,MAAM,SAAS,EAAE,YAAY,EAgBnC,CAAA;AAED,wBAAgB,eAAe,CAAC,EAAE,EAAE,kBAAkB,GAAG,YAAY,GAAG,SAAS,CAEhF;AAQD,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C;AAMD;;GAEG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,aAAa,GAAG,SAAS,CAY1D;AAkJD;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,aAAa,CA0B7D;AAsGD;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,eAAe,CAQtD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,GAAE,KAAK,GAAG,IAAY,GAAG,cAAc,CAO5E;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,aAAa,CAK/C"}
1
+ {"version":3,"file":"jsonlogic.d.ts","sourceRoot":"","sources":["../../src/utils/jsonlogic.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAC1B,IAAI,GACJ,IAAI,GACJ,GAAG,GACH,IAAI,GACJ,GAAG,GACH,IAAI,GACJ,IAAI,GACJ,UAAU,GACV,YAAY,GACZ,UAAU,GACV,SAAS,GACT,QAAQ,GACR,SAAS,GACT,SAAS,GACT,YAAY,CAAA;AAEhB;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,kBAAkB,CAAA;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,aAAa,EAAE,OAAO,CAAA;IACtB,SAAS,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,CAAA;IACjD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,0CAA0C;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,iCAAiC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,2DAA2D;IAC3D,WAAW,CAAC,EAAE,MAAM,EAAE,CAAA;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,WAAW,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,kBAAkB,CAAA;IAC5B,KAAK,EAAE,MAAM,CAAA;CACd;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,OAAO,CAAA;IACb,KAAK,EAAE,KAAK,GAAG,IAAI,CAAA;IACnB,UAAU,EAAE,aAAa,EAAE,CAAA;CAC5B;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,eAAe,GAAG,cAAc,CAAA;AAE5D;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,KAAK,GAAG,IAAI,CAAA;IACnB,UAAU,EAAE,aAAa,EAAE,CAAA;CAC5B;AAED;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAA;AAMzD,eAAO,MAAM,SAAS,EAAE,YAAY,EAgBnC,CAAA;AAED,wBAAgB,eAAe,CAAC,EAAE,EAAE,kBAAkB,GAAG,YAAY,GAAG,SAAS,CAEhF;AAQD,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C;AAMD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAC5B;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,aAAa,EAAE,OAAO,GAAE,kBAAuB,GAAG,SAAS,CAY5F;AA0JD;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,GAAE,oBAAyB,GAAG,aAAa,CA0BjG;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAC5B;AA4GD;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,eAAe,CAQtD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,GAAE,KAAK,GAAG,IAAY,GAAG,cAAc,CAO5E;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,aAAa,CAK/C"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quickflo/quickforms-quasar",
3
- "version": "1.13.1",
3
+ "version": "1.14.0",
4
4
  "description": "Quasar UI components for QuickForms - JSON Schema form generator",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -38,8 +38,8 @@
38
38
  "@codemirror/view": "^6.38.8",
39
39
  "vee-validate": "^4.12.0",
40
40
  "vue-codemirror": "^6.1.1",
41
- "@quickflo/quickforms": "1.13.1",
42
- "@quickflo/quickforms-vue": "1.13.1"
41
+ "@quickflo/quickforms": "1.14.0",
42
+ "@quickflo/quickforms-vue": "1.14.0"
43
43
  },
44
44
  "devDependencies": {
45
45
  "@quasar/extras": "^1.17.0",