@ng-atomic/components 5.8.1 → 5.10.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.
Files changed (152) hide show
  1. package/esm2020/atoms/icon/icon.atom.mjs +2 -2
  2. package/esm2020/frames/auto-layout/auto-layout.frame.mjs +2 -2
  3. package/esm2020/frames/divider/divider.frame.mjs +2 -2
  4. package/esm2020/frames/drawer/drawer.frame.mjs +2 -2
  5. package/esm2020/frames/line-up/line-up.frame.mjs +2 -2
  6. package/esm2020/frames/overlay/overlay.frame.mjs +2 -2
  7. package/esm2020/frames/scroll/scroll.frame.mjs +2 -2
  8. package/esm2020/frames/smart-menu/smart-menu.frame.mjs +2 -2
  9. package/esm2020/molecules/actions-column/actions-column.molecule.mjs +3 -3
  10. package/esm2020/molecules/checkbox-column/checkbox-column.molecule.mjs +5 -3
  11. package/esm2020/molecules/date-input-field/date-input-field.molecule.mjs +2 -2
  12. package/esm2020/molecules/select-input-field/select-input-field.molecule.mjs +2 -2
  13. package/esm2020/molecules/smart-column/smart-column.molecule.mjs +3 -3
  14. package/esm2020/molecules/tree-column/tree-column.molecule.mjs +3 -3
  15. package/esm2020/organisms/action-buttons-section/action-buttons-section.organism.mjs +2 -2
  16. package/esm2020/organisms/back-navigator/back-navigator.organism.mjs +2 -2
  17. package/esm2020/organisms/card-input-section/card-input-section.organism.mjs +2 -2
  18. package/esm2020/organisms/cvc-and-exp-input-section/cvc-and-exp-input-section.organism.mjs +2 -2
  19. package/esm2020/organisms/date-input-section/date-input-section.organism.mjs +2 -2
  20. package/esm2020/organisms/heading/heading.organism.mjs +2 -2
  21. package/esm2020/organisms/mermaid-section/mermaid-section.organism.mjs +27 -11
  22. package/esm2020/organisms/message-input-section/index.mjs +2 -0
  23. package/esm2020/organisms/message-input-section/message-input-section.organism.mjs +32 -0
  24. package/esm2020/organisms/message-input-section/ng-atomic-components-organisms-message-input-section.mjs +5 -0
  25. package/esm2020/organisms/messages-section/index.mjs +2 -0
  26. package/esm2020/organisms/messages-section/messages-section.organism.mjs +20 -0
  27. package/esm2020/organisms/messages-section/ng-atomic-components-organisms-messages-section.mjs +5 -0
  28. package/esm2020/organisms/navigation-list/navigation-list.organism.mjs +2 -2
  29. package/esm2020/organisms/navigator/navigator.organism.mjs +2 -2
  30. package/esm2020/organisms/paginator/paginator.organism.mjs +16 -23
  31. package/esm2020/organisms/select-input-section/select-input-section.organism.mjs +2 -2
  32. package/esm2020/organisms/smart-list/smart-list.organism.mjs +24 -7
  33. package/esm2020/organisms/smart-table/smart-table.organism.mjs +2 -2
  34. package/esm2020/organisms/social-login-section/social-login-section.organism.mjs +2 -2
  35. package/esm2020/organisms/text-input-section/text-input-section.organism.mjs +2 -2
  36. package/esm2020/organisms/textarea-section/textarea-section.organism.mjs +2 -2
  37. package/esm2020/organisms/top-navigator/top-navigator.organism.mjs +2 -2
  38. package/esm2020/templates/entrance/entrance.template.mjs +2 -2
  39. package/esm2020/templates/menu/menu.template.mjs +2 -2
  40. package/esm2020/templates/messages/index.mjs +2 -0
  41. package/esm2020/templates/messages/messages.template.mjs +91 -0
  42. package/esm2020/templates/messages/ng-atomic-components-templates-messages.mjs +5 -0
  43. package/esm2020/templates/smart-crud/smart-crud.template.mjs +2 -2
  44. package/esm2020/templates/smart-index/smart-index.template.mjs +49 -25
  45. package/fesm2015/ng-atomic-components-atoms-icon.mjs +2 -2
  46. package/fesm2015/ng-atomic-components-frames-auto-layout.mjs +2 -2
  47. package/fesm2015/ng-atomic-components-frames-divider.mjs +2 -2
  48. package/fesm2015/ng-atomic-components-frames-drawer.mjs +2 -2
  49. package/fesm2015/ng-atomic-components-frames-line-up.mjs +2 -2
  50. package/fesm2015/ng-atomic-components-frames-overlay.mjs +2 -2
  51. package/fesm2015/ng-atomic-components-frames-scroll.mjs +2 -2
  52. package/fesm2015/ng-atomic-components-frames-smart-menu.mjs +2 -2
  53. package/fesm2015/ng-atomic-components-molecules-actions-column.mjs +2 -2
  54. package/fesm2015/ng-atomic-components-molecules-actions-column.mjs.map +1 -1
  55. package/fesm2015/ng-atomic-components-molecules-checkbox-column.mjs +4 -2
  56. package/fesm2015/ng-atomic-components-molecules-checkbox-column.mjs.map +1 -1
  57. package/fesm2015/ng-atomic-components-molecules-date-input-field.mjs +2 -2
  58. package/fesm2015/ng-atomic-components-molecules-select-input-field.mjs +2 -2
  59. package/fesm2015/ng-atomic-components-molecules-smart-column.mjs +2 -2
  60. package/fesm2015/ng-atomic-components-molecules-smart-column.mjs.map +1 -1
  61. package/fesm2015/ng-atomic-components-molecules-tree-column.mjs +2 -2
  62. package/fesm2015/ng-atomic-components-molecules-tree-column.mjs.map +1 -1
  63. package/fesm2015/ng-atomic-components-organisms-action-buttons-section.mjs +2 -2
  64. package/fesm2015/ng-atomic-components-organisms-back-navigator.mjs +2 -2
  65. package/fesm2015/ng-atomic-components-organisms-card-input-section.mjs +2 -2
  66. package/fesm2015/ng-atomic-components-organisms-cvc-and-exp-input-section.mjs +2 -2
  67. package/fesm2015/ng-atomic-components-organisms-date-input-section.mjs +2 -2
  68. package/fesm2015/ng-atomic-components-organisms-heading.mjs +2 -2
  69. package/fesm2015/ng-atomic-components-organisms-mermaid-section.mjs +25 -9
  70. package/fesm2015/ng-atomic-components-organisms-mermaid-section.mjs.map +1 -1
  71. package/fesm2015/ng-atomic-components-organisms-message-input-section.mjs +39 -0
  72. package/fesm2015/ng-atomic-components-organisms-message-input-section.mjs.map +1 -0
  73. package/fesm2015/ng-atomic-components-organisms-messages-section.mjs +27 -0
  74. package/fesm2015/ng-atomic-components-organisms-messages-section.mjs.map +1 -0
  75. package/fesm2015/ng-atomic-components-organisms-navigation-list.mjs +2 -2
  76. package/fesm2015/ng-atomic-components-organisms-navigator.mjs +2 -2
  77. package/fesm2015/ng-atomic-components-organisms-paginator.mjs +16 -22
  78. package/fesm2015/ng-atomic-components-organisms-paginator.mjs.map +1 -1
  79. package/fesm2015/ng-atomic-components-organisms-select-input-section.mjs +2 -2
  80. package/fesm2015/ng-atomic-components-organisms-smart-list.mjs +23 -6
  81. package/fesm2015/ng-atomic-components-organisms-smart-list.mjs.map +1 -1
  82. package/fesm2015/ng-atomic-components-organisms-smart-table.mjs +2 -2
  83. package/fesm2015/ng-atomic-components-organisms-social-login-section.mjs +2 -2
  84. package/fesm2015/ng-atomic-components-organisms-text-input-section.mjs +2 -2
  85. package/fesm2015/ng-atomic-components-organisms-textarea-section.mjs +2 -2
  86. package/fesm2015/ng-atomic-components-organisms-top-navigator.mjs +2 -2
  87. package/fesm2015/ng-atomic-components-templates-entrance.mjs +2 -2
  88. package/fesm2015/ng-atomic-components-templates-menu.mjs +2 -2
  89. package/fesm2015/ng-atomic-components-templates-messages.mjs +97 -0
  90. package/fesm2015/ng-atomic-components-templates-messages.mjs.map +1 -0
  91. package/fesm2015/ng-atomic-components-templates-smart-crud.mjs +2 -2
  92. package/fesm2015/ng-atomic-components-templates-smart-index.mjs +49 -24
  93. package/fesm2015/ng-atomic-components-templates-smart-index.mjs.map +1 -1
  94. package/fesm2020/ng-atomic-components-atoms-icon.mjs +2 -2
  95. package/fesm2020/ng-atomic-components-frames-auto-layout.mjs +2 -2
  96. package/fesm2020/ng-atomic-components-frames-divider.mjs +2 -2
  97. package/fesm2020/ng-atomic-components-frames-drawer.mjs +2 -2
  98. package/fesm2020/ng-atomic-components-frames-line-up.mjs +2 -2
  99. package/fesm2020/ng-atomic-components-frames-overlay.mjs +2 -2
  100. package/fesm2020/ng-atomic-components-frames-scroll.mjs +2 -2
  101. package/fesm2020/ng-atomic-components-frames-smart-menu.mjs +2 -2
  102. package/fesm2020/ng-atomic-components-molecules-actions-column.mjs +2 -2
  103. package/fesm2020/ng-atomic-components-molecules-actions-column.mjs.map +1 -1
  104. package/fesm2020/ng-atomic-components-molecules-checkbox-column.mjs +4 -2
  105. package/fesm2020/ng-atomic-components-molecules-checkbox-column.mjs.map +1 -1
  106. package/fesm2020/ng-atomic-components-molecules-date-input-field.mjs +2 -2
  107. package/fesm2020/ng-atomic-components-molecules-select-input-field.mjs +2 -2
  108. package/fesm2020/ng-atomic-components-molecules-smart-column.mjs +2 -2
  109. package/fesm2020/ng-atomic-components-molecules-smart-column.mjs.map +1 -1
  110. package/fesm2020/ng-atomic-components-molecules-tree-column.mjs +2 -2
  111. package/fesm2020/ng-atomic-components-molecules-tree-column.mjs.map +1 -1
  112. package/fesm2020/ng-atomic-components-organisms-action-buttons-section.mjs +2 -2
  113. package/fesm2020/ng-atomic-components-organisms-back-navigator.mjs +2 -2
  114. package/fesm2020/ng-atomic-components-organisms-card-input-section.mjs +2 -2
  115. package/fesm2020/ng-atomic-components-organisms-cvc-and-exp-input-section.mjs +2 -2
  116. package/fesm2020/ng-atomic-components-organisms-date-input-section.mjs +2 -2
  117. package/fesm2020/ng-atomic-components-organisms-heading.mjs +2 -2
  118. package/fesm2020/ng-atomic-components-organisms-mermaid-section.mjs +25 -9
  119. package/fesm2020/ng-atomic-components-organisms-mermaid-section.mjs.map +1 -1
  120. package/fesm2020/ng-atomic-components-organisms-message-input-section.mjs +39 -0
  121. package/fesm2020/ng-atomic-components-organisms-message-input-section.mjs.map +1 -0
  122. package/fesm2020/ng-atomic-components-organisms-messages-section.mjs +27 -0
  123. package/fesm2020/ng-atomic-components-organisms-messages-section.mjs.map +1 -0
  124. package/fesm2020/ng-atomic-components-organisms-navigation-list.mjs +2 -2
  125. package/fesm2020/ng-atomic-components-organisms-navigator.mjs +2 -2
  126. package/fesm2020/ng-atomic-components-organisms-paginator.mjs +16 -23
  127. package/fesm2020/ng-atomic-components-organisms-paginator.mjs.map +1 -1
  128. package/fesm2020/ng-atomic-components-organisms-select-input-section.mjs +2 -2
  129. package/fesm2020/ng-atomic-components-organisms-smart-list.mjs +23 -6
  130. package/fesm2020/ng-atomic-components-organisms-smart-list.mjs.map +1 -1
  131. package/fesm2020/ng-atomic-components-organisms-smart-table.mjs +2 -2
  132. package/fesm2020/ng-atomic-components-organisms-social-login-section.mjs +2 -2
  133. package/fesm2020/ng-atomic-components-organisms-text-input-section.mjs +2 -2
  134. package/fesm2020/ng-atomic-components-organisms-textarea-section.mjs +2 -2
  135. package/fesm2020/ng-atomic-components-organisms-top-navigator.mjs +2 -2
  136. package/fesm2020/ng-atomic-components-templates-entrance.mjs +2 -2
  137. package/fesm2020/ng-atomic-components-templates-menu.mjs +2 -2
  138. package/fesm2020/ng-atomic-components-templates-messages.mjs +97 -0
  139. package/fesm2020/ng-atomic-components-templates-messages.mjs.map +1 -0
  140. package/fesm2020/ng-atomic-components-templates-smart-crud.mjs +2 -2
  141. package/fesm2020/ng-atomic-components-templates-smart-index.mjs +49 -25
  142. package/fesm2020/ng-atomic-components-templates-smart-index.mjs.map +1 -1
  143. package/organisms/mermaid-section/mermaid-section.organism.d.ts +8 -4
  144. package/organisms/message-input-section/index.d.ts +1 -0
  145. package/organisms/message-input-section/message-input-section.organism.d.ts +14 -0
  146. package/organisms/messages-section/index.d.ts +1 -0
  147. package/organisms/messages-section/messages-section.organism.d.ts +9 -0
  148. package/organisms/paginator/paginator.organism.d.ts +6 -6
  149. package/package.json +28 -4
  150. package/templates/messages/index.d.ts +1 -0
  151. package/templates/messages/messages.template.d.ts +21 -0
  152. package/templates/smart-index/smart-index.template.d.ts +17 -9
