@omegagrid/form 0.10.47 → 0.10.49

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.
@@ -1,11 +1,14 @@
1
1
  import { BaseControl } from "./baseControl";
2
2
  import { SerializedValue } from "@omegagrid/tree";
3
3
  import { events } from "@omegagrid/core";
4
+ import { Options } from "@omegagrid/calendar";
4
5
  export declare class CalendarDateInput extends BaseControl<Date | string> {
5
6
  static styles: import("lit").CSSResult[];
6
7
  get formattedValue(): SerializedValue[];
7
8
  _onChange: (e: events.ChangeEvent) => void;
8
9
  get date(): Date;
10
+ get calendarOptions(): Options;
11
+ private toDate;
9
12
  render: () => import("lit-html").TemplateResult<1>;
10
13
  }
11
14
  //# sourceMappingURL=calendarDateInput.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"calendarDateInput.d.ts","sourceRoot":"","sources":["../../../src/ui/controls/calendarDateInput.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAS,MAAM,EAAS,MAAM,iBAAiB,CAAC;AAGvD,qBACa,iBAAkB,SAAQ,WAAW,CAAC,IAAI,GAAC,MAAM,CAAC;IAE9D,MAAM,CAAC,MAAM,4BAIV;IAEH,IAAI,cAAc,sBAUjB;IAED,SAAS,GAAI,GAAG,MAAM,CAAC,WAAW,UAEjC;IAED,IAAI,IAAI,SASP;IAED,MAAM,6CAaJ;CAEF"}
1
+ {"version":3,"file":"calendarDateInput.d.ts","sourceRoot":"","sources":["../../../src/ui/controls/calendarDateInput.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAS,MAAM,EAAS,MAAM,iBAAiB,CAAC;AAEvD,OAAO,EAAe,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAE3D,qBACa,iBAAkB,SAAQ,WAAW,CAAC,IAAI,GAAC,MAAM,CAAC;IAE9D,MAAM,CAAC,MAAM,4BAIV;IAEH,IAAI,cAAc,sBAUjB;IAED,SAAS,GAAI,GAAG,MAAM,CAAC,WAAW,UAEjC;IAED,IAAI,IAAI,SASP;IAED,IAAI,eAAe,YAMlB;IAED,OAAO,CAAC,MAAM;IAId,MAAM,6CAeJ;CAEF"}
@@ -9,6 +9,7 @@ import { customElement } from "lit/decorators.js";
9
9
  import { BaseControl } from "./baseControl";
10
10
  import { dates, utils } from "@omegagrid/core";
11
11
  import { getLocale } from "@omegagrid/localize";
12
+ import { initOptions } from "@omegagrid/calendar";
12
13
  let CalendarDateInput = class CalendarDateInput extends BaseControl {
13
14
  constructor() {
14
15
  super(...arguments);
@@ -23,6 +24,8 @@ let CalendarDateInput = class CalendarDateInput extends BaseControl {
23
24
  autoClose: true,
24
25
  allowEmpty: true
25
26
  }}"
27
+ .calendarOptions="${this.calendarOptions}"
28
+ .buttonInput="${this.model?.props?.options?.buttonInput ?? true}"
26
29
  ?cross="${!this.model?.props?.required}"
27
30
  .value="${this.date}"
28
31
  .caption="${this.model?.props?.caption}"
@@ -54,6 +57,18 @@ let CalendarDateInput = class CalendarDateInput extends BaseControl {
54
57
  return null;
55
58
  }
56
59
  }
60
+ get calendarOptions() {
61
+ const opts = (this.model?.props?.options ?? {});
62
+ const overrides = { controlsPosition: 'bottom' };
63
+ if (opts.minDate != null)
64
+ overrides.minDate = this.toDate(opts.minDate);
65
+ if (opts.maxDate != null)
66
+ overrides.maxDate = this.toDate(opts.maxDate);
67
+ return initOptions(overrides);
68
+ }
69
+ toDate(value) {
70
+ return value instanceof Date ? value : new Date(`${value} 00:00:00`);
71
+ }
57
72
  };
