@web-atoms/web-controls 2.1.2 → 2.1.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/dist/auto-complete/AutoCompleteBox.js.map +1 -1
  2. package/dist/basic/Button.d.ts +19 -0
  3. package/dist/basic/Button.d.ts.map +1 -0
  4. package/dist/basic/Button.js +63 -0
  5. package/dist/basic/Button.js.map +1 -0
  6. package/dist/basic/Checkbox.d.ts +5 -0
  7. package/dist/basic/Checkbox.d.ts.map +1 -0
  8. package/dist/basic/Checkbox.js +39 -0
  9. package/dist/basic/Checkbox.js.map +1 -0
  10. package/dist/basic/IElement.d.ts +11 -0
  11. package/dist/basic/IElement.d.ts.map +1 -0
  12. package/dist/basic/IElement.js +13 -0
  13. package/dist/basic/IElement.js.map +1 -0
  14. package/dist/basic/Input.d.ts +5 -0
  15. package/dist/basic/Input.d.ts.map +1 -0
  16. package/dist/basic/Input.js +30 -0
  17. package/dist/basic/Input.js.map +1 -0
  18. package/dist/basic/Panel.d.ts +6 -0
  19. package/dist/basic/Panel.d.ts.map +1 -0
  20. package/dist/basic/Panel.js +37 -0
  21. package/dist/basic/Panel.js.map +1 -0
  22. package/dist/basic/PopupButton.d.ts +16 -0
  23. package/dist/basic/PopupButton.d.ts.map +1 -0
  24. package/dist/basic/PopupButton.js +118 -0
  25. package/dist/basic/PopupButton.js.map +1 -0
  26. package/dist/basic/Switch.d.ts +7 -0
  27. package/dist/basic/Switch.d.ts.map +1 -0
  28. package/dist/basic/Switch.js +96 -0
  29. package/dist/basic/Switch.js.map +1 -0
  30. package/dist/basic/combineClasses.d.ts +2 -0
  31. package/dist/basic/combineClasses.d.ts.map +1 -0
  32. package/dist/basic/combineClasses.js +17 -0
  33. package/dist/basic/combineClasses.js.map +1 -0
  34. package/dist/calendar/res/SRCalendar.js +1 -1
  35. package/dist/calendar/res/SRCalendar.js.map +1 -1
  36. package/dist/data-grid/AtomDataGrid.js +2 -2
  37. package/dist/data-grid/AtomDataGrid.js.map +1 -1
  38. package/dist/form/AtomField.d.ts +2 -1
  39. package/dist/form/AtomField.d.ts.map +1 -1
  40. package/dist/form/AtomField.js +25 -16
  41. package/dist/form/AtomField.js.map +1 -1
  42. package/dist/mobile/pages/PageFrameViewModel.js +1 -1
  43. package/dist/mobile/pages/PageFrameViewModel.js.map +1 -1
  44. package/package.json +1 -1
  45. package/src/basic/Button.tsx +97 -0
  46. package/src/basic/Checkbox.tsx +48 -0
  47. package/src/basic/IElement.ts +10 -0
  48. package/src/basic/Input.tsx +30 -0
  49. package/src/basic/Panel.tsx +43 -0
  50. package/src/basic/PopupButton.tsx +132 -0
  51. package/src/basic/Switch.tsx +110 -0
  52. package/src/basic/combineClasses.ts +3 -0
  53. package/src/form/AtomField.tsx +25 -33
@@ -47,7 +47,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
47
47
  }
48
48
  };