@@ -0,0 +1,97 @@
1
+ import * as i0 from '@angular/core';
2
+ import { EventEmitter, Component, ChangeDetectionStrategy, Input, Output } from '@angular/core';
3
+ import { CommonModule } from '@angular/common';
4
+ import { MessagesSectionOrganism } from '@ng-atomic/components/organisms/messages-section';
5
+ import { MessageInputSectionOrganism } from '@ng-atomic/components/organisms/message-input-section';
6
+ import { TextareaSectionOrganism } from '@ng-atomic/components/organisms/textarea-section';
7
+ import { ScrollFrame } from '@ng-atomic/components/frames/scroll';
8
+ import { NavigatorOrganism } from '@ng-atomic/components/organisms/navigator';
9
+ import { FormGroup, FormControl } from '@angular/forms';
10
+
11
+ class MessagesTemplate {
12
+ constructor() {
13
+ this.navStartActions = [];
14
+ this.navEndActions = [];
15
+ this.messages = [];
16
+ this.form = new FormGroup({
17
+ name: new FormControl(''),
18
+ description: new FormControl(''),
19
+ message: new FormControl(''),
20
+ });
21
+ this.action = new EventEmitter();
22
+ }
23
+ }
24
+ MessagesTemplate.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: MessagesTemplate, deps: [], target: i0.ɵɵFactoryTarget.Component });
25
+ MessagesTemplate.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.3", type: MessagesTemplate, isStandalone: true, selector: "templates-messages", inputs: { navStartActions: "navStartActions", navEndActions: "navEndActions", messages: "messages", form: "form" }, outputs: { action: "action" }, host: { classAttribute: "template" }, ngImport: i0, template: `
26
+ <frames-scroll>
27
+ <organisms-navigator
28
+ [startActions]="navStartActions"
29
+ [endActions]="navEndActions"
30
+ (action)="action.emit($event)"
31
+ navigator
32
+ >
33
+ <span> メッセージ </span>
34
+ </organisms-navigator>
35
+ <div class="message" contents>
36
+ <div class="scroll">
37
+ <organisms-messages-section
38
+ [messages]="messages"
39
+ ></organisms-messages-section>
40
+ </div>
41
+ <organisms-textarea-section
42
+ [control]="form.get(['message'])"
43
+ (action)="action.emit($event)"
44
+ ></organisms-textarea-section>
45
+ </div>
46
+ </frames-scroll>
47
+ `, isInline: true, styles: [":host{width:100%;height:100%;background:white;display:block}:host .message{display:block;height:100%;position:relative}:host .message .scroll{height:calc(100% - 80px);overflow:scroll}:host .message organisms-textarea-section{position:absolute;overflow:hidden;--vertical-padding: 0px;width:100%;height:80px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: MessagesSectionOrganism, selector: "organisms-messages-section", inputs: ["messages"] }, { kind: "component", type: TextareaSectionOrganism, selector: "organisms-textarea-section", inputs: ["label", "rows", "control"], outputs: ["action"] }, { kind: "component", type: ScrollFrame, selector: "frames-scroll" }, { kind: "component", type: NavigatorOrganism, selector: "organisms-navigator", inputs: ["startActions", "endActions"], outputs: ["action"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
48
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: MessagesTemplate, decorators: [{
49
+ type: Component,
50
+ args: [{ selector: 'templates-messages', standalone: true, imports: [
51
+ CommonModule,
52
+ MessagesSectionOrganism,
53
+ MessageInputSectionOrganism,
54
+ TextareaSectionOrganism,
55
+ ScrollFrame,
56
+ NavigatorOrganism,
57
+ ], template: `
58
+ <frames-scroll>
59
+ <organisms-navigator
60
+ [startActions]="navStartActions"
61
+ [endActions]="navEndActions"
62
+ (action)="action.emit($event)"
63
+ navigator
64
+ >
65
+ <span> メッセージ </span>
66
+ </organisms-navigator>
67
+ <div class="message" contents>
68
+ <div class="scroll">
69
+ <organisms-messages-section
70
+ [messages]="messages"
71
+ ></organisms-messages-section>
72
+ </div>
73
+ <organisms-textarea-section
74
+ [control]="form.get(['message'])"
75
+ (action)="action.emit($event)"
76
+ ></organisms-textarea-section>
77
+ </div>
78
+ </frames-scroll>
79
+ `, host: { class: 'template' }, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{width:100%;height:100%;background:white;display:block}:host .message{display:block;height:100%;position:relative}:host .message .scroll{height:calc(100% - 80px);overflow:scroll}:host .message organisms-textarea-section{position:absolute;overflow:hidden;--vertical-padding: 0px;width:100%;height:80px}\n"] }]
80
+ }], propDecorators: { navStartActions: [{
81
+ type: Input
82
+ }], navEndActions: [{
83
+ type: Input
84
+ }], messages: [{
85
+ type: Input
86
+ }], form: [{
87
+ type: Input
88
+ }], action: [{
89
+ type: Output
90
+ }] } });
91
+
92
+ /**
93
+ * Generated bundle index. Do not edit.
94
+ */
95
+
96
+ export { MessagesTemplate };
97
+ //# sourceMappingURL=ng-atomic-components-templates-messages.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ng-atomic-components-templates-messages.mjs","sources":["../../../../../packages/@ng-atomic/components/src/lib/templates/messages/messages.template.ts","../../../../../packages/@ng-atomic/components/src/lib/templates/messages/ng-atomic-components-templates-messages.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MessagesSectionOrganism } from '@ng-atomic/components/organisms/messages-section';\nimport { MessageInputSectionOrganism } from '@ng-atomic/components/organisms/message-input-section';\nimport { TextareaSectionOrganism } from '@ng-atomic/components/organisms/textarea-section';\nimport { ScrollFrame } from '@ng-atomic/components/frames/scroll';\nimport { NavigatorOrganism } from '@ng-atomic/components/organisms/navigator';\nimport { FormGroup } from '@angular/forms';\nimport { FormControl } from '@angular/forms';\nimport { Action } from '@ng-atomic/common/models';\n\n\n@Component({\n selector: 'templates-messages',\n standalone: true,\n imports: [\n CommonModule,\n MessagesSectionOrganism,\n MessageInputSectionOrganism,\n TextareaSectionOrganism,\n ScrollFrame,\n NavigatorOrganism,\n ],\n template: `\n <frames-scroll>\n <organisms-navigator\n [startActions]=\"navStartActions\"\n [endActions]=\"navEndActions\"\n (action)=\"action.emit($event)\"\n navigator\n >\n <span> メッセージ </span>\n </organisms-navigator>\n <div class=\"message\" contents>\n <div class=\"scroll\">\n <organisms-messages-section\n [messages]=\"messages\"\n ></organisms-messages-section>\n </div>\n <organisms-textarea-section\n [control]=\"form.get(['message'])\"\n (action)=\"action.emit($event)\"\n ></organisms-textarea-section>\n </div>\n </frames-scroll>\n `,\n styleUrls: ['./messages.template.scss'],\n host: { class: 'template' },\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class MessagesTemplate {\n @Input()\n navStartActions: Action[] = [];\n\n @Input()\n navEndActions: Action[] = [];\n\n @Input()\n messages: {role: string, content: string}[] = [];\n\n @Input()\n form = new FormGroup({\n name: new FormControl(''),\n description: new FormControl(''),\n message: new FormControl(''),\n });\n\n @Output()\n action = new EventEmitter<Action>();\n\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;MAkDa,gBAAgB,CAAA;AAtC7B,IAAA,WAAA,GAAA;QAwCE,IAAe,CAAA,eAAA,GAAa,EAAE,CAAC;QAG/B,IAAa,CAAA,aAAA,GAAa,EAAE,CAAC;QAG7B,IAAQ,CAAA,QAAA,GAAsC,EAAE,CAAC;QAGjD,IAAI,CAAA,IAAA,GAAG,IAAI,SAAS,CAAC;AACnB,YAAA,IAAI,EAAE,IAAI,WAAW,CAAC,EAAE,CAAC;AACzB,YAAA,WAAW,EAAE,IAAI,WAAW,CAAC,EAAE,CAAC;AAChC,YAAA,OAAO,EAAE,IAAI,WAAW,CAAC,EAAE,CAAC;AAC7B,SAAA,CAAC,CAAC;AAGH,QAAA,IAAA,CAAA,MAAM,GAAG,IAAI,YAAY,EAAU,CAAC;AAErC,KAAA;;6GApBY,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAhB,gBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAgB,EA3BjB,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,QAAA,EAAA,UAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,UAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;GAsBT,EA7BC,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,sTAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,YAAY,+BACZ,uBAAuB,EAAA,QAAA,EAAA,4BAAA,EAAA,MAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAEvB,uBAAuB,EACvB,QAAA,EAAA,4BAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,MAAA,EAAA,SAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,WAAW,0DACX,iBAAiB,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,EAAA,YAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;2FA6BR,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAtC5B,SAAS;+BACE,oBAAoB,EAAA,UAAA,EAClB,IAAI,EACP,OAAA,EAAA;wBACP,YAAY;wBACZ,uBAAuB;wBACvB,2BAA2B;wBAC3B,uBAAuB;wBACvB,WAAW;wBACX,iBAAiB;qBAClB,EACS,QAAA,EAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;GAsBT,EAEK,IAAA,EAAA,EAAE,KAAK,EAAE,UAAU,EAAE,EACV,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAAA,MAAA,EAAA,CAAA,sTAAA,CAAA,EAAA,CAAA;8BAI/C,eAAe,EAAA,CAAA;sBADd,KAAK;gBAIN,aAAa,EAAA,CAAA;sBADZ,KAAK;gBAIN,QAAQ,EAAA,CAAA;sBADP,KAAK;gBAIN,IAAI,EAAA,CAAA;sBADH,KAAK;gBAQN,MAAM,EAAA,CAAA;sBADL,MAAM;;;ACnET;;AAEG;;;;"}
@@ -40,7 +40,7 @@ class SmartCrudTemplate {
40
40
  }