58
73
  CalendarDateInput.styles = [...BaseControl.styles, css `
59
74
  og-calendar-dropdown {
@@ -1 +1 @@
1
- {"version":3,"file":"calendarDateInput.js","sourceRoot":"","sources":["../../../src/ui/controls/calendarDateInput.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,KAAK,EAAU,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAGzC,IAAM,iBAAiB,GAAvB,MAAM,iBAAkB,SAAQ,WAAwB;IAAxD;;QAoBN,cAAS,GAAG,CAAC,CAAqB,EAAE,EAAE;YACrC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC,CAAA;QAaD,WAAM,GAAG,GAAG,EAAE,CAAC,IAAI,CAAA;;cAEN,IAAI,CAAC,SAAS;eACb;YACX,UAAU,EAAE,QAAQ;YACpB,SAAS,EAAE,IAAI;YACf,UAAU,EAAE,IAAI;SAChB;aACS,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ;aAC5B,IAAI,CAAC,IAAI;eACP,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO;mBACtB,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW;;EAE/C,CAAC;IAEH,CAAC;IA1CA,IAAI,cAAc;QACjB,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC;QAC7B,IAAI,IAAI,CAAC,KAAK,YAAY,IAAI,EAAE,CAAC;YAChC,IAAI,CAAC,KAAK,GAAG;gBACZ,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;gBACxB,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;gBACvD,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;aAChD,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACZ,CAAC;QACD,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAsB,CAAC;IAClD,CAAC;IAMD,IAAI,IAAI;QACP,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAChC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,KAAe,EAAE,SAAS,EAAE,CAAC,CAAC;YAC/C,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC;aAAM,IAAI,IAAI,CAAC,KAAK,YAAY,IAAI,EAAE,CAAC;YACvC,OAAO,IAAI,CAAC,KAAK,CAAC;QACnB,CAAC;aAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACb,CAAC;IACF,CAAC;;AA/BM,wBAAM,GAAG,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,GAAG,CAAA;;;;EAI1C,CAAC,AAJW,CAIV;AANS,iBAAiB;IAD7B,aAAa,CAAC,2BAA2B,CAAC;GAC9B,iBAAiB,CAkD7B","sourcesContent":["import { css, html } from \"lit\";\nimport { customElement } from \"lit/decorators.js\";\nimport { BaseControl } from \"./baseControl\";\nimport { SerializedValue } from \"@omegagrid/tree\";\nimport { dates, events, utils } from \"@omegagrid/core\";\nimport { getLocale } from \"@omegagrid/localize\";\n\n@customElement('og-form-calendardateinput')\nexport class CalendarDateInput extends BaseControl<Date|string> {\n\n\tstatic styles = [...BaseControl.styles, css`\n\t\tog-calendar-dropdown {\n\t\t\theight: 100%;\n\t\t}\t\n\t`];\n\n\tget formattedValue() {\n\t\tif (!this.value) return null;\n\t\tif (this.value instanceof Date) {\n\t\t\tthis.value = [\n\t\t\t\tthis.value.getFullYear(),\n\t\t\t\t(this.value.getMonth() + 1).toString().padStart(2, '0'),\n\t\t\t\tthis.value.getDate().toString().padStart(2, '0')\n\t\t\t].join('');\n\t\t} \n\t\treturn [[this.value, 0, 1]] as SerializedValue[];\n\t}\n\n\t_onChange = (e: events.ChangeEvent) => {\n\t\tthis.updateValue(e.value);\n\t}\n\n\tget date() {\n\t\tif (utils.isString(this.value)) {\n\t\t\tdates.parse(this.value as string, getLocale());\n\t\t\treturn new Date(this.value);\n\t\t} else if (this.value instanceof Date) {\n\t\t\treturn this.value;\n\t\t} else {\n\t\t\treturn null;\n\t\t}\n\t}\n\n\trender = () => html`\n\t\t<og-calendar-dropdown\n\t\t\t@change=\"${this._onChange}\"\n\t\t\t.options=\"${{\n\t\t\t\tselectMode: 'single', \n\t\t\t\tautoClose: true, \n\t\t\t\tallowEmpty: true\n\t\t\t}}\"\n\t\t\t?cross=\"${!this.model?.props?.required}\"\n\t\t\t.value=\"${this.date}\"\n\t\t\t.caption=\"${this.model?.props?.caption}\"\n\t\t\t.placeholder=\"${this.model?.props?.placeholder}\">\n\t\t</og-calendar-dropdown>\n\t`;\n\t\n}"]}
1
+ {"version":3,"file":"calendarDateInput.js","sourceRoot":"","sources":["../../../src/ui/controls/calendarDateInput.ts"],"names":[],"mappings":"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","sourcesContent":["import { css, html } from \"lit\";\nimport { customElement } from \"lit/decorators.js\";\nimport { BaseControl } from \"./baseControl\";\nimport { SerializedValue } from \"@omegagrid/tree\";\nimport { dates, events, utils } from \"@omegagrid/core\";\nimport { getLocale } from \"@omegagrid/localize\";\nimport { initOptions, Options } from \"@omegagrid/calendar\";\n\n@customElement('og-form-calendardateinput')\nexport class CalendarDateInput extends BaseControl<Date|string> {\n\n\tstatic styles = [...BaseControl.styles, css`\n\t\tog-calendar-dropdown {\n\t\t\theight: 100%;\n\t\t}\t\n\t`];\n\n\tget formattedValue() {\n\t\tif (!this.value) return null;\n\t\tif (this.value instanceof Date) {\n\t\t\tthis.value = [\n\t\t\t\tthis.value.getFullYear(),\n\t\t\t\t(this.value.getMonth() + 1).toString().padStart(2, '0'),\n\t\t\t\tthis.value.getDate().toString().padStart(2, '0')\n\t\t\t].join('');\n\t\t} \n\t\treturn [[this.value, 0, 1]] as SerializedValue[];\n\t}\n\n\t_onChange = (e: events.ChangeEvent) => {\n\t\tthis.updateValue(e.value);\n\t}\n\n\tget date() {\n\t\tif (utils.isString(this.value)) {\n\t\t\tdates.parse(this.value as string, getLocale());\n\t\t\treturn new Date(this.value);\n\t\t} else if (this.value instanceof Date) {\n\t\t\treturn this.value;\n\t\t} else {\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tget calendarOptions() {\n\t\tconst opts = (this.model?.props?.options ?? {}) as { minDate?: Date|string, maxDate?: Date|string };\n\t\tconst overrides: Partial<Options> = { controlsPosition: 'bottom' };\n\t\tif (opts.minDate != null) overrides.minDate = this.toDate(opts.minDate);\n\t\tif (opts.maxDate != null) overrides.maxDate = this.toDate(opts.maxDate);\n\t\treturn initOptions(overrides);\n\t}\n\n\tprivate toDate(value: Date|string) {\n\t\treturn value instanceof Date ? value : new Date(`${value} 00:00:00`);\n\t}\n\n\trender = () => html`\n\t\t<og-calendar-dropdown\n\t\t\t@change=\"${this._onChange}\"\n\t\t\t.options=\"${{\n\t\t\t\tselectMode: 'single',\n\t\t\t\tautoClose: true,\n\t\t\t\tallowEmpty: true\n\t\t\t}}\"\n\t\t\t.calendarOptions=\"${this.calendarOptions}\"\n\t\t\t.buttonInput=\"${this.model?.props?.options?.buttonInput ?? true}\"\n\t\t\t?cross=\"${!this.model?.props?.required}\"\n\t\t\t.value=\"${this.date}\"\n\t\t\t.caption=\"${this.model?.props?.caption}\"\n\t\t\t.placeholder=\"${this.model?.props?.placeholder}\">\n\t\t</og-calendar-dropdown>\n\t`;\n\t\n}"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@omegagrid/form",
3
- "version": "0.10.47",
3
+ "version": "0.10.49",
4
4
  "license": "UNLICENSED",
5
5
  "description": "Universal form component",
6
6
  "main": "./dist/index.js",
@@ -27,10 +27,10 @@
27
27
  "_prepublish": "yarn test && yarn lint"
28
28
  },
29
29
  "dependencies": {
30
- "@omegagrid/calendar": "^0.10.47",
31
- "@omegagrid/core": "^0.10.47",
32
- "@omegagrid/localize": "^0.10.47",
33
- "@omegagrid/tree": "^0.10.47",
30
+ "@omegagrid/calendar": "^0.10.49",
31
+ "@omegagrid/core": "^0.10.49",
32
+ "@omegagrid/localize": "^0.10.49",
33
+ "@omegagrid/tree": "^0.10.49",
34
34
  "lit": "^3.1.1",
35
35
  "lit-html": "^3.1.1",
36
36
  "ts-debounce": "^4.0.0"