49
49
  SRCalendar = __decorate([
50
- DISingleton_1.default({
50
+ (0, DISingleton_1.default)({
51
51
  inject: "./{lang}/SRCalendar"
52
52
  })
53
53
  ], SRCalendar);
@@ -1 +1 @@
1
- {"version":3,"file":"SRCalendar.js","sourceRoot":"","sources":["../../../src/calendar/res/SRCalendar.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;IAAA,qEAA8D;IAK9D,IAA8B,UAAU,GAAxC,MAA8B,UAAU;QAAxC;YAEW,cAAS,GAAG;gBACf,EAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,EAAC;gBAC5B,EAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,EAAC;gBAC7B,EAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EAAC;gBAC1B,EAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EAAC;gBAC1B,EAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAC;gBACxB,EAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAC;gBACzB,EAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAC;gBACzB,EAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAC;gBAC3B,EAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,EAAC;gBAC9B,EAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,EAAC;gBAC5B,EAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAC;gBAC9B,EAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAC;aACjC,CAAC;YAEK,aAAQ,GAAG;gBACd,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;gBAC9B,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;gBAC9B,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;gBAC9B,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;gBAC9B,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;gBAC9B,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;gBAC9B,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;aACjC,CAAC;QAKN,CAAC;QAJU,WAAW,CAAC,CAAO;YACtB,OAAO,CAAC,CAAC,kBAAkB,EAAE,CAAC;QAClC,CAAC;KAEJ,CAAA;IA9B6B,UAAU;QAHvC,qBAAW,CAAC;YACT,MAAM,EAAE,qBAAqB;SAChC,CAAC;OAC4B,UAAU,CA8BvC;sBA9B6B,UAAU"}
1
+ {"version":3,"file":"SRCalendar.js","sourceRoot":"","sources":["../../../src/calendar/res/SRCalendar.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;IAAA,qEAA8D;IAK9D,IAA8B,UAAU,GAAxC,MAA8B,UAAU;QAAxC;YAEW,cAAS,GAAG;gBACf,EAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,EAAC;gBAC5B,EAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,EAAC;gBAC7B,EAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EAAC;gBAC1B,EAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EAAC;gBAC1B,EAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAC;gBACxB,EAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAC;gBACzB,EAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAC;gBACzB,EAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAC;gBAC3B,EAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,EAAC;gBAC9B,EAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,EAAC;gBAC5B,EAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAC;gBAC9B,EAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAC;aACjC,CAAC;YAEK,aAAQ,GAAG;gBACd,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;gBAC9B,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;gBAC9B,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;gBAC9B,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;gBAC9B,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;gBAC9B,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;gBAC9B,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE;aACjC,CAAC;QAKN,CAAC;QAJU,WAAW,CAAC,CAAO;YACtB,OAAO,CAAC,CAAC,kBAAkB,EAAE,CAAC;QAClC,CAAC;KAEJ,CAAA;IA9B6B,UAAU;QAHvC,IAAA,qBAAW,EAAC;YACT,MAAM,EAAE,qBAAqB;SAChC,CAAC;OAC4B,UAAU,CA8BvC;sBA9B6B,UAAU"}
@@ -45,10 +45,10 @@ var __metadata = (this && this.__metadata) || function (k, v) {
45
45
  });
46
46
  this.localViewModel = this.resolve(AtomDataGridViewModel_1.default, "owner");
47
47
  this.runAfterInit(() => {
48
- this.itemTemplate = GridTemplate_1.default(this, "dataTemplate", "td");
48
+ this.itemTemplate = (0, GridTemplate_1.default)(this, "dataTemplate", "td");
49
49
  const table = document.createElement("table");
50
50
  this.element.append(table);
51
- const headerTemplate = GridTemplate_1.default(this, "headerTemplate", "th");
51
+ const headerTemplate = (0, GridTemplate_1.default)(this, "headerTemplate", "th");
52
52
  const headRow = new (headerTemplate)(this.app, document.createElement("tr"));
53
53
  headRow.data = this;
54
54
  const head = document.createElement("thead");
@@ -1 +1 @@
1
- {"version":3,"file":"AtomDataGrid.js","sourceRoot":"","sources":["../../src/data-grid/AtomDataGrid.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;IAAA,iFAA4E;IAC5E,yFAAoF;IACpF,6CAAsC;IACtC,2DAAoD;IACpD,mEAA4D;IAC5D,iDAA0C;IAG1C,MAAM,UAAU,GAAG,UAAU,CAAC,QAAQ,CAAC;IACvC,MAAqB,YAAa,SAAQ,mCAAgB;QAOtD,YAAY,GAAQ,EAAE,CAAO;YACzB,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;QACnD,CAAC;QAEM,MAAM,CAAC,CAAC;YACX,IAAI,CAAC,YAAY,oBAAU,EAAE;gBACzB,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;gBAC9C,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACV,OAAO,IAAI,CAAC;aACf;YACD,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;QAEM,SAAS;YAEZ,IAAI,CAAE,OAAO,GAAI,IAAI,CAAE;YACvB,IAAI,CAAC,mBAAmB,GAAG,2BAAiB,CAAC;YAE7C,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE;gBACnB,IAAI,CAAC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;YACpD,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,cAAc,GAAI,IAAI,CAAC,OAAO,CAAC,+BAAqB,EAAE,OAAO,CAAC,CAAE;YAErE,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE;gBAEnB,IAAI,CAAC,YAAY,GAAG,sBAAY,CAAC,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;gBAE7D,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;gBAE9C,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAE3B,MAAM,cAAc,GAAG,sBAAY,CAAC,IAAI,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAC;gBAClE,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC7E,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;gBACpB,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;gBAC7C,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBAClC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;gBAExB,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;gBAC7C,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;gBAC3B,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAC5B,CAAC,CAAC,CAAC;QACP,CAAC;;IAjDD,0CAA0C;IACnB,mBAAM,GAAG,UAAU,CAAE;IAG5C;QADC,mCAAgB;;iDACQ;IAL7B,+BAmDC"}
1
+ {"version":3,"file":"AtomDataGrid.js","sourceRoot":"","sources":["../../src/data-grid/AtomDataGrid.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;IAAA,iFAA4E;IAC5E,yFAAoF;IACpF,6CAAsC;IACtC,2DAAoD;IACpD,mEAA4D;IAC5D,iDAA0C;IAG1C,MAAM,UAAU,GAAG,UAAU,CAAC,QAAQ,CAAC;IACvC,MAAqB,YAAa,SAAQ,mCAAgB;QAOtD,YAAY,GAAQ,EAAE,CAAO;YACzB,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;QACnD,CAAC;QAEM,MAAM,CAAC,CAAC;YACX,IAAI,CAAC,YAAY,oBAAU,EAAE;gBACzB,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;gBAC9C,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACV,OAAO,IAAI,CAAC;aACf;YACD,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;QAEM,SAAS;YAEZ,IAAI,CAAE,OAAO,GAAI,IAAI,CAAE;YACvB,IAAI,CAAC,mBAAmB,GAAG,2BAAiB,CAAC;YAE7C,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE;gBACnB,IAAI,CAAC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;YACpD,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,cAAc,GAAI,IAAI,CAAC,OAAO,CAAC,+BAAqB,EAAE,OAAO,CAAC,CAAE;YAErE,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE;gBAEnB,IAAI,CAAC,YAAY,GAAG,IAAA,sBAAY,EAAC,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;gBAE7D,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;gBAE9C,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAE3B,MAAM,cAAc,GAAG,IAAA,sBAAY,EAAC,IAAI,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAC;gBAClE,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;gBAC7E,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;gBACpB,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;gBAC7C,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBAClC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;gBAExB,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;gBAC7C,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;gBAC3B,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAC5B,CAAC,CAAC,CAAC;QACP,CAAC;;IAjDD,0CAA0C;IACnB,mBAAM,GAAG,UAAU,CAAE;IAG5C;QADC,mCAAgB;;iDACQ;IAL7B,+BAmDC"}
@@ -31,6 +31,7 @@ export interface IFieldAttributes {
31
31
  visible?: any;
32
32
  fieldClass?: any;
33
33
  baseClass?: IClassOf<AtomFieldControl>;
34
+ [key: string]: any;
34
35
  }
35
- export default function AtomField({ label, error, helpText, helpLink, helpIcon, required, visible, fieldClass, baseClass: controlClass }: IFieldAttributes, child: XNode): any;
36
+ export default function AtomField(attributes: IFieldAttributes, ...children: XNode[]): any;
36
37
  //# sourceMappingURL=AtomField.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AtomField.d.ts","sourceRoot":"","sources":["../../src/form/AtomField.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAC3D,OAAO,KAAK,MAAM,iCAAiC,CAAC;AAGpD,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAC5E,OAAO,EAAE,OAAO,IAAI,EAAE,EAAE,MAAM,aAAa,CAAC;AAI5C,cAAM,gBAAiB,SAAQ,WAAW;IAG/B,IAAI,EAAE,MAAM,CAAC;IAGb,KAAK,EAAE,MAAM,CAAC;IAGd,KAAK,EAAE,MAAM,CAAC;IAGd,QAAQ,EAAE,MAAM,CAAC;IAGjB,QAAQ,EAAE,MAAM,CAAC;IAGjB,QAAQ,EAAE,MAAM,CAAC;IAGjB,QAAQ,EAAE,OAAO,CAAC;IAGlB,OAAO,EAAE,OAAO,CAAC;IAGjB,UAAU,EAAE,MAAM,CAAC;IAGnB,OAAO,EAAE,GAAG,CAAC;IAEpB,IAAW,QAAQ,IAAI,OAAO,CAE7B;IAED,IAAW,OAAO,IAAI,OAAO,CAE5B;IAGD,SAAS,CAAC,gBAAgB,EAAE,GAAG,CAAC;IAGhC,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC;IAEhB,iBAAiB,CAAC,IAAI,EAAE,MAAM,gBAAgB,GAAG,IAAI;IAmC/C,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAiBtC,SAAS,CAAC,SAAS;CAqCtB;AAED,MAAM,WAAW,gBAAgB;IAC7B,KAAK,CAAC,MAAC;IACP,KAAK,CAAC,MAAC;IACP,QAAQ,CAAC,MAAC;IACV,QAAQ,CAAC,MAAC;IACV,QAAQ,CAAC,MAAC;IACV,QAAQ,CAAC,MAAC;IACV,OAAO,CAAC,MAAC;IACT,UAAU,CAAC,MAAC;IACZ,SAAS,CAAC,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAAC;CAC1C;AAED,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,EAC9B,KAAK,EACL,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,OAAc,EACd,UAAiB,EACjB,SAAS,EAAE,YAA+B,EAC7C,EAAE,gBAAgB,EAAe,KAAK,EAAE,KAAK,OAa7C"}
1
+ {"version":3,"file":"AtomField.d.ts","sourceRoot":"","sources":["../../src/form/AtomField.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAC3D,OAAO,KAAK,MAAM,iCAAiC,CAAC;AAGpD,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAC5E,OAAO,EAAE,OAAO,IAAI,EAAE,EAAE,MAAM,aAAa,CAAC;AAI5C,cAAM,gBAAiB,SAAQ,WAAW;IAG/B,IAAI,EAAE,MAAM,CAAC;IAGb,KAAK,EAAE,MAAM,CAAC;IAGd,KAAK,EAAE,MAAM,CAAC;IAGd,QAAQ,EAAE,MAAM,CAAC;IAGjB,QAAQ,EAAE,MAAM,CAAC;IAGjB,QAAQ,EAAE,MAAM,CAAC;IAGjB,QAAQ,EAAE,OAAO,CAAC;IAGlB,OAAO,EAAE,OAAO,CAAC;IAGjB,UAAU,EAAE,MAAM,CAAC;IAGnB,OAAO,EAAE,GAAG,CAAC;IAEpB,IAAW,QAAQ,IAAI,OAAO,CAE7B;IAED,IAAW,OAAO,IAAI,OAAO,CAE5B;IAGD,SAAS,CAAC,gBAAgB,EAAE,GAAG,CAAC;IAGhC,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC;IAEhB,iBAAiB,CAAC,IAAI,EAAE,MAAM,gBAAgB,GAAG,IAAI;IAyC/C,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAiBtC,SAAS,CAAC,SAAS;CAqCtB;AAED,MAAM,WAAW,gBAAgB;IAC7B,KAAK,CAAC,MAAC;IACP,KAAK,CAAC,MAAC;IACP,QAAQ,CAAC,MAAC;IACV,QAAQ,CAAC,MAAC;IACV,QAAQ,CAAC,MAAC;IACV,QAAQ,CAAC,MAAC;IACV,OAAO,CAAC,MAAC;IACT,UAAU,CAAC,MAAC;IACZ,SAAS,CAAC,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IACvC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACtB;AAED,MAAM,CAAC,OAAO,UAAU,SAAS,CAAE,UAAU,EAAE,gBAAgB,EAAE,GAAI,QAAQ,EAAE,KAAK,EAAE,OAQrF"}
@@ -45,7 +45,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
45
45
  return (this.helpText || this.helpLink) ? true : false;
46
46
  }
47
47
  onPropertyChanged(name) {
48
- var _a, _b;
48
+ var _a;
49
49
  switch (name) {
50
50
  case "error":
51
51
  AtomBinder_1.AtomBinder.refreshValue(this, "hasError");
@@ -60,21 +60,27 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
60
60
  return;
61
61
  }
62
62
  this.removeAllChildren(this.contentPresenter);
63
- const e = (_b = (_a = this.content) === null || _a === void 0 ? void 0 : _a.element) !== null && _b !== void 0 ? _b : this.content;
64
- if (!e) {
63
+ const content = this.content;
64
+ if (!content) {
65
65
  return;
66
66
  }
67
- if (typeof e === "string") {
68
- this.contentPresenter.appendChild(document.createTextNode(e));
69
- return;
70
- }
71
- this.contentPresenter.appendChild(e);
72
- const input = e.tagName === "INPUT" ? e : e.getElementsByTagName("input")[0];
73
- if (input) {
74
- if (!input.id) {
75
- input.id = `__ID__formElementInput${inputID++}`;
67
+ for (const iterator of content) {
68
+ const e = (_a = iterator === null || iterator === void 0 ? void 0 : iterator.element) !== null && _a !== void 0 ? _a : iterator;
69
+ if (!e) {
70
+ continue;
71
+ }
72
+ if (typeof e === "string") {
73
+ this.contentPresenter.appendChild(document.createTextNode(e));
74
+ return;
75
+ }
76
+ this.contentPresenter.appendChild(e);
77
+ const input = e.tagName === "INPUT" ? e : e.getElementsByTagName("input")[0];
78
+ if (input) {
79
+ if (!input.id) {
80
+ input.id = `__ID__formElementInput${inputID++}`;
81
+ }
82
+ this.htmlFor = input.id;
76
83
  }
77
- this.htmlFor = input.id;
78
84
  }
79
85
  break;
80
86
  }
@@ -167,9 +173,12 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
167
173
  BindableProperty_1.BindableProperty,
168
174
  __metadata("design:type", Object)
169
175
  ], AtomFieldControl.prototype, "htmlFor", void 0);
170
- function AtomField({ label, error, helpText, helpLink, helpIcon, required, visible = true, fieldClass = null, baseClass: controlClass = AtomFieldControl }, child) {
171
- const ControlClass = controlClass;
172
- return XNode_1.default.create(ControlClass, { label: label, error: error, helpIcon: helpIcon, helpLink: helpLink, helpText: helpText, required: required, visible: visible, fieldClass: fieldClass, content: child });
176
+ function AtomField(attributes, ...children) {
177
+ var _a, _b, _c;
178
+ const ControlClass = (_a = attributes.baseClass) !== null && _a !== void 0 ? _a : AtomFieldControl;
179
+ (_b = attributes.visible) !== null && _b !== void 0 ? _b : (attributes.visible = true);
180
+ (_c = attributes.fieldClass) !== null && _c !== void 0 ? _c : (attributes.fieldClass = null);
181
+ return XNode_1.default.create(ControlClass, Object.assign({}, attributes, { content: children }));
173
182
  }
174
183
  exports.default = AtomField;
175
184
  });
@@ -1 +1 @@
1
- {"version":3,"file":"AtomField.js","sourceRoot":"","sources":["../../src/form/AtomField.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AtomField.js","sourceRoot":"","sources":["../../src/form/AtomField.tsx"],"names":[],"mappings":"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"}
@@ -138,7 +138,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
138
138
  __metadata("design:type", NavigationService_1.NavigationService)
139
139
  ], PageFrameViewModel.prototype, "navigationService", void 0);
140
140
  __decorate([
141
- AtomViewModel_1.Receive("root-page-go-back"),
141
+ (0, AtomViewModel_1.Receive)("root-page-go-back"),
142
142
  __metadata("design:type", Function),
143
143
  __metadata("design:paramtypes", []),
144
144
  __metadata("design:returntype", Promise)
@@ -1 +1 @@
1
- {"version":3,"file":"PageFrameViewModel.js","sourceRoot":"","sources":["../../../src/mobile/pages/PageFrameViewModel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PageFrameViewModel.js","sourceRoot":"","sources":["../../../src/mobile/pages/PageFrameViewModel.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@web-atoms/web-controls",
3
- "version": "2.1.2",
3
+ "version": "2.1.6",
4
4
  "description": "HTML controls for web atoms core",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -0,0 +1,97 @@
1
+ import Colors from "@web-atoms/core/dist/core/Colors";
2
+ import XNode from "@web-atoms/core/dist/core/XNode";
3
+ import StyleRule from "@web-atoms/core/dist/style/StyleRule";
4
+ import CSS from "@web-atoms/core/dist/web/styles/CSS";
5
+
6
+ export interface IButton {
7
+ id?: string;
8
+ icon?: string;
9
+ text?: string;
10
+ eventClick?: any;
11
+ href?: string;
12
+ target?: string;
13
+ title?: string;
14
+ styleDisplay?: string;
15
+ class?: string;
16
+ isVisible?: any;
17
+ subClass?: string;
18
+ }
19
+
20
+ const css = CSS(
21
+ StyleRule()
22
+ .padding(8)
23
+ .marginLeft(3)
24
+ .marginRight(3)
25
+ .roundBorderFull()
26
+ .display("inline-block")
27
+ .height(40)
28
+ .minWidth(40)
29
+ .defaultBoxShadow()
30
+ .cursor("pointer")
31
+ .backgroundColor(Colors.transparent)
32
+ .hoverBackgroundColor(Colors.lightGreen)
33
+ .and(StyleRule(".pressed")
34
+ .backgroundColor(Colors.lightSteelBlue)
35
+ )
36
+ .child(StyleRule("label.label")
37
+ .display("flex")
38
+ .alignItems("center")
39
+ .gap("5px")
40
+ .child(StyleRule(".fad")
41
+ .fontSize(18)
42
+ .width("100%")
43
+ .color(Colors.purple.withAlphaPercent(0.5))
44
+ .cursor("pointer")
45
+ .and(StyleRule(".red")
46
+ .color(Colors.red)
47
+ )
48
+ )
49
+ .child(StyleRule("span")
50
+ .whiteSpace("nowrap")
51
+ )
52
+ )
53
+ );
54
+
55
+ export default function Button({
56
+ id,
57
+ icon,
58
+ text,
59
+ eventClick,
60
+ href,
61
+ target,
62
+ title,
63
+ styleDisplay,
64
+ class: className,
65
+ subClass
66
+ }: IButton) {
67
+
68
+ const cn = className ?? ( subClass
69
+ ? subClass + " " + css
70
+ : css
71
+ );
72
+
73
+ if (href) {
74
+
75
+ if (text) {
76
+ return <a id={id}
77
+ class={cn}
78
+ target={target}
79
+ title={title}
80
+ styleDisplay={styleDisplay}
81
+ >
82
+ <label class="label">
83
+ <i class={icon}/>
84
+ { text && <span text={text}/> }
85
+ </label>
86
+ </a>;
87
+ }
88
+ }
89
+ return <button id={id} class={cn} eventClick={eventClick} title={title} styleDisplay={styleDisplay}>
90
+ <label class="label">
91
+ <i class={icon}/>
92
+ { text && <span text={text}/> }
93
+ </label>
94
+ </button>;
95
+ }
96
+
97
+ Button.className = css;
@@ -0,0 +1,48 @@
1
+ import Colors from "@web-atoms/core/dist/core/Colors";
2
+ import XNode from "@web-atoms/core/dist/core/XNode";
3
+ import StyleRule from "@web-atoms/core/dist/style/StyleRule";
4
+ import CSS from "@web-atoms/core/dist/web/styles/CSS";
5
+
6
+ const css = CSS(
7
+ StyleRule("check-box")
8
+ .display("inline-block")
9
+ .child(
10
+ StyleRule("label")
11
+ .display("flex")
12
+ .paddingLeft(5)
13
+ .paddingRight(5)
14
+ .child(
15
+
16
+ StyleRule("input[type=checkbox]")
17
+ .borderRadius(3)
18
+ .margin(0)
19
+ .padding(0)
20
+ .alignSelf("center")
21
+ )
22
+ .child(
23
+ StyleRule("span")
24
+ .alignSelf("center")
25
+ .whiteSpace("nowrap")
26
+ .marginLeft(5)
27
+ .flexStretch()
28
+
29
+ ))
30
+ );
31
+
32
+ export default function Checkbox({
33
+ checked,
34
+ text
35
+ }: {
36
+ checked: any,
37
+ text: string
38
+ }) {
39
+ return <div class={css}>
40
+ <label>
41
+ <input
42
+ type="checkbox"
43
+ checked={checked}/>
44
+ <span
45
+ text={text}></span>
46
+ </label>
47
+ </div>;
48
+ }
@@ -0,0 +1,10 @@
1
+ export default interface IElement {
2
+ subClass?: string;
3
+ icon?: string;
4
+ class?: string;
5
+ title?: string;
6
+ eventClick?: string;
7
+ href?: string;
8
+ text?: string;
9
+ styleDisplay?: any;
10
+ }
@@ -0,0 +1,30 @@
1
+ import XNode from "@web-atoms/core/dist/core/XNode";
2
+ import StyleRule from "@web-atoms/core/dist/style/StyleRule";
3
+ import CSS from "@web-atoms/core/dist/web/styles/CSS";
4
+
5
+ const css = CSS(
6
+ StyleRule("input")
7
+ .display("inline-block")
8
+ .child(
9
+ StyleRule("input[type=input]")
10
+ .margin(0)
11
+ .padding(5)
12
+ .height(25)
13
+ .marginRight(5)
14
+ .outline("none")
15
+ .alignSelf("center")
16
+ )
17
+ );
18
+
19
+ export default function Input({
20
+ value,
21
+ placeholder
22
+ }:{
23
+ value:string,
24
+ placeholder: string
25
+ }){
26
+ return <div class={css}>
27
+ <input type="input"
28
+ placeholder={placeholder} />
29
+ </div>;
30
+ }
@@ -0,0 +1,43 @@
1
+ import Colors from "@web-atoms/core/dist/core/Colors";
2
+ import XNode from "@web-atoms/core/dist/core/XNode";
3
+ import StyleRule from "@web-atoms/core/dist/style/StyleRule";
4
+ import CSS from "@web-atoms/core/dist/web/styles/CSS";
5
+
6
+ export interface IPanelAttributes {
7
+ header?: string;
8
+ class?: string;
9
+ }
10
+
11
+ const css = CSS(StyleRule("panel")
12
+ .display("inline-block")
13
+ .padding(5)
14
+ .margin(3)
15
+ .borderRadius(9999)
16
+ .defaultBoxShadow()
17
+ .child(StyleRule(".header")
18
+ .backgroundColor(Colors.lightGray)
19
+ .borderRadius(5)
20
+ .padding(5)
21
+ ));
22
+
23
+ export default function Panel(
24
+ {
25
+ header,
26
+ class: className
27
+ }: IPanelAttributes,
28
+ ... children: any[]) {
29
+
30
+ className = className ? css + " " + className : css;
31
+
32
+ if (header) {
33
+ return <div class={className}>
34
+ <label class="header">{header}</label>
35
+ { ... children }
36
+ </div>;
37
+ }
38
+
39
+ return <div class={className}>
40
+ { ... children }
41
+ </div>;
42
+
43
+ }
@@ -0,0 +1,132 @@
1
+ import Bind from "@web-atoms/core/dist/core/Bind";
2
+ import { BindableProperty } from "@web-atoms/core/dist/core/BindableProperty";
3
+ import Colors from "@web-atoms/core/dist/core/Colors";
4
+ import { IDisposable } from "@web-atoms/core/dist/core/types";
5
+ import XNode from "@web-atoms/core/dist/core/XNode";
6
+ import StyleRule from "@web-atoms/core/dist/style/StyleRule";
7
+ import { AtomControl } from "@web-atoms/core/dist/web/controls/AtomControl";
8
+ import { AtomItemsControl } from "@web-atoms/core/dist/web/controls/AtomItemsControl";
9
+ import PopupService from "@web-atoms/core/dist/web/services/PopupService";
10
+ import CSS from "@web-atoms/core/dist/web/styles/CSS";
11
+ import combineClasses from "./combineClasses";
12
+ import Button from "./Button";
13
+ import IElement from "./IElement";
14
+
15
+ const menuCss = CSS(StyleRule()
16
+ .child(StyleRule(".menu")
17
+ .padding(5)
18
+ .margin(3)
19
+ .borderRadius(5)
20
+ .cursor("pointer")
21
+ .hoverBackgroundColor(Colors.lightGreen)
22
+ )
23
+ );
24
+
25
+ export interface IMenuItem {
26
+ label?: string;
27
+ icon?: string;
28
+ eventClick?: any;
29
+ href?: string;
30
+ target?: string;
31
+ }
32
+
33
+ export function MenuItem(menu: IMenuItem) {
34
+
35
+ // removing undefined.. as binding will ignore undefined
36
+
37
+ menu.label ??= null;
38
+ menu.icon ??= null;
39
+ menu.eventClick ??= null;
40
+ menu.href ??= null;
41
+ menu.target ??= null;
42
+ return menu;
43
+ }
44
+
45
+ export class MenuItemTemplate extends AtomControl {
46
+
47
+ public data: IMenuItem;
48
+
49
+ public create() {
50
+ this.render(<div
51
+ class="menu"
52
+ eventClick={Bind.event(() => this.app.runAsync(() => this.data.eventClick()))}
53
+ >
54
+ <i
55
+ styleDisplay={Bind.oneWay(() => this.data.icon ? "" : "none")}
56
+ class={Bind.oneWay(() => this.data.icon)}/>
57
+ <span
58
+ styleDisplay={Bind.oneWay(() => this.data.label ? "" : "none")}
59
+ text={Bind.oneWay(() => this.data.label)}></span>
60
+ </div>);
61
+ }
62
+ }
63
+
64
+ class PopupMenuButton extends AtomControl {
65
+
66
+ @BindableProperty
67
+ public subClass: string;
68
+
69
+ @BindableProperty
70
+ public icon: string;
71
+
72
+ @BindableProperty
73
+ public text: string;
74
+
75
+ @BindableProperty
76
+ public menus: IMenuItem[];
77
+
78
+ private popup: IDisposable;
79
+
80
+ constructor(app, e) {
81
+ super(app, e ?? document.createElement("button"));
82
+ }
83
+
84
+ public preCreate() {
85
+ super.preCreate();
86
+ this.popup = null;
87
+ this.text = null;
88
+ this.icon = null;
89
+ this.subClass = null;
90
+ this.render(<button
91
+ class={Bind.oneWay(() => combineClasses(Button.className, this.popup ? "pressed" : null, this.subClass))}
92
+ eventClick={Bind.event(() => this.openPopup())}>
93
+ <label class="label">
94
+ <i class={Bind.oneWay(() => this.icon)}/>
95
+ <span
96
+ styleDisplay={Bind.oneWay(() => this.text ? "" : "none")}
97
+ text={Bind.oneWay(() => this.text)}/>
98
+ </label>
99
+ </button>);
100
+ }
101
+
102
+ private openPopup() {
103
+ if (this.popup) {
104
+ this.popup.dispose();
105
+ return;
106
+ }
107
+
108
+ const items = new AtomItemsControl(this.app, document.createElement("div"));
109
+ items.element.classList.add(menuCss);
110
+ items.itemTemplate = MenuItemTemplate;
111
+ items.items = this.menus;
112
+ items.registerDisposable({
113
+ dispose: () => {
114
+ this.popup = null;
115
+ }
116
+ });
117
+ items.bindEvent(items.element, "click", () => {
118
+ setTimeout(() => {
119
+ this.openPopup();
120
+ }, 100);
121
+ });
122
+ const popupService = this.app.resolve(PopupService);
123
+ this.popup = popupService.show(this.element, items);
124
+ }
125
+ }
126
+
127
+ export default function PopupButton( props: IElement, ... menus: IMenuItem[]) {
128
+ return <PopupMenuButton
129
+ { ... props }
130
+ menus={menus}
131
+ />;
132
+ }