41
41
  }
42
42
  SmartCrudTemplate.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: SmartCrudTemplate, deps: [], target: i0.ɵɵFactoryTarget.Component });
43
- SmartCrudTemplate.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.3", type: SmartCrudTemplate, isStandalone: true, selector: "templates-smart-crud", inputs: { title: "title", form: "form", navStartActions: "navStartActions", navEndActions: "navEndActions", actions: "actions" }, outputs: { action: "action" }, host: { classAttribute: "template" }, ngImport: i0, template: "<frames-scroll>\n <organisms-navigator \n [startActions]=\"navStartActions\"\n [endActions]=\"navEndActions\"\n (action)=\"action.emit($event)\"\n navigator\n >\n <molecules-header [title]=\"title\"></molecules-header>\n </organisms-navigator>\n <frames-auto-layout vertical contents>\n <ng-container *ngFor=\"let entry of controls; trackBy:trackByIndex\" [ngSwitch]=\"(entry[0] | smartField)?.type\">\n <organisms-select-input-section\n *ngSwitchCase=\"'select'\"\n [label]=\"entry[0] | D\"\n [control]=\"entry[1]\"\n [options]=\"(entry[0] | smartField)?.options\"\n ></organisms-select-input-section>\n <organisms-date-input-section\n *ngSwitchCase=\"'date'\"\n [label]=\"entry[0] | D\"\n [control]=\"entry[1]\"\n ></organisms-date-input-section>\n <organisms-text-input-section\n *ngSwitchCase=\"'number'\"\n [type]=\"'number'\"\n [label]=\"entry[0] | D\"\n [control]=\"entry[1]\"\n ></organisms-text-input-section>\n <organisms-textarea-section\n *ngSwitchCase=\"'textarea'\"\n [label]=\"entry[0] | D\"\n [control]=\"entry[1]\"\n [rows]=\"(entry[0] | smartField).rows\"\n ></organisms-textarea-section>\n <organisms-text-input-section\n *ngSwitchDefault\n [label]=\"entry[0] | D\"\n [control]=\"entry[1]\"\n ></organisms-text-input-section>\n </ng-container>\n <organisms-action-buttons-section\n [actions]=\"actions\"\n (action)=\"action.emit($event)\"\n ></organisms-action-buttons-section>\n </frames-auto-layout>\n</frames-scroll>", styles: [":host{--horizontal-padding: 16px;--horizontal-padding-SCOPED-IN-smart-crud-DHsS: var(--horizontal-padding);--vertical-padding: 24px;--vertical-padding-SCOPED-IN-smart-crud-DHsS: var(--vertical-padding);--gap: 16px;--gap-SCOPED-IN-smart-crud-DHsS: var(--gap)}:host{display:block;width:100%;height:100%;background:white}:host frames-auto-layout{height:-moz-fit-content;height:fit-content;--gap: var(--gap-SCOPED-IN-smart-crud-DHsS);--vertical-padding: var(--vertical-padding-SCOPED-IN-smart-crud-DHsS)}:host frames-auto-layout *{--horizontal-padding: var(--horizontal-padding-SCOPED-IN-smart-crud-DHsS)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "ngmodule", type: DomainModule }, { kind: "pipe", type: i2.DomainPipe, name: "D" }, { kind: "ngmodule", type: SmartFieldModule }, { kind: "pipe", type: i3.SmartFieldPipe, name: "smartField" }, { kind: "component", type: AutoLayoutFrame, selector: "frames-auto-layout" }, { kind: "component", type: ScrollFrame, selector: "frames-scroll" }, { kind: "component", type: ActionButtonsSectionOrganism, selector: "organisms-action-buttons-section", inputs: ["actions"], outputs: ["action"] }, { kind: "component", type: NavigatorOrganism, selector: "organisms-navigator", inputs: ["startActions", "endActions"], outputs: ["action"] }, { kind: "component", type: DateInputSectionOrganism, selector: "organisms-date-input-section", inputs: ["control", "label", "placeholder"] }, { kind: "component", type: TextInputSectionOrganism, selector: "organisms-text-input-section", inputs: ["label", "placeholder", "type", "hint", "control"] }, { kind: "component", type: TextareaSectionOrganism, selector: "organisms-textarea-section", inputs: ["label", "rows", "control"], outputs: ["action"] }, { kind: "component", type: SelectInputSectionOrganism, selector: "organisms-select-input-section", inputs: ["label", "control", "options"] }, { kind: "component", type: HeaderMolecule, selector: "molecules-header", inputs: ["title", "description"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
43
+ SmartCrudTemplate.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.3", type: SmartCrudTemplate, isStandalone: true, selector: "templates-smart-crud", inputs: { title: "title", form: "form", navStartActions: "navStartActions", navEndActions: "navEndActions", actions: "actions" }, outputs: { action: "action" }, host: { classAttribute: "template" }, ngImport: i0, template: "<frames-scroll>\n <organisms-navigator \n [startActions]=\"navStartActions\"\n [endActions]=\"navEndActions\"\n (action)=\"action.emit($event)\"\n navigator\n >\n <molecules-header [title]=\"title\"></molecules-header>\n </organisms-navigator>\n <frames-auto-layout vertical contents>\n <ng-container *ngFor=\"let entry of controls; trackBy:trackByIndex\" [ngSwitch]=\"(entry[0] | smartField)?.type\">\n <organisms-select-input-section\n *ngSwitchCase=\"'select'\"\n [label]=\"entry[0] | D\"\n [control]=\"entry[1]\"\n [options]=\"(entry[0] | smartField)?.options\"\n ></organisms-select-input-section>\n <organisms-date-input-section\n *ngSwitchCase=\"'date'\"\n [label]=\"entry[0] | D\"\n [control]=\"entry[1]\"\n ></organisms-date-input-section>\n <organisms-text-input-section\n *ngSwitchCase=\"'number'\"\n [type]=\"'number'\"\n [label]=\"entry[0] | D\"\n [control]=\"entry[1]\"\n ></organisms-text-input-section>\n <organisms-textarea-section\n *ngSwitchCase=\"'textarea'\"\n [label]=\"entry[0] | D\"\n [control]=\"entry[1]\"\n [rows]=\"(entry[0] | smartField).rows\"\n ></organisms-textarea-section>\n <organisms-text-input-section\n *ngSwitchDefault\n [label]=\"entry[0] | D\"\n [control]=\"entry[1]\"\n ></organisms-text-input-section>\n </ng-container>\n <organisms-action-buttons-section\n [actions]=\"actions\"\n (action)=\"action.emit($event)\"\n ></organisms-action-buttons-section>\n </frames-auto-layout>\n</frames-scroll>", styles: [":host{--horizontal-padding: 16px;--horizontal-padding-SCOPED-IN-smart-crud-jf3V: var(--horizontal-padding);--vertical-padding: 24px;--vertical-padding-SCOPED-IN-smart-crud-jf3V: var(--vertical-padding);--gap: 16px;--gap-SCOPED-IN-smart-crud-jf3V: var(--gap)}:host{display:block;width:100%;height:100%;background:white}:host frames-auto-layout{height:-moz-fit-content;height:fit-content;--gap: var(--gap-SCOPED-IN-smart-crud-jf3V);--vertical-padding: var(--vertical-padding-SCOPED-IN-smart-crud-jf3V)}:host frames-auto-layout *{--horizontal-padding: var(--horizontal-padding-SCOPED-IN-smart-crud-jf3V)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "ngmodule", type: DomainModule }, { kind: "pipe", type: i2.DomainPipe, name: "D" }, { kind: "ngmodule", type: SmartFieldModule }, { kind: "pipe", type: i3.SmartFieldPipe, name: "smartField" }, { kind: "component", type: AutoLayoutFrame, selector: "frames-auto-layout" }, { kind: "component", type: ScrollFrame, selector: "frames-scroll" }, { kind: "component", type: ActionButtonsSectionOrganism, selector: "organisms-action-buttons-section", inputs: ["actions"], outputs: ["action"] }, { kind: "component", type: NavigatorOrganism, selector: "organisms-navigator", inputs: ["startActions", "endActions"], outputs: ["action"] }, { kind: "component", type: DateInputSectionOrganism, selector: "organisms-date-input-section", inputs: ["control", "label", "placeholder"] }, { kind: "component", type: TextInputSectionOrganism, selector: "organisms-text-input-section", inputs: ["label", "placeholder", "type", "hint", "control"] }, { kind: "component", type: TextareaSectionOrganism, selector: "organisms-textarea-section", inputs: ["label", "rows", "control"], outputs: ["action"] }, { kind: "component", type: SelectInputSectionOrganism, selector: "organisms-select-input-section", inputs: ["label", "control", "options"] }, { kind: "component", type: HeaderMolecule, selector: "molecules-header", inputs: ["title", "description"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
44
44
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: SmartCrudTemplate, decorators: [{
45
45
  type: Component,
46
46
  args: [{ standalone: true, imports: [
@@ -57,7 +57,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImpor
57
57
  TextareaSectionOrganism,
58
58
  SelectInputSectionOrganism,
59
59
  HeaderMolecule,
60
- ], selector: 'templates-smart-crud', changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'template' }, template: "<frames-scroll>\n <organisms-navigator \n [startActions]=\"navStartActions\"\n [endActions]=\"navEndActions\"\n (action)=\"action.emit($event)\"\n navigator\n >\n <molecules-header [title]=\"title\"></molecules-header>\n </organisms-navigator>\n <frames-auto-layout vertical contents>\n <ng-container *ngFor=\"let entry of controls; trackBy:trackByIndex\" [ngSwitch]=\"(entry[0] | smartField)?.type\">\n <organisms-select-input-section\n *ngSwitchCase=\"'select'\"\n [label]=\"entry[0] | D\"\n [control]=\"entry[1]\"\n [options]=\"(entry[0] | smartField)?.options\"\n ></organisms-select-input-section>\n <organisms-date-input-section\n *ngSwitchCase=\"'date'\"\n [label]=\"entry[0] | D\"\n [control]=\"entry[1]\"\n ></organisms-date-input-section>\n <organisms-text-input-section\n *ngSwitchCase=\"'number'\"\n [type]=\"'number'\"\n [label]=\"entry[0] | D\"\n [control]=\"entry[1]\"\n ></organisms-text-input-section>\n <organisms-textarea-section\n *ngSwitchCase=\"'textarea'\"\n [label]=\"entry[0] | D\"\n [control]=\"entry[1]\"\n [rows]=\"(entry[0] | smartField).rows\"\n ></organisms-textarea-section>\n <organisms-text-input-section\n *ngSwitchDefault\n [label]=\"entry[0] | D\"\n [control]=\"entry[1]\"\n ></organisms-text-input-section>\n </ng-container>\n <organisms-action-buttons-section\n [actions]=\"actions\"\n (action)=\"action.emit($event)\"\n ></organisms-action-buttons-section>\n </frames-auto-layout>\n</frames-scroll>", styles: [":host{--horizontal-padding: 16px;--horizontal-padding-SCOPED-IN-smart-crud-DHsS: var(--horizontal-padding);--vertical-padding: 24px;--vertical-padding-SCOPED-IN-smart-crud-DHsS: var(--vertical-padding);--gap: 16px;--gap-SCOPED-IN-smart-crud-DHsS: var(--gap)}:host{display:block;width:100%;height:100%;background:white}:host frames-auto-layout{height:-moz-fit-content;height:fit-content;--gap: var(--gap-SCOPED-IN-smart-crud-DHsS);--vertical-padding: var(--vertical-padding-SCOPED-IN-smart-crud-DHsS)}:host frames-auto-layout *{--horizontal-padding: var(--horizontal-padding-SCOPED-IN-smart-crud-DHsS)}\n"] }]
60
+ ], selector: 'templates-smart-crud', changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'template' }, template: "<frames-scroll>\n <organisms-navigator \n [startActions]=\"navStartActions\"\n [endActions]=\"navEndActions\"\n (action)=\"action.emit($event)\"\n navigator\n >\n <molecules-header [title]=\"title\"></molecules-header>\n </organisms-navigator>\n <frames-auto-layout vertical contents>\n <ng-container *ngFor=\"let entry of controls; trackBy:trackByIndex\" [ngSwitch]=\"(entry[0] | smartField)?.type\">\n <organisms-select-input-section\n *ngSwitchCase=\"'select'\"\n [label]=\"entry[0] | D\"\n [control]=\"entry[1]\"\n [options]=\"(entry[0] | smartField)?.options\"\n ></organisms-select-input-section>\n <organisms-date-input-section\n *ngSwitchCase=\"'date'\"\n [label]=\"entry[0] | D\"\n [control]=\"entry[1]\"\n ></organisms-date-input-section>\n <organisms-text-input-section\n *ngSwitchCase=\"'number'\"\n [type]=\"'number'\"\n [label]=\"entry[0] | D\"\n [control]=\"entry[1]\"\n ></organisms-text-input-section>\n <organisms-textarea-section\n *ngSwitchCase=\"'textarea'\"\n [label]=\"entry[0] | D\"\n [control]=\"entry[1]\"\n [rows]=\"(entry[0] | smartField).rows\"\n ></organisms-textarea-section>\n <organisms-text-input-section\n *ngSwitchDefault\n [label]=\"entry[0] | D\"\n [control]=\"entry[1]\"\n ></organisms-text-input-section>\n </ng-container>\n <organisms-action-buttons-section\n [actions]=\"actions\"\n (action)=\"action.emit($event)\"\n ></organisms-action-buttons-section>\n </frames-auto-layout>\n</frames-scroll>", styles: [":host{--horizontal-padding: 16px;--horizontal-padding-SCOPED-IN-smart-crud-jf3V: var(--horizontal-padding);--vertical-padding: 24px;--vertical-padding-SCOPED-IN-smart-crud-jf3V: var(--vertical-padding);--gap: 16px;--gap-SCOPED-IN-smart-crud-jf3V: var(--gap)}:host{display:block;width:100%;height:100%;background:white}:host frames-auto-layout{height:-moz-fit-content;height:fit-content;--gap: var(--gap-SCOPED-IN-smart-crud-jf3V);--vertical-padding: var(--vertical-padding-SCOPED-IN-smart-crud-jf3V)}:host frames-auto-layout *{--horizontal-padding: var(--horizontal-padding-SCOPED-IN-smart-crud-jf3V)}\n"] }]
61
61
  }], propDecorators: { title: [{
62
62
  type: Input
63
63
  }], form: [{
@@ -1,6 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { EventEmitter, Component, ChangeDetectionStrategy, Input, Output } from '@angular/core';
3
- import '@angular/material/legacy-paginator';
2
+ import { EventEmitter, Directive, Output, inject, Component, ChangeDetectionStrategy, Input } from '@angular/core';
4
3
  import * as i1 from '@angular/common';
5
4
  import { CommonModule } from '@angular/common';
6
5
  import { AutoLayoutFrame } from '@ng-atomic/components/frames/auto-layout';
@@ -20,10 +19,39 @@ var ActionId;
20
19
  ActionId["BACK"] = "[@ng-atomic/components/templates/smart-index] Back";
21
20
  ActionId["TABLE_HEADER_CLICK"] = "[@ng-atomic/components/templates/smart-index] Table Header Click";
22
21
  ActionId["ITEM_CLICK"] = "[@ng-atomic/components/templates/smart-index] Item Click";
22
+ ActionId["CHECKBOX_CLICK"] = "[@ng-atomic/components/templates/smart-index] Check Item";
23
23
  })(ActionId || (ActionId = {}));
24
+ class NgAtomicDirective {
25
+ constructor() {
26
+ this.action = new EventEmitter();
27
+ }
28
+ ngOnInit() {
29
+ this.action.subscribe(action => {
30
+ console.debug('NgAtomicDirective.action', action);
31
+ });
32
+ }
33
+ onAction(action) {
34
+ switch (action.id) {
35
+ case ActionId$1.CLICK_ITEM:
36
+ return this.action.emit({ ...action, id: ActionId.ITEM_CLICK });
37
+ default: return this.action.emit(action);
38
+ }
39
+ }
40
+ dispatch(action) {
41
+ this.action.emit(action);
42
+ }
43
+ }
44
+ NgAtomicDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: NgAtomicDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
45
+ NgAtomicDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.3", type: NgAtomicDirective, isStandalone: true, outputs: { action: "action" }, ngImport: i0 });
46
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: NgAtomicDirective, decorators: [{
47
+ type: Directive,
48
+ args: [{ standalone: true }]
49
+ }], propDecorators: { action: [{
50
+ type: Output
51
+ }] } });
24
52
  class SmartIndexTemplate {
25
53
  constructor() {
26
- this.ActionId = ActionId;
54
+ this.ngAtomic = inject(NgAtomicDirective);
27
55
  this.gridToolbarActions = [];
28
56
  this.tableChildrenKey = '';
29
57
  this.form = new FormGroup({
@@ -39,29 +67,26 @@ class SmartIndexTemplate {
39
67
  this.navEndActions = [];
40
68
  this.properties = [];
41
69
  this.selectedIdSet = new Set();
42
- this.page = {
43
- pageIndex: 0,
44
- pageSize: 20,
45
- length: 100,
46
- };
47
70
  this.pageSizeOptions = [5, 10, 25, 100];
48
71
  this.queryPlaceholder = '';
49
72
  this.device = 'sp';
50
- this.action = new EventEmitter();
51
73
  this.backButtonClick = new EventEmitter();
52
- this.checkboxClick = new EventEmitter();
53
74
  this.pageChange = new EventEmitter();
54
75
  }
55
- onAction(action) {
56
- switch (action.id) {
57
- case ActionId$1.CLICK_ITEM:
58
- return this.action.emit({ ...action, id: ActionId.ITEM_CLICK });
59
- default: return this.action.emit(action);
60
- }
76
+ onCheckboxClickItem(item) {
77
+ console.debug('onCheckboxClickItem', item);
78
+ this.ngAtomic.action.emit({
79
+ id: ActionId.CHECKBOX_CLICK,
80
+ payload: item,
81
+ });
82
+ }
83
+ ngOnChanges(changes) {
84
+ console.debug('changed!', changes);
61
85
  }
62
86
  }
87
+ SmartIndexTemplate.ActionId = ActionId;
63
88
  SmartIndexTemplate.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: SmartIndexTemplate, deps: [], target: i0.ɵɵFactoryTarget.Component });
64
- SmartIndexTemplate.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.3", type: SmartIndexTemplate, isStandalone: true, selector: "templates-smart-index", inputs: { gridToolbarActions: "gridToolbarActions", tableChildrenKey: "tableChildrenKey", form: "form", queryControl: "queryControl", title: "title", description: "description", items: "items", itemActions: "itemActions", navStartActions: "navStartActions", navEndActions: "navEndActions", properties: "properties", selectedIdSet: "selectedIdSet", sortKey: "sortKey", sortOrder: "sortOrder", page: "page", pageSizeOptions: "pageSizeOptions", queryPlaceholder: "queryPlaceholder", device: "device" }, outputs: { action: "action", backButtonClick: "backButtonClick", checkboxClick: "checkboxClick", pageChange: "pageChange" }, host: { classAttribute: "template" }, ngImport: i0, template: "<frames-scroll>\n <organisms-navigator\n [startActions]=\"navStartActions\"\n [endActions]=\"navEndActions\"\n (action)=\"onAction($event)\"\n navigator\n >\n <molecules-header [title]=\"title\" [description]=\"description\"></molecules-header>\n </organisms-navigator>\n <frames-auto-layout vertical contents [ngSwitch]=\"device\">\n <ng-container *ngSwitchCase=\"'sp'\">\n <organisms-smart-list\n [items]=\"items\"\n (action)=\"onAction($event)\"\n ></organisms-smart-list>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <frames-divider>\n <ng-content first select=\"[dashboard]\"></ng-content>\n <div style=\"display: flex; flex-direction: column; width: 100%; height: 100%;\" second>\n <organisms-grid-toolbar\n [actions]=\"gridToolbarActions\"\n (action)=\"onAction($event)\"\n ></organisms-grid-toolbar>\n <organisms-smart-table\n [items]=\"items\"\n [itemActions]=\"itemActions\"\n [columns]=\"properties\"\n [selectedIdSet]=\"selectedIdSet\"\n [sortKey]=\"sortKey\"\n [sortOrder]=\"sortOrder\"\n [childrenKey]=\"tableChildrenKey\"\n (action)=\"onAction($event)\"\n (checkboxClick)=\"checkboxClick.emit($event)\"\n (headerClick)=\"onAction({id: ActionId.TABLE_HEADER_CLICK, payload: $event})\"\n ></organisms-smart-table>\n <organisms-paginator\n *ngIf=\"page\"\n [control]=\"queryControl\"\n [form]=\"form\"\n [page]=\"page\"\n [pageSizeOptions]=\"pageSizeOptions\"\n [placeholder]=\"queryPlaceholder\"\n (pageChange)=\"pageChange.emit($event)\"\n ></organisms-paginator>\n </div>\n </frames-divider>\n \n </ng-container>\n </frames-auto-layout>\n</frames-scroll>", styles: [":host{--navigator-height: 56px;--navigator-height-SCOPED-IN-smart-index-0bnq: var(--navigator-height)}:host{width:100%;height:100%;background:white;display:block}:host frames-auto-layout{--gap: 0;--vertical-padding: 0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: AutoLayoutFrame, selector: "frames-auto-layout" }, { kind: "component", type: ScrollFrame, selector: "frames-scroll" }, { kind: "component", type: DividerFrame, selector: "frames-divider" }, { kind: "component", type: GridToolbarOrganism, selector: "organisms-grid-toolbar", inputs: ["actions"], outputs: ["action"] }, { kind: "component", type: PaginatorOrganism, selector: "organisms-paginator", inputs: ["control", "form", "placeholder", "page", "pageSizeOptions"], outputs: ["pageChange"] }, { kind: "component", type: SmartTableOrganism, selector: "organisms-smart-table", inputs: ["columns", "childrenKey", "items", "itemActions", "pageSize", "selectedIdSet", "sort"], outputs: ["action", "headerClick", "checkboxClick", "pageChange", "itemCheck"] }, { kind: "component", type: SmartListOrganism, selector: "organisms-smart-list", inputs: ["items"], outputs: ["action"] }, { kind: "component", type: NavigatorOrganism, selector: "organisms-navigator", inputs: ["startActions", "endActions"], outputs: ["action"] }, { kind: "component", type: HeaderMolecule, selector: "molecules-header", inputs: ["title", "description"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
89
+ SmartIndexTemplate.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.3", type: SmartIndexTemplate, isStandalone: true, selector: "templates-smart-index", inputs: { gridToolbarActions: "gridToolbarActions", tableChildrenKey: "tableChildrenKey", form: "form", queryControl: "queryControl", title: "title", description: "description", items: "items", itemActions: "itemActions", navStartActions: "navStartActions", navEndActions: "navEndActions", properties: "properties", selectedIdSet: "selectedIdSet", sortKey: "sortKey", sortOrder: "sortOrder", pageSizeOptions: "pageSizeOptions", queryPlaceholder: "queryPlaceholder", device: "device" }, outputs: { backButtonClick: "backButtonClick", pageChange: "pageChange" }, host: { classAttribute: "template" }, usesOnChanges: true, hostDirectives: [{ directive: NgAtomicDirective, outputs: ["action", "action"] }], ngImport: i0, template: "<frames-scroll>\n <organisms-navigator\n [startActions]=\"navStartActions\"\n [endActions]=\"navEndActions\"\n (action)=\"ngAtomic.onAction($event)\"\n navigator\n >\n <molecules-header [title]=\"title\" [description]=\"description\"></molecules-header>\n </organisms-navigator>\n <frames-auto-layout vertical contents [ngSwitch]=\"device\">\n <ng-container *ngSwitchCase=\"'sp'\">\n <organisms-smart-list\n [items]=\"items\"\n (action)=\"ngAtomic.onAction($event)\"\n ></organisms-smart-list>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <frames-divider>\n <ng-content first select=\"[dashboard]\"></ng-content>\n <div style=\"display: flex; flex-direction: column; width: 100%; height: 100%;\" second>\n <organisms-grid-toolbar\n [actions]=\"gridToolbarActions\"\n (action)=\"ngAtomic.onAction($event)\"\n ></organisms-grid-toolbar>\n <organisms-smart-table\n [items]=\"items\"\n [itemActions]=\"itemActions\"\n [columns]=\"properties\"\n [selectedIdSet]=\"selectedIdSet\"\n [sortKey]=\"sortKey\"\n [sortOrder]=\"sortOrder\"\n [childrenKey]=\"tableChildrenKey\"\n (action)=\"ngAtomic.onAction($event)\"\n (checkboxClick)=\"onCheckboxClickItem($event)\"\n (headerClick)=\"ngAtomic.onAction({id: ActionId.TABLE_HEADER_CLICK, payload: $event})\"\n ></organisms-smart-table>\n <organisms-paginator\n [form]=\"form\"\n [pageSizeOptions]=\"pageSizeOptions\"\n [placeholder]=\"queryPlaceholder\"\n (pageChange)=\"pageChange.emit($event)\"\n ></organisms-paginator>\n </div>\n </frames-divider>\n \n </ng-container>\n </frames-auto-layout>\n</frames-scroll>", styles: [":host{--navigator-height: 56px;--navigator-height-SCOPED-IN-smart-index-2S4F: var(--navigator-height)}:host{width:100%;height:100%;background:white;display:block}:host frames-auto-layout{--gap: 0;--vertical-padding: 0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: AutoLayoutFrame, selector: "frames-auto-layout" }, { kind: "component", type: ScrollFrame, selector: "frames-scroll" }, { kind: "component", type: DividerFrame, selector: "frames-divider" }, { kind: "component", type: GridToolbarOrganism, selector: "organisms-grid-toolbar", inputs: ["actions"], outputs: ["action"] }, { kind: "component", type: PaginatorOrganism, selector: "organisms-paginator", inputs: ["form", "pageSizeOptions"] }, { kind: "component", type: SmartTableOrganism, selector: "organisms-smart-table", inputs: ["columns", "childrenKey", "items", "itemActions", "pageSize", "selectedIdSet", "sort"], outputs: ["action", "headerClick", "checkboxClick", "pageChange", "itemCheck"] }, { kind: "component", type: SmartListOrganism, selector: "organisms-smart-list", inputs: ["items"], outputs: ["action"] }, { kind: "component", type: NavigatorOrganism, selector: "organisms-navigator", inputs: ["startActions", "endActions"], outputs: ["action"] }, { kind: "component", type: HeaderMolecule, selector: "molecules-header", inputs: ["title", "description"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
65
90
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: SmartIndexTemplate, decorators: [{
66
91
  type: Component,
67
92
  args: [{ standalone: true, imports: [
@@ -76,7 +101,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImpor
76
101
  NavigatorOrganism,
77
102
  FiltersSectionOrganism,
78
103
  HeaderMolecule,
79
- ], selector: 'templates-smart-index', changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'template' }, template: "<frames-scroll>\n <organisms-navigator\n [startActions]=\"navStartActions\"\n [endActions]=\"navEndActions\"\n (action)=\"onAction($event)\"\n navigator\n >\n <molecules-header [title]=\"title\" [description]=\"description\"></molecules-header>\n </organisms-navigator>\n <frames-auto-layout vertical contents [ngSwitch]=\"device\">\n <ng-container *ngSwitchCase=\"'sp'\">\n <organisms-smart-list\n [items]=\"items\"\n (action)=\"onAction($event)\"\n ></organisms-smart-list>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <frames-divider>\n <ng-content first select=\"[dashboard]\"></ng-content>\n <div style=\"display: flex; flex-direction: column; width: 100%; height: 100%;\" second>\n <organisms-grid-toolbar\n [actions]=\"gridToolbarActions\"\n (action)=\"onAction($event)\"\n ></organisms-grid-toolbar>\n <organisms-smart-table\n [items]=\"items\"\n [itemActions]=\"itemActions\"\n [columns]=\"properties\"\n [selectedIdSet]=\"selectedIdSet\"\n [sortKey]=\"sortKey\"\n [sortOrder]=\"sortOrder\"\n [childrenKey]=\"tableChildrenKey\"\n (action)=\"onAction($event)\"\n (checkboxClick)=\"checkboxClick.emit($event)\"\n (headerClick)=\"onAction({id: ActionId.TABLE_HEADER_CLICK, payload: $event})\"\n ></organisms-smart-table>\n <organisms-paginator\n *ngIf=\"page\"\n [control]=\"queryControl\"\n [form]=\"form\"\n [page]=\"page\"\n [pageSizeOptions]=\"pageSizeOptions\"\n [placeholder]=\"queryPlaceholder\"\n (pageChange)=\"pageChange.emit($event)\"\n ></organisms-paginator>\n </div>\n </frames-divider>\n \n </ng-container>\n </frames-auto-layout>\n</frames-scroll>", styles: [":host{--navigator-height: 56px;--navigator-height-SCOPED-IN-smart-index-0bnq: var(--navigator-height)}:host{width:100%;height:100%;background:white;display:block}:host frames-auto-layout{--gap: 0;--vertical-padding: 0}\n"] }]
104
+ ], selector: 'templates-smart-index', changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'template' }, hostDirectives: [
105
+ {
106
+ directive: NgAtomicDirective,
107
+ outputs: ['action'],
108
+ }
109
+ ], template: "<frames-scroll>\n <organisms-navigator\n [startActions]=\"navStartActions\"\n [endActions]=\"navEndActions\"\n (action)=\"ngAtomic.onAction($event)\"\n navigator\n >\n <molecules-header [title]=\"title\" [description]=\"description\"></molecules-header>\n </organisms-navigator>\n <frames-auto-layout vertical contents [ngSwitch]=\"device\">\n <ng-container *ngSwitchCase=\"'sp'\">\n <organisms-smart-list\n [items]=\"items\"\n (action)=\"ngAtomic.onAction($event)\"\n ></organisms-smart-list>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <frames-divider>\n <ng-content first select=\"[dashboard]\"></ng-content>\n <div style=\"display: flex; flex-direction: column; width: 100%; height: 100%;\" second>\n <organisms-grid-toolbar\n [actions]=\"gridToolbarActions\"\n (action)=\"ngAtomic.onAction($event)\"\n ></organisms-grid-toolbar>\n <organisms-smart-table\n [items]=\"items\"\n [itemActions]=\"itemActions\"\n [columns]=\"properties\"\n [selectedIdSet]=\"selectedIdSet\"\n [sortKey]=\"sortKey\"\n [sortOrder]=\"sortOrder\"\n [childrenKey]=\"tableChildrenKey\"\n (action)=\"ngAtomic.onAction($event)\"\n (checkboxClick)=\"onCheckboxClickItem($event)\"\n (headerClick)=\"ngAtomic.onAction({id: ActionId.TABLE_HEADER_CLICK, payload: $event})\"\n ></organisms-smart-table>\n <organisms-paginator\n [form]=\"form\"\n [pageSizeOptions]=\"pageSizeOptions\"\n [placeholder]=\"queryPlaceholder\"\n (pageChange)=\"pageChange.emit($event)\"\n ></organisms-paginator>\n </div>\n </frames-divider>\n \n </ng-container>\n </frames-auto-layout>\n</frames-scroll>", styles: [":host{--navigator-height: 56px;--navigator-height-SCOPED-IN-smart-index-2S4F: var(--navigator-height)}:host{width:100%;height:100%;background:white;display:block}:host frames-auto-layout{--gap: 0;--vertical-padding: 0}\n"] }]
80
110
  }], propDecorators: { gridToolbarActions: [{
81
111
  type: Input
82
112
  }], tableChildrenKey: [{
@@ -105,20 +135,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImpor
105
135
  type: Input
106
136
  }], sortOrder: [{
107
137
  type: Input
108
- }], page: [{
109
- type: Input
110
138
  }], pageSizeOptions: [{
111
139
  type: Input
112
140
  }], queryPlaceholder: [{
113
141
  type: Input
114
142
  }], device: [{
115
143
  type: Input
116
- }], action: [{
117
- type: Output
118
144
  }], backButtonClick: [{
119
145
  type: Output
120
- }], checkboxClick: [{
121
- type: Output
122
146
  }], pageChange: [{
123
147
  type: Output
124
148
  }] } });
@@ -127,5 +151,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImpor
127
151
  * Generated bundle index. Do not edit.
128
152
  */
129
153
 
130
- export { ActionId, SmartIndexTemplate };
154
+ export { ActionId, NgAtomicDirective, SmartIndexTemplate };
131
155
  //# sourceMappingURL=ng-atomic-components-templates-smart-index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"ng-atomic-components-templates-smart-index.mjs","sources":["../../../../../packages/@ng-atomic/components/src/lib/templates/smart-index/smart-index.template.ts","../../../../../packages/@ng-atomic/components/src/lib/templates/smart-index/smart-index.template.html","../../../../../packages/@ng-atomic/components/src/lib/templates/smart-index/ng-atomic-components-templates-smart-index.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\nimport { LegacyPageEvent as PageEvent } from '@angular/material/legacy-paginator';\nimport { CommonModule } from '@angular/common';\nimport { AutoLayoutFrame } from '@ng-atomic/components/frames/auto-layout';\nimport { ScrollFrame } from '@ng-atomic/components/frames/scroll';\nimport { HeaderMolecule } from '@ng-atomic/components/molecules/header';\nimport { SmartTableOrganism } from '@ng-atomic/components/organisms/smart-table';\nimport { SmartListOrganism, ActionId as ListActionId } from '@ng-atomic/components/organisms/smart-list';\nimport { NavigatorOrganism } from '@ng-atomic/components/organisms/navigator';\nimport { PaginatorOrganism } from '@ng-atomic/components/organisms/paginator';\nimport { Action } from '@ng-atomic/common/models';\nimport { FormControl, FormGroup } from '@angular/forms';\nimport { GridToolbarOrganism } from '@ng-atomic/components/organisms/grid-toolbar';\nimport { FiltersSectionOrganism } from '@ng-atomic/components/organisms/filters-section';\nimport { DividerFrame } from '@ng-atomic/components/frames/divider';\n\nexport enum ActionId {\n BACK = '[@ng-atomic/components/templates/smart-index] Back',\n TABLE_HEADER_CLICK = '[@ng-atomic/components/templates/smart-index] Table Header Click',\n ITEM_CLICK = '[@ng-atomic/components/templates/smart-index] Item Click',\n}\n\n@Component({\n standalone: true,\n imports: [\n CommonModule,\n AutoLayoutFrame,\n ScrollFrame,\n DividerFrame,\n GridToolbarOrganism,\n PaginatorOrganism,\n SmartTableOrganism,\n SmartListOrganism,\n NavigatorOrganism,\n FiltersSectionOrganism,\n HeaderMolecule,\n ],\n selector: 'templates-smart-index',\n templateUrl: './smart-index.template.html',\n styleUrls: ['./smart-index.template.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { class: 'template' },\n})\nexport class SmartIndexTemplate<T> {\n protected ActionId = ActionId;\n\n @Input()\n gridToolbarActions: Action[] = [];\n\n @Input()\n tableChildrenKey: string = '';\n\n @Input()\n form = new FormGroup({\n pageIndex: new FormControl(0),\n pageSize: new FormControl(0),\n length: new FormControl(0),\n });\n\n @Input()\n queryControl = new FormControl<string>('');\n\n @Input()\n title: string = '';\n\n @Input()\n description?: string;\n\n @Input()\n items: T[] = [];\n\n @Input()\n itemActions: (item: T) => Action[] = () => [];\n\n @Input()\n navStartActions: Action[] = [{ id: ActionId.BACK, icon: 'arrow_back' }];\n\n @Input()\n navEndActions: Action[] = [];\n\n @Input()\n properties: (keyof T)[] = [];\n\n @Input()\n selectedIdSet = new Set<string>();\n\n @Input()\n sortKey?: string;\n\n @Input()\n sortOrder?: string;\n\n @Input()\n page?: PageEvent = {\n pageIndex: 0,\n pageSize: 20,\n length: 100,\n };\n\n @Input()\n pageSizeOptions: number[] = [5, 10, 25, 100];\n\n @Input()\n queryPlaceholder = '';\n\n @Input()\n device: 'sp' | 'tablet' | 'pc' = 'sp';\n\n @Output()\n action = new EventEmitter<Action>();\n\n @Output()\n backButtonClick = new EventEmitter();\n\n @Output()\n checkboxClick = new EventEmitter<T>();\n\n @Output()\n pageChange = new EventEmitter<PageEvent>();\n\n onAction(action: Action): void {\n switch(action.id) {\n case ListActionId.CLICK_ITEM:\n return this.action.emit({...action, id: ActionId.ITEM_CLICK});\n default: return this.action.emit(action);\n }\n }\n}\n","<frames-scroll>\n <organisms-navigator\n [startActions]=\"navStartActions\"\n [endActions]=\"navEndActions\"\n (action)=\"onAction($event)\"\n navigator\n >\n <molecules-header [title]=\"title\" [description]=\"description\"></molecules-header>\n </organisms-navigator>\n <frames-auto-layout vertical contents [ngSwitch]=\"device\">\n <ng-container *ngSwitchCase=\"'sp'\">\n <organisms-smart-list\n [items]=\"items\"\n (action)=\"onAction($event)\"\n ></organisms-smart-list>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <frames-divider>\n <ng-content first select=\"[dashboard]\"></ng-content>\n <div style=\"display: flex; flex-direction: column; width: 100%; height: 100%;\" second>\n <organisms-grid-toolbar\n [actions]=\"gridToolbarActions\"\n (action)=\"onAction($event)\"\n ></organisms-grid-toolbar>\n <organisms-smart-table\n [items]=\"items\"\n [itemActions]=\"itemActions\"\n [columns]=\"properties\"\n [selectedIdSet]=\"selectedIdSet\"\n [sortKey]=\"sortKey\"\n [sortOrder]=\"sortOrder\"\n [childrenKey]=\"tableChildrenKey\"\n (action)=\"onAction($event)\"\n (checkboxClick)=\"checkboxClick.emit($event)\"\n (headerClick)=\"onAction({id: ActionId.TABLE_HEADER_CLICK, payload: $event})\"\n ></organisms-smart-table>\n <organisms-paginator\n *ngIf=\"page\"\n [control]=\"queryControl\"\n [form]=\"form\"\n [page]=\"page\"\n [pageSizeOptions]=\"pageSizeOptions\"\n [placeholder]=\"queryPlaceholder\"\n (pageChange)=\"pageChange.emit($event)\"\n ></organisms-paginator>\n </div>\n </frames-divider>\n \n </ng-container>\n </frames-auto-layout>\n</frames-scroll>","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["ListActionId"],"mappings":"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"}
1
+ {"version":3,"file":"ng-atomic-components-templates-smart-index.mjs","sources":["../../../../../packages/@ng-atomic/components/src/lib/templates/smart-index/smart-index.template.ts","../../../../../packages/@ng-atomic/components/src/lib/templates/smart-index/smart-index.template.html","../../../../../packages/@ng-atomic/components/src/lib/templates/smart-index/ng-atomic-components-templates-smart-index.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, Directive, EventEmitter, Input, OnChanges, Output, SimpleChanges, inject } from '@angular/core';\nimport { LegacyPageEvent as PageEvent } from '@angular/material/legacy-paginator';\nimport { CommonModule } from '@angular/common';\nimport { AutoLayoutFrame } from '@ng-atomic/components/frames/auto-layout';\nimport { ScrollFrame } from '@ng-atomic/components/frames/scroll';\nimport { HeaderMolecule } from '@ng-atomic/components/molecules/header';\nimport { SmartTableOrganism } from '@ng-atomic/components/organisms/smart-table';\nimport { SmartListOrganism, ActionId as ListActionId } from '@ng-atomic/components/organisms/smart-list';\nimport { NavigatorOrganism } from '@ng-atomic/components/organisms/navigator';\nimport { PaginatorOrganism } from '@ng-atomic/components/organisms/paginator';\nimport { Action } from '@ng-atomic/common/models';\nimport { FormControl, FormGroup } from '@angular/forms';\nimport { GridToolbarOrganism } from '@ng-atomic/components/organisms/grid-toolbar';\nimport { FiltersSectionOrganism } from '@ng-atomic/components/organisms/filters-section';\nimport { DividerFrame } from '@ng-atomic/components/frames/divider';\n\nexport enum ActionId {\n BACK = '[@ng-atomic/components/templates/smart-index] Back',\n TABLE_HEADER_CLICK = '[@ng-atomic/components/templates/smart-index] Table Header Click',\n ITEM_CLICK = '[@ng-atomic/components/templates/smart-index] Item Click',\n CHECKBOX_CLICK = '[@ng-atomic/components/templates/smart-index] Check Item',\n}\n\n\n@Directive({ standalone: true })\nexport class NgAtomicDirective {\n @Output()\n action = new EventEmitter<Action>();\n\n ngOnInit() {\n this.action.subscribe(action => {\n console.debug('NgAtomicDirective.action', action);\n });\n }\n\n onAction(action: Action): void {\n switch(action.id) {\n case ListActionId.CLICK_ITEM:\n return this.action.emit({...action, id: ActionId.ITEM_CLICK});\n default: return this.action.emit(action);\n }\n }\n\n dispatch(action: Action): void {\n this.action.emit(action);\n }\n}\n\n@Component({\n standalone: true,\n imports: [\n CommonModule,\n AutoLayoutFrame,\n ScrollFrame,\n DividerFrame,\n GridToolbarOrganism,\n PaginatorOrganism,\n SmartTableOrganism,\n SmartListOrganism,\n NavigatorOrganism,\n FiltersSectionOrganism,\n HeaderMolecule,\n ],\n selector: 'templates-smart-index',\n templateUrl: './smart-index.template.html',\n styleUrls: ['./smart-index.template.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { class: 'template' },\n hostDirectives: [\n {\n directive: NgAtomicDirective,\n outputs: ['action'],\n }\n ],\n})\nexport class SmartIndexTemplate<T> implements OnChanges {\n static ActionId = ActionId;\n\n protected ngAtomic = inject(NgAtomicDirective);\n\n @Input()\n gridToolbarActions: Action[] = [];\n\n @Input()\n tableChildrenKey: string = '';\n\n @Input()\n form = new FormGroup({\n pageIndex: new FormControl(0),\n pageSize: new FormControl(0),\n length: new FormControl(0),\n });\n\n @Input()\n queryControl = new FormControl<string>('');\n\n @Input()\n title: string = '';\n\n @Input()\n description?: string;\n\n @Input()\n items: T[] = [];\n\n @Input()\n itemActions: (item: T) => Action[] = () => [];\n\n @Input()\n navStartActions: Action[] = [{ id: ActionId.BACK, icon: 'arrow_back' }];\n\n @Input()\n navEndActions: Action[] = [];\n\n @Input()\n properties: (keyof T)[] = [];\n\n @Input()\n selectedIdSet = new Set<string>();\n\n @Input()\n sortKey?: string;\n\n @Input()\n sortOrder?: string;\n\n @Input()\n pageSizeOptions: number[] = [5, 10, 25, 100];\n\n @Input()\n queryPlaceholder = '';\n\n @Input()\n device: 'sp' | 'tablet' | 'pc' = 'sp';\n\n @Output()\n backButtonClick = new EventEmitter();\n\n @Output()\n pageChange = new EventEmitter<PageEvent>();\n\n onCheckboxClickItem(item: T) {\n console.debug('onCheckboxClickItem', item);\n this.ngAtomic.action.emit({\n id: ActionId.CHECKBOX_CLICK,\n payload: item,\n });\n }\n\n ngOnChanges(changes: SimpleChanges) {\n console.debug('changed!', changes);\n }\n}\n","<frames-scroll>\n <organisms-navigator\n [startActions]=\"navStartActions\"\n [endActions]=\"navEndActions\"\n (action)=\"ngAtomic.onAction($event)\"\n navigator\n >\n <molecules-header [title]=\"title\" [description]=\"description\"></molecules-header>\n </organisms-navigator>\n <frames-auto-layout vertical contents [ngSwitch]=\"device\">\n <ng-container *ngSwitchCase=\"'sp'\">\n <organisms-smart-list\n [items]=\"items\"\n (action)=\"ngAtomic.onAction($event)\"\n ></organisms-smart-list>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <frames-divider>\n <ng-content first select=\"[dashboard]\"></ng-content>\n <div style=\"display: flex; flex-direction: column; width: 100%; height: 100%;\" second>\n <organisms-grid-toolbar\n [actions]=\"gridToolbarActions\"\n (action)=\"ngAtomic.onAction($event)\"\n ></organisms-grid-toolbar>\n <organisms-smart-table\n [items]=\"items\"\n [itemActions]=\"itemActions\"\n [columns]=\"properties\"\n [selectedIdSet]=\"selectedIdSet\"\n [sortKey]=\"sortKey\"\n [sortOrder]=\"sortOrder\"\n [childrenKey]=\"tableChildrenKey\"\n (action)=\"ngAtomic.onAction($event)\"\n (checkboxClick)=\"onCheckboxClickItem($event)\"\n (headerClick)=\"ngAtomic.onAction({id: ActionId.TABLE_HEADER_CLICK, payload: $event})\"\n ></organisms-smart-table>\n <organisms-paginator\n [form]=\"form\"\n [pageSizeOptions]=\"pageSizeOptions\"\n [placeholder]=\"queryPlaceholder\"\n (pageChange)=\"pageChange.emit($event)\"\n ></organisms-paginator>\n </div>\n </frames-divider>\n \n </ng-container>\n </frames-auto-layout>\n</frames-scroll>","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["ListActionId"],"mappings":"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"}
@@ -1,10 +1,14 @@
1
- import { ElementRef } from '@angular/core';
1
+ import { ElementRef, NgZone, OnChanges, SimpleChanges } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
- export declare class MermaidSectionOrganism {
4
- view: ElementRef;
3
+ export declare class MermaidSectionOrganism implements OnChanges {
4
+ private ngZone;
5
+ constructor(ngZone: NgZone);
6
+ view: ElementRef<HTMLElement>;
5
7
  mermaid: string;
8
+ ngOnInit(): void;
6
9
  ngAfterViewInit(): void;
7
- ngOnDestroy(): void;
10
+ ngOnChanges(changes: SimpleChanges): void;
11
+ private renderMermaid;
8
12
  static ɵfac: i0.ɵɵFactoryDeclaration<MermaidSectionOrganism, never>;
9
13
  static ɵcmp: i0.ɵɵComponentDeclaration<MermaidSectionOrganism, "organisms-mermaid-section", never, { "mermaid": "mermaid"; }, {}, never, never, true, never>;
10
14
  }
@@ -0,0 +1 @@
1
+ export * from './message-input-section.organism';
@@ -0,0 +1,14 @@
1
+ import { EventEmitter } from '@angular/core';
2
+ import { FormControl } from '@angular/forms';
3
+ import { Action } from '@ng-atomic/common/models';
4
+ import * as i0 from "@angular/core";
5
+ export declare enum ActionId {
6
+ SEND = "send"
7
+ }
8
+ export declare class MessageInputSectionOrganism {
9
+ control: FormControl<string>;
10
+ action: EventEmitter<Action<string>>;
11
+ protected onSendButtonClick(): void;
12
+ static ɵfac: i0.ɵɵFactoryDeclaration<MessageInputSectionOrganism, never>;
13
+ static ɵcmp: i0.ɵɵComponentDeclaration<MessageInputSectionOrganism, "organisms-message-input-section", never, { "control": "control"; }, { "action": "action"; }, never, never, true, never>;
14
+ }
@@ -0,0 +1 @@
1
+ export * from './messages-section.organism';
@@ -0,0 +1,9 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class MessagesSectionOrganism {
3
+ messages: {
4
+ role: string;
5
+ content: string;
6
+ }[];
7
+ static ɵfac: i0.ɵɵFactoryDeclaration<MessagesSectionOrganism, never>;
8
+ static ɵcmp: i0.ɵɵComponentDeclaration<MessagesSectionOrganism, "organisms-messages-section", never, { "messages": "messages"; }, {}, never, never, true, never>;
9
+ }
@@ -1,19 +1,19 @@
1
- import { EventEmitter } from '@angular/core';
2
1
  import { LegacyPageEvent as PageEvent } from '@angular/material/legacy-paginator';
3
2
  import { FormControl, FormGroup } from '@angular/forms';
4
3
  import * as i0 from "@angular/core";
5
4
  export declare class PaginatorOrganism {
6
- control: FormControl<string>;
7
5
  form: FormGroup<{
8
6
  pageIndex: FormControl<number>;
9
7
  pageSize: FormControl<number>;
10
8
  length: FormControl<number>;
11
9
  }>;
12
- placeholder: string;
13
- page: PageEvent;
14
10
  pageSizeOptions: number[];
15
- pageChange: EventEmitter<PageEvent>;
11
+ protected get formValue$(): import("rxjs").Observable<{
12
+ pageIndex: number;
13
+ pageSize: number;
14
+ length: number;
15
+ }>;
16
16
  protected onPageChange(page: PageEvent): void;
17
17
  static ɵfac: i0.ɵɵFactoryDeclaration<PaginatorOrganism, never>;
18
- static ɵcmp: i0.ɵɵComponentDeclaration<PaginatorOrganism, "organisms-paginator", never, { "control": "control"; "form": "form"; "placeholder": "placeholder"; "page": "page"; "pageSizeOptions": "pageSizeOptions"; }, { "pageChange": "pageChange"; }, never, never, true, never>;
18
+ static ɵcmp: i0.ɵɵComponentDeclaration<PaginatorOrganism, "organisms-paginator", never, { "form": "form"; "pageSizeOptions": "pageSizeOptions"; }, {}, never, never, true, never>;
19
19
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ng-atomic/components",
3
- "version": "5.8.1",
3
+ "version": "5.10.0",
4
4
  "license": "MIT",
5
5
  "module": "fesm2015/ng-atomic-components.mjs",
6
6
  "es2020": "fesm2020/ng-atomic-components.mjs",
@@ -308,6 +308,22 @@
308
308
  "node": "./fesm2015/ng-atomic-components-organisms-mermaid-section.mjs",
309
309
  "default": "./fesm2020/ng-atomic-components-organisms-mermaid-section.mjs"
310
310
  },
311
+ "./organisms/message-input-section": {
312
+ "types": "./organisms/message-input-section/index.d.ts",
313
+ "esm2020": "./esm2020/organisms/message-input-section/ng-atomic-components-organisms-message-input-section.mjs",
314
+ "es2020": "./fesm2020/ng-atomic-components-organisms-message-input-section.mjs",
315
+ "es2015": "./fesm2015/ng-atomic-components-organisms-message-input-section.mjs",
316
+ "node": "./fesm2015/ng-atomic-components-organisms-message-input-section.mjs",
317
+ "default": "./fesm2020/ng-atomic-components-organisms-message-input-section.mjs"
318
+ },
319
+ "./organisms/messages-section": {
320
+ "types": "./organisms/messages-section/index.d.ts",
321
+ "esm2020": "./esm2020/organisms/messages-section/ng-atomic-components-organisms-messages-section.mjs",
322
+ "es2020": "./fesm2020/ng-atomic-components-organisms-messages-section.mjs",
323
+ "es2015": "./fesm2015/ng-atomic-components-organisms-messages-section.mjs",
324
+ "node": "./fesm2015/ng-atomic-components-organisms-messages-section.mjs",
325
+ "default": "./fesm2020/ng-atomic-components-organisms-messages-section.mjs"
326
+ },
311
327
  "./organisms/navigation-list": {
312
328
  "types": "./organisms/navigation-list/index.d.ts",
313
329
  "esm2020": "./esm2020/organisms/navigation-list/ng-atomic-components-organisms-navigation-list.mjs",
@@ -428,6 +444,14 @@
428
444
  "node": "./fesm2015/ng-atomic-components-templates-menu.mjs",
429
445
  "default": "./fesm2020/ng-atomic-components-templates-menu.mjs"
430
446
  },
447
+ "./templates/messages": {
448
+ "types": "./templates/messages/index.d.ts",
449
+ "esm2020": "./esm2020/templates/messages/ng-atomic-components-templates-messages.mjs",
450
+ "es2020": "./fesm2020/ng-atomic-components-templates-messages.mjs",
451
+ "es2015": "./fesm2015/ng-atomic-components-templates-messages.mjs",
452
+ "node": "./fesm2015/ng-atomic-components-templates-messages.mjs",
453
+ "default": "./fesm2020/ng-atomic-components-templates-messages.mjs"
454
+ },
431
455
  "./templates/smart-crud": {
432
456
  "types": "./templates/smart-crud/index.d.ts",
433
457
  "esm2020": "./esm2020/templates/smart-crud/ng-atomic-components-templates-smart-crud.mjs",
@@ -454,13 +478,13 @@
454
478
  "@storybook/theming": "^6.4.10",
455
479
  "@angular/core": "^15.0.0",
456
480
  "@angular/platform-browser": "^15.0.0",
457
- "@ng-atomic/elements": "5.8.1",
481
+ "@ng-atomic/elements": "5.10.0",
458
482
  "@angular/cdk": "^15.0.0",
459
483
  "@angular/material": "^15.0.0",
460
484
  "@angular/forms": "^15.0.0",
461
485
  "rxjs": "^7.0.0",
462
- "@ng-atomic/common": "5.8.1",
463
- "@ng-atomic/storybook": "5.8.1",
486
+ "@ng-atomic/common": "5.10.0",
487
+ "@ng-atomic/storybook": "5.10.0",
464
488
  "@storybook/angular": "6.5.13",
465
489
  "@codemirror/state": "6.2.0",
466
490
  "codemirror": "^6.0.1",
@@ -0,0 +1 @@
1
+ export * from './messages.template';
@@ -0,0 +1,21 @@
1
+ import { EventEmitter } from '@angular/core';
2
+ import { FormGroup } from '@angular/forms';
3
+ import { FormControl } from '@angular/forms';
4
+ import { Action } from '@ng-atomic/common/models';
5
+ import * as i0 from "@angular/core";
6
+ export declare class MessagesTemplate {
7
+ navStartActions: Action[];
8
+ navEndActions: Action[];
9
+ messages: {
10
+ role: string;
11
+ content: string;
12
+ }[];
13
+ form: FormGroup<{
14
+ name: FormControl<string>;
15
+ description: FormControl<string>;
16
+ message: FormControl<string>;
17
+ }>;
18
+ action: EventEmitter<Action<any>>;
19
+ static ɵfac: i0.ɵɵFactoryDeclaration<MessagesTemplate, never>;
20
+ static ɵcmp: i0.ɵɵComponentDeclaration<MessagesTemplate, "templates-messages", never, { "navStartActions": "navStartActions"; "navEndActions": "navEndActions"; "messages": "messages"; "form": "form"; }, { "action": "action"; }, never, never, true, never>;
21
+ }
@@ -1,4 +1,4 @@
1
- import { EventEmitter } from '@angular/core';
1
+ import { EventEmitter, OnChanges, SimpleChanges } from '@angular/core';
2
2
  import { LegacyPageEvent as PageEvent } from '@angular/material/legacy-paginator';
3
3
  import { Action } from '@ng-atomic/common/models';
4
4
  import { FormControl, FormGroup } from '@angular/forms';
@@ -6,10 +6,20 @@ import * as i0 from "@angular/core";
6
6
  export declare enum ActionId {
7
7
  BACK = "[@ng-atomic/components/templates/smart-index] Back",
8
8
  TABLE_HEADER_CLICK = "[@ng-atomic/components/templates/smart-index] Table Header Click",
9
- ITEM_CLICK = "[@ng-atomic/components/templates/smart-index] Item Click"
9
+ ITEM_CLICK = "[@ng-atomic/components/templates/smart-index] Item Click",
10
+ CHECKBOX_CLICK = "[@ng-atomic/components/templates/smart-index] Check Item"
10
11
  }
11
- export declare class SmartIndexTemplate<T> {
12
- protected ActionId: typeof ActionId;
12
+ export declare class NgAtomicDirective {
13
+ action: EventEmitter<Action<any>>;
14
+ ngOnInit(): void;
15
+ onAction(action: Action): void;
16
+ dispatch(action: Action): void;
17
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgAtomicDirective, never>;
18
+ static ɵdir: i0.ɵɵDirectiveDeclaration<NgAtomicDirective, never, never, {}, { "action": "action"; }, never, never, true, never>;
19
+ }
20
+ export declare class SmartIndexTemplate<T> implements OnChanges {
21
+ static ActionId: typeof ActionId;
22
+ protected ngAtomic: NgAtomicDirective;
13
23
  gridToolbarActions: Action[];
14
24
  tableChildrenKey: string;
15
25
  form: FormGroup<{
@@ -28,15 +38,13 @@ export declare class SmartIndexTemplate<T> {
28
38
  selectedIdSet: Set<string>;
29
39
  sortKey?: string;
30
40
  sortOrder?: string;
31
- page?: PageEvent;
32
41
  pageSizeOptions: number[];
33
42
  queryPlaceholder: string;
34
43
  device: 'sp' | 'tablet' | 'pc';
35
- action: EventEmitter<Action<any>>;
36
44
  backButtonClick: EventEmitter<any>;
37
- checkboxClick: EventEmitter<T>;
38
45
  pageChange: EventEmitter<PageEvent>;
39
- onAction(action: Action): void;
46
+ onCheckboxClickItem(item: T): void;
47
+ ngOnChanges(changes: SimpleChanges): void;
40
48
  static ɵfac: i0.ɵɵFactoryDeclaration<SmartIndexTemplate<any>, never>;
41
- static ɵcmp: i0.ɵɵComponentDeclaration<SmartIndexTemplate<any>, "templates-smart-index", never, { "gridToolbarActions": "gridToolbarActions"; "tableChildrenKey": "tableChildrenKey"; "form": "form"; "queryControl": "queryControl"; "title": "title"; "description": "description"; "items": "items"; "itemActions": "itemActions"; "navStartActions": "navStartActions"; "navEndActions": "navEndActions"; "properties": "properties"; "selectedIdSet": "selectedIdSet"; "sortKey": "sortKey"; "sortOrder": "sortOrder"; "page": "page"; "pageSizeOptions": "pageSizeOptions"; "queryPlaceholder": "queryPlaceholder"; "device": "device"; }, { "action": "action"; "backButtonClick": "backButtonClick"; "checkboxClick": "checkboxClick"; "pageChange": "pageChange"; }, never, ["[dashboard]"], true, never>;
49
+ static ɵcmp: i0.ɵɵComponentDeclaration<SmartIndexTemplate<any>, "templates-smart-index", never, { "gridToolbarActions": "gridToolbarActions"; "tableChildrenKey": "tableChildrenKey"; "form": "form"; "queryControl": "queryControl"; "title": "title"; "description": "description"; "items": "items"; "itemActions": "itemActions"; "navStartActions": "navStartActions"; "navEndActions": "navEndActions"; "properties": "properties"; "selectedIdSet": "selectedIdSet"; "sortKey": "sortKey"; "sortOrder": "sortOrder"; "pageSizeOptions": "pageSizeOptions"; "queryPlaceholder": "queryPlaceholder"; "device": "device"; }, { "backButtonClick": "backButtonClick"; "pageChange": "pageChange"; }, never, ["[dashboard]"], true, [{ directive: typeof NgAtomicDirective; inputs: {}; outputs: { "action": "action"; }; }]>;
42
50
  }