@operato/dataset 2.0.0-alpha.14 → 2.0.0-alpha.140

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 (104) hide show
  1. package/CHANGELOG.md +755 -0
  2. package/demo/favicon.ico +0 -0
  3. package/demo/index.html +349 -0
  4. package/demo/ox-data-ooc-brief-view-test.html +349 -0
  5. package/dist/src/grist-editor/ox-grist-editor-data-item-spec.d.ts +1 -1
  6. package/dist/src/grist-editor/ox-popup-data-item-spec.d.ts +2 -1
  7. package/dist/src/grist-editor/ox-popup-data-item-spec.js +7 -8
  8. package/dist/src/grist-editor/ox-popup-data-item-spec.js.map +1 -1
  9. package/dist/src/ox-data-entry-form.js +49 -37
  10. package/dist/src/ox-data-entry-form.js.map +1 -1
  11. package/dist/src/ox-data-entry-subgroup-form.d.ts +1 -1
  12. package/dist/src/ox-data-entry-subgroup-form.js +2 -0
  13. package/dist/src/ox-data-entry-subgroup-form.js.map +1 -1
  14. package/dist/src/ox-data-entry-view.d.ts +3 -3
  15. package/dist/src/ox-data-entry-view.js +17 -7
  16. package/dist/src/ox-data-entry-view.js.map +1 -1
  17. package/dist/src/ox-data-item-spec.d.ts +1 -1
  18. package/dist/src/ox-data-item-spec.js +7 -7
  19. package/dist/src/ox-data-item-spec.js.map +1 -1
  20. package/dist/src/ox-data-ooc-badge.d.ts +2 -2
  21. package/dist/src/ox-data-ooc-badge.js +8 -4
  22. package/dist/src/ox-data-ooc-badge.js.map +1 -1
  23. package/dist/src/ox-data-ooc-brief-view.d.ts +2 -2
  24. package/dist/src/ox-data-ooc-brief-view.js +1 -2
  25. package/dist/src/ox-data-ooc-brief-view.js.map +1 -1
  26. package/dist/src/ox-data-ooc-correction-part.d.ts +2 -2
  27. package/dist/src/ox-data-ooc-correction-part.js +5 -6
  28. package/dist/src/ox-data-ooc-correction-part.js.map +1 -1
  29. package/dist/src/ox-data-ooc-history.d.ts +2 -2
  30. package/dist/src/ox-data-ooc-history.js +4 -4
  31. package/dist/src/ox-data-ooc-history.js.map +1 -1
  32. package/dist/src/ox-data-ooc-view.d.ts +2 -2
  33. package/dist/src/ox-data-ooc-view.js +1 -2
  34. package/dist/src/ox-data-ooc-view.js.map +1 -1
  35. package/dist/src/ox-data-sample-subgroup-view.d.ts +1 -1
  36. package/dist/src/ox-data-sample-subgroup-view.js +9 -9
  37. package/dist/src/ox-data-sample-subgroup-view.js.map +1 -1
  38. package/dist/src/ox-data-sample-view.d.ts +1 -1
  39. package/dist/src/ox-data-sample-view.js +52 -35
  40. package/dist/src/ox-data-sample-view.js.map +1 -1
  41. package/dist/src/ox-data-summary-view.d.ts +1 -1
  42. package/dist/src/ox-data-summary-view.js +10 -4
  43. package/dist/src/ox-data-summary-view.js.map +1 -1
  44. package/dist/src/types.d.ts +12 -9
  45. package/dist/src/types.js.map +1 -1
  46. package/dist/src/usecase/ccp/ox-input-ccp-limits.d.ts +1 -1
  47. package/dist/src/usecase/qc/ox-input-qc-limits.d.ts +1 -1
  48. package/dist/src/usecase/spc/index.d.ts +1 -0
  49. package/dist/src/usecase/spc/index.js +8 -0
  50. package/dist/src/usecase/spc/index.js.map +1 -0
  51. package/dist/src/usecase/spc/ox-data-use-case-spc.d.ts +7 -0
  52. package/dist/src/usecase/spc/ox-data-use-case-spc.js +102 -0
  53. package/dist/src/usecase/spc/ox-data-use-case-spc.js.map +1 -0
  54. package/dist/src/usecase/spc/ox-input-spc-limits.d.ts +44 -0
  55. package/dist/src/usecase/spc/ox-input-spc-limits.js +193 -0
  56. package/dist/src/usecase/spc/ox-input-spc-limits.js.map +1 -0
  57. package/dist/src/usecase/spc/ox-property-editor-spc-limits.d.ts +6 -0
  58. package/dist/src/usecase/spc/ox-property-editor-spc-limits.js +24 -0
  59. package/dist/src/usecase/spc/ox-property-editor-spc-limits.js.map +1 -0
  60. package/dist/stories/ox-data-entry-form.stories.d.ts +1 -1
  61. package/dist/stories/ox-data-entry-form.stories.js +73 -17
  62. package/dist/stories/ox-data-entry-form.stories.js.map +1 -1
  63. package/dist/stories/ox-data-item-spec.stories.d.ts +1 -1
  64. package/dist/stories/ox-data-item-spec.stories.js +14 -2
  65. package/dist/stories/ox-data-item-spec.stories.js.map +1 -1
  66. package/dist/stories/ox-data-ooc-brief-view.stories.d.ts +1 -1
  67. package/dist/stories/ox-data-ooc-brief-view.stories.js +25 -13
  68. package/dist/stories/ox-data-ooc-brief-view.stories.js.map +1 -1
  69. package/dist/stories/ox-data-ooc-view.stories.d.ts +1 -1
  70. package/dist/stories/ox-data-ooc-view.stories.js +25 -13
  71. package/dist/stories/ox-data-ooc-view.stories.js.map +1 -1
  72. package/dist/stories/ox-data-sample-view.stories.d.ts +1 -1
  73. package/dist/stories/ox-data-sample-view.stories.js +21 -9
  74. package/dist/stories/ox-data-sample-view.stories.js.map +1 -1
  75. package/dist/stories/ox-grist-editor-data-item-spec.stories.d.ts +1 -1
  76. package/dist/stories/ox-grist-editor-data-item-spec.stories.js +66 -54
  77. package/dist/stories/ox-grist-editor-data-item-spec.stories.js.map +1 -1
  78. package/dist/tsconfig.tsbuildinfo +1 -1
  79. package/package.json +24 -26
  80. package/src/grist-editor/ox-popup-data-item-spec.ts +7 -8
  81. package/src/ox-data-entry-form.ts +66 -47
  82. package/src/ox-data-entry-subgroup-form.ts +2 -0
  83. package/src/ox-data-entry-view.ts +18 -7
  84. package/src/ox-data-item-spec.ts +9 -8
  85. package/src/ox-data-ooc-badge.ts +8 -4
  86. package/src/ox-data-ooc-brief-view.ts +1 -2
  87. package/src/ox-data-ooc-correction-part.ts +5 -6
  88. package/src/ox-data-ooc-history.ts +4 -4
  89. package/src/ox-data-ooc-view.ts +1 -2
  90. package/src/ox-data-sample-subgroup-view.ts +16 -17
  91. package/src/ox-data-sample-view.ts +52 -35
  92. package/src/ox-data-summary-view.ts +10 -4
  93. package/src/types.ts +31 -29
  94. package/src/usecase/spc/index.ts +10 -0
  95. package/src/usecase/spc/ox-data-use-case-spc.ts +147 -0
  96. package/src/usecase/spc/ox-input-spc-limits.ts +182 -0
  97. package/src/usecase/spc/ox-property-editor-spc-limits.ts +23 -0
  98. package/stories/ox-data-entry-form.stories.ts +78 -22
  99. package/stories/ox-data-item-spec.stories.ts +14 -2
  100. package/stories/ox-data-ooc-brief-view.stories.ts +26 -15
  101. package/stories/ox-data-ooc-view.stories.ts +26 -15
  102. package/stories/ox-data-sample-view.stories.ts +22 -11
  103. package/stories/ox-grist-editor-data-item-spec.stories.ts +67 -56
  104. package/themes/grist-theme.css +2 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ox-input-spc-limits.js","sourceRoot":"","sources":["../../../../src/usecase/spc/ox-input-spc-limits.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @license Copyright © HatioLab Inc. All rights reserved.\n */\n\nimport { css, html, LitElement } from 'lit'\nimport { customElement, property, query, queryAll } from 'lit/decorators.js'\n\nimport { i18next } from '@operato/i18n'\n\nexport enum DataItemType {\n number = 'number',\n text = 'text',\n boolean = 'boolean',\n select = 'select',\n file = 'file'\n}\n\nexport type SpcLimitValue = {\n minimum?: number\n maximum?: number\n acceptables?: string[] | boolean[]\n}\n\n/**\n element for SPC limits\n \n Example:\n \n <ox-input-spc-limits\n .value=${value}\n .type=${type}>\n </ox-input-spc-limits>\n */\n@customElement('ox-input-spc-limits')\nexport class OxInputSpcLimits extends LitElement {\n static styles = css`\n :host {\n display: flex;\n flex-direction: column;\n align-content: center;\n }\n\n label {\n margin: 0 var(--margin-default) var(--margin-default) 0;\n }\n\n label div > * {\n vertical-align: middle;\n }\n\n button {\n width: 20px;\n text-align: center;\n }\n\n div[name],\n input[type='checkbox'] + span {\n display: inline-block;\n font: var(--label-font);\n color: var(--label-color);\n text-align: right;\n }\n input,\n select {\n border: var(--input-field-border);\n border-radius: var(--input-field-border-radius);\n padding: var(--input-field-padding);\n font: var(--input-field-font);\n }\n\n input[type='checkbox'] {\n width: initial;\n }\n input[checked] + span {\n font-weight: bold;\n }\n [unit],\n [value] {\n display: inline-block;\n opacity: 0.7;\n font: var(--form-sublabel-font);\n }\n [properties] {\n font: var(--input-field-font);\n color: var(--label-color);\n }\n `\n\n @property({ type: Object }) value: SpcLimitValue = {}\n @property({ type: String }) type: DataItemType = DataItemType.number\n @property({ type: String }) unit?: string\n @property({ type: Object }) options: { options?: { text: string; value: string }[] } = {}\n\n @query('[name=minimum]') minimum!: HTMLInputElement\n @query('[name=maximum]') maximum!: HTMLInputElement\n @queryAll('[type=checkbox]:checked') checkedAll!: NodeListOf<HTMLInputElement>\n\n firstUpdated() {\n this.renderRoot.addEventListener('change', this.onChange.bind(this))\n }\n\n render() {\n const { minimum, maximum, acceptables = [] } = this.value || {}\n\n return html`\n <div>\n ${this.type === DataItemType.number\n ? html`\n <label>\n <div name>${i18next.t('text.minimum value')}</div>\n <input type=\"number\" name=\"minimum\" .value=${String(minimum)} />\n <div unit>${this.unit}</div>\n </select>\n </label>\n <label>\n <div name>${i18next.t('text.maximum value')}</div>\n <input type=\"number\" name=\"maximum\" .value=${String(maximum)} />\n <div unit>${this.unit}</div>\n </label>\n `\n : this.type === DataItemType.select\n ? html`\n <!-- <div>Acceptables</div> -->\n ${this.options?.options?.map(\n option => html`\n <div>\n <input\n type=\"checkbox\"\n data-value=${option.value}\n ?checked=${(acceptables as string[]).includes(option.value)}\n />\n <span>${option.text}</span>\n <span value>(${option.value})</span>\n </div>\n `\n )}\n `\n : this.type === DataItemType.boolean\n ? html`\n <div>\n <input type=\"checkbox\" data-value=${true} ?checked=${(acceptables as boolean[]).includes(true)} />\n <span value>true</span>\n </div>\n <div>\n <input type=\"checkbox\" data-value=${false} ?checked=${(acceptables as boolean[]).includes(false)} />\n <span value>false</span>\n </div>\n `\n : html` <div properties>${i18next.t('text.no properties to set')}</div> `}\n </div>\n `\n }\n\n private onChange(e: Event) {\n if (this.type === DataItemType.number) {\n this.value = {\n minimum: this.minimum.valueAsNumber,\n maximum: this.maximum.valueAsNumber\n }\n } else if (this.type === DataItemType.select) {\n this.value = {\n acceptables: Array.from(this.checkedAll).map(checked => {\n const x = checked.getAttribute('data-value')!\n console.log(x)\n return x\n })\n }\n } else if (this.type === DataItemType.boolean) {\n this.value = {\n acceptables: Array.from(this.checkedAll).map(checked => {\n const x = checked.getAttribute('data-value')! === 'true'\n console.log(x)\n return x\n })\n }\n } else {\n this.value = {}\n }\n\n this.dispatchEvent(new CustomEvent('change', { bubbles: true, composed: true, detail: this.value }))\n }\n}\n"]}
@@ -0,0 +1,6 @@
1
+ import './ox-input-spc-limits.js';
2
+ import { TemplateResult } from 'lit';
3
+ import { OxPropertyEditor, PropertySpec } from '@operato/property-editor';
4
+ export declare class OxPropertyEditorSpcLimits extends OxPropertyEditor {
5
+ editorTemplate(value: any, spec: PropertySpec): TemplateResult;
6
+ }
@@ -0,0 +1,24 @@
1
+ import { __decorate } from "tslib";
2
+ import './ox-input-spc-limits.js';
3
+ import { html } from 'lit';
4
+ import { customElement } from 'lit/decorators.js';
5
+ import { OxPropertyEditor } from '@operato/property-editor';
6
+ let OxPropertyEditorSpcLimits = class OxPropertyEditorSpcLimits extends OxPropertyEditor {
7
+ editorTemplate(value, spec) {
8
+ const { type, options, unit } = spec.property || {};
9
+ return html `
10
+ <ox-input-spc-limits
11
+ id="editor"
12
+ .value=${value}
13
+ .type=${type}
14
+ .unit=${unit}
15
+ .options=${options}
16
+ ></ox-input-spc-limits>
17
+ `;
18
+ }
19
+ };
20
+ OxPropertyEditorSpcLimits = __decorate([
21
+ customElement('ox-property-editor-spc-limits')
22
+ ], OxPropertyEditorSpcLimits);
23
+ export { OxPropertyEditorSpcLimits };
24
+ //# sourceMappingURL=ox-property-editor-spc-limits.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ox-property-editor-spc-limits.js","sourceRoot":"","sources":["../../../../src/usecase/spc/ox-property-editor-spc-limits.ts"],"names":[],"mappings":";AAAA,OAAO,0BAA0B,CAAA;AAEjC,OAAO,EAAE,IAAI,EAAkB,MAAM,KAAK,CAAA;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEjD,OAAO,EAAE,gBAAgB,EAAgB,MAAM,0BAA0B,CAAA;AAGlE,IAAM,yBAAyB,GAA/B,MAAM,yBAA0B,SAAQ,gBAAgB;IAC7D,cAAc,CAAC,KAAU,EAAE,IAAkB;QAC3C,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAA;QAEnD,OAAO,IAAI,CAAA;;;iBAGE,KAAK;gBACN,IAAI;gBACJ,IAAI;mBACD,OAAO;;KAErB,CAAA;IACH,CAAC;CACF,CAAA;AAdY,yBAAyB;IADrC,aAAa,CAAC,+BAA+B,CAAC;GAClC,yBAAyB,CAcrC","sourcesContent":["import './ox-input-spc-limits.js'\n\nimport { html, TemplateResult } from 'lit'\nimport { customElement } from 'lit/decorators.js'\n\nimport { OxPropertyEditor, PropertySpec } from '@operato/property-editor'\n\n@customElement('ox-property-editor-spc-limits')\nexport class OxPropertyEditorSpcLimits extends OxPropertyEditor {\n editorTemplate(value: any, spec: PropertySpec): TemplateResult {\n const { type, options, unit } = spec.property || {}\n\n return html`\n <ox-input-spc-limits\n id=\"editor\"\n .value=${value}\n .type=${type}\n .unit=${unit}\n .options=${options}\n ></ox-input-spc-limits>\n `\n }\n}\n"]}
@@ -1,7 +1,7 @@
1
1
  import '@operato/i18n';
2
2
  import '../src/ox-data-entry-form.js';
3
3
  import '../src/usecase/ccp';
4
- import '@material/mwc-icon';
4
+ import '@material/web/icon/icon.js';
5
5
  import { TemplateResult } from 'lit';
6
6
  declare const _default: {
7
7
  title: string;
@@ -1,7 +1,7 @@
1
1
  import '@operato/i18n';
2
2
  import '../src/ox-data-entry-form.js';
3
3
  import '../src/usecase/ccp'; /* register usecase CCP */
4
- import '@material/mwc-icon';
4
+ import '@material/web/icon/icon.js';
5
5
  import { html } from 'lit';
6
6
  export default {
7
7
  title: 'ox-data-entry-form',
@@ -91,7 +91,8 @@ const dataSet = {
91
91
  { text: '최우수', value: '최우수' },
92
92
  { text: '우수', value: '우수' },
93
93
  { text: '보통', value: '보통' },
94
- { text: '미달', value: '미달' }
94
+ { text: '미달', value: '미달' },
95
+ { text: '등외', value: '등외' }
95
96
  ]
96
97
  },
97
98
  quota: 3,
@@ -116,6 +117,49 @@ const dataSet = {
116
117
  quota: 1,
117
118
  active: true
118
119
  },
120
+ {
121
+ name: '라디오',
122
+ description: '라디오 그룹',
123
+ group: '측정데이타',
124
+ sequence: 5,
125
+ tag: 'check1',
126
+ type: 'radio',
127
+ options: {
128
+ options: [
129
+ {
130
+ text: '예',
131
+ value: 'Y'
132
+ },
133
+ {
134
+ text: '아니오',
135
+ value: 'N'
136
+ }
137
+ ]
138
+ },
139
+ quota: 3,
140
+ active: true
141
+ },
142
+ {
143
+ name: '라디오2',
144
+ description: '라디오 그룹2',
145
+ sequence: 5,
146
+ tag: 'check2',
147
+ type: 'radio',
148
+ options: {
149
+ options: [
150
+ {
151
+ text: '예',
152
+ value: 'Y'
153
+ },
154
+ {
155
+ text: '아니오',
156
+ value: 'N'
157
+ }
158
+ ]
159
+ },
160
+ quota: 1,
161
+ active: true
162
+ },
119
163
  {
120
164
  name: '첨부파일',
121
165
  description: '참조 첨부 파일.',
@@ -135,25 +179,37 @@ var value = {
135
179
  comment: '이것이 코멘트입니다.'
136
180
  };
137
181
  const Template = ({}) => html `
138
- <link href="/themes/app-theme.css" rel="stylesheet" />
139
- <link href="https://fonts.googleapis.com/css?family=Material+Icons&display=block" rel="stylesheet" />
140
- <style>
141
- body {
142
- }
143
- </style>
144
- <link href="/themes/app-theme.css" rel="stylesheet" />
145
- <link href="/themes/oops-theme.css" rel="stylesheet" />
146
- <link href="/themes/grist-theme.css" rel="stylesheet" />
182
+ <link href="/themes/app-theme.css" rel="stylesheet" />
183
+ <link
184
+ href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL@20..48,100..700,0..1"
185
+ rel="stylesheet"
186
+ />
187
+ <link
188
+ href="https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL@20..48,100..700,0..1"
189
+ rel="stylesheet"
190
+ />
191
+ <link
192
+ href="https://fonts.googleapis.com/css2?family=Material+Symbols+Sharp:opsz,wght,FILL@20..48,100..700,0..1"
193
+ rel="stylesheet"
194
+ />
195
+
196
+ <style>
197
+ body {
198
+ }
199
+ </style>
200
+ <link href="/themes/app-theme.css" rel="stylesheet" />
201
+ <link href="/themes/oops-theme.css" rel="stylesheet" />
202
+ <link href="/themes/grist-theme.css" rel="stylesheet" />
147
203
 
148
- <ox-data-entry-form
149
- .dataSet=${dataSet}
150
- .value=${value}
151
- @change=${(e) => {
204
+ <ox-data-entry-form
205
+ .dataSet=${dataSet}
206
+ .value=${value}
207
+ @change=${(e) => {
152
208
  value = e.detail;
153
209
  console.log('change', value);
154
210
  }}
155
- ></ox-data-entry-form>
156
- `;
211
+ ></ox-data-entry-form>
212
+ `;
157
213
  export const Regular = Template.bind({});
158
214
  Regular.args = {};
159
215
  //# sourceMappingURL=ox-data-entry-form.stories.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ox-data-entry-form.stories.js","sourceRoot":"","sources":["../../stories/ox-data-entry-form.stories.ts"],"names":[],"mappings":"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","sourcesContent":["import '@operato/i18n'\nimport '../src/ox-data-entry-form.js'\nimport '../src/usecase/ccp' /* register usecase CCP */\nimport '@material/mwc-icon'\n\nimport { html, TemplateResult } from 'lit'\n\nexport default {\n title: 'ox-data-entry-form',\n component: 'ox-data-entry-form',\n argTypes: {}\n}\n\ninterface Story<T> {\n (args: T): TemplateResult\n args?: Partial<T>\n argTypes?: Record<string, unknown>\n}\n\ninterface ArgTypes {}\n\nconst dataSet = {\n name: 'sample',\n description: 'sample description',\n useCase: 'CCP',\n dataItems: [\n {\n name: '창고 온도',\n description: '창고 온도는 섭씨 0도 이하로 유지되어야 합니다.',\n sequence: 1,\n tag: 'temp',\n group: '측정데이타',\n type: 'number',\n quota: 1,\n active: true,\n unit: '℃',\n spec: {\n CCP: {\n criticalLimits: {\n minimum: 100,\n maximum: 200\n },\n targetLimits: {\n minimum: 120,\n maximum: 180\n }\n }\n }\n },\n {\n name: '창고 습도',\n description: '창고 습도는 30% 이하로 유지되어야 합니다.',\n sequence: 2,\n tag: 'humid',\n group: '측정데이타',\n type: 'number',\n quota: 5,\n active: true,\n unit: '%',\n spec: {\n CCP: {\n criticalLimits: {\n minimum: 10,\n maximum: 50\n },\n targetLimits: {\n minimum: 20,\n maximum: 40\n }\n }\n }\n },\n {\n name: '육안 검사',\n description: '육안 검사는 포장전 30분 내로 실행되어야 합니다.',\n sequence: 3,\n tag: 'inspection',\n group: '측정데이타',\n type: 'boolean',\n quota: 3,\n active: true,\n spec: {\n CCP: {\n criticalLimits: {\n acceptables: true\n },\n targetLimits: {\n acceptables: true\n }\n }\n }\n },\n {\n name: '품평',\n description: '품평은 최우수/우수/보통/미달을 포함하여 간단히 평가.',\n sequence: 4,\n tag: 'evaluation',\n group: '측정데이타',\n type: 'select',\n options: {\n options: [\n { text: '최우수', value: '최우수' },\n { text: '우수', value: '우수' },\n { text: '보통', value: '보통' },\n { text: '미달', value: '미달' }\n ]\n },\n quota: 3,\n active: true,\n spec: {\n CCP: {\n criticalLimits: {\n acceptables: ['최우수', '우수', '보통']\n },\n targetLimits: {\n acceptables: ['최우수', '우수']\n }\n }\n }\n },\n {\n name: '코멘트',\n description: '특이사항을 기록함.',\n sequence: 4,\n tag: 'comment',\n type: 'string',\n quota: 1,\n active: true\n },\n {\n name: '첨부파일',\n description: '참조 첨부 파일.',\n sequence: 4,\n tag: 'attachment',\n type: 'file',\n quota: 1,\n active: true\n }\n ]\n}\nvar value = {\n temp: 1000,\n humid: [20, 23, 21, 26, 27],\n inspection: [true, false, true],\n evaluation: ['최우수', '보통', '우수'],\n comment: '이것이 코멘트입니다.'\n}\n\nconst Template: Story<ArgTypes> = ({}: ArgTypes) =>\n html`\n <link href=\"/themes/app-theme.css\" rel=\"stylesheet\" />\n <link href=\"https://fonts.googleapis.com/css?family=Material+Icons&display=block\" rel=\"stylesheet\" />\n <style>\n body {\n }\n </style>\n <link href=\"/themes/app-theme.css\" rel=\"stylesheet\" />\n <link href=\"/themes/oops-theme.css\" rel=\"stylesheet\" />\n <link href=\"/themes/grist-theme.css\" rel=\"stylesheet\" />\n\n <ox-data-entry-form\n .dataSet=${dataSet}\n .value=${value}\n @change=${(e: CustomEvent) => {\n value = e.detail\n console.log('change', value)\n }}\n ></ox-data-entry-form>\n `\n\nexport const Regular = Template.bind({})\nRegular.args = {}\n"]}
1
+ {"version":3,"file":"ox-data-entry-form.stories.js","sourceRoot":"","sources":["../../stories/ox-data-entry-form.stories.ts"],"names":[],"mappings":"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","sourcesContent":["import '@operato/i18n'\nimport '../src/ox-data-entry-form.js'\nimport '../src/usecase/ccp' /* register usecase CCP */\nimport '@material/web/icon/icon.js'\n\nimport { html, TemplateResult } from 'lit'\n\nexport default {\n title: 'ox-data-entry-form',\n component: 'ox-data-entry-form',\n argTypes: {}\n}\n\ninterface Story<T> {\n (args: T): TemplateResult\n args?: Partial<T>\n argTypes?: Record<string, unknown>\n}\n\ninterface ArgTypes {}\n\nconst dataSet = {\n name: 'sample',\n description: 'sample description',\n useCase: 'CCP',\n dataItems: [\n {\n name: '창고 온도',\n description: '창고 온도는 섭씨 0도 이하로 유지되어야 합니다.',\n sequence: 1,\n tag: 'temp',\n group: '측정데이타',\n type: 'number',\n quota: 1,\n active: true,\n unit: '℃',\n spec: {\n CCP: {\n criticalLimits: {\n minimum: 100,\n maximum: 200\n },\n targetLimits: {\n minimum: 120,\n maximum: 180\n }\n }\n }\n },\n {\n name: '창고 습도',\n description: '창고 습도는 30% 이하로 유지되어야 합니다.',\n sequence: 2,\n tag: 'humid',\n group: '측정데이타',\n type: 'number',\n quota: 5,\n active: true,\n unit: '%',\n spec: {\n CCP: {\n criticalLimits: {\n minimum: 10,\n maximum: 50\n },\n targetLimits: {\n minimum: 20,\n maximum: 40\n }\n }\n }\n },\n {\n name: '육안 검사',\n description: '육안 검사는 포장전 30분 내로 실행되어야 합니다.',\n sequence: 3,\n tag: 'inspection',\n group: '측정데이타',\n type: 'boolean',\n quota: 3,\n active: true,\n spec: {\n CCP: {\n criticalLimits: {\n acceptables: true\n },\n targetLimits: {\n acceptables: true\n }\n }\n }\n },\n {\n name: '품평',\n description: '품평은 최우수/우수/보통/미달을 포함하여 간단히 평가.',\n sequence: 4,\n tag: 'evaluation',\n group: '측정데이타',\n type: 'select',\n options: {\n options: [\n { text: '최우수', value: '최우수' },\n { text: '우수', value: '우수' },\n { text: '보통', value: '보통' },\n { text: '미달', value: '미달' },\n { text: '등외', value: '등외' }\n ]\n },\n quota: 3,\n active: true,\n spec: {\n CCP: {\n criticalLimits: {\n acceptables: ['최우수', '우수', '보통']\n },\n targetLimits: {\n acceptables: ['최우수', '우수']\n }\n }\n }\n },\n {\n name: '코멘트',\n description: '특이사항을 기록함.',\n sequence: 4,\n tag: 'comment',\n type: 'string',\n quota: 1,\n active: true\n },\n {\n name: '라디오',\n description: '라디오 그룹',\n\n group: '측정데이타',\n sequence: 5,\n tag: 'check1',\n type: 'radio',\n options: {\n options: [\n {\n text: '예',\n value: 'Y'\n },\n {\n text: '아니오',\n value: 'N'\n }\n ]\n },\n quota: 3,\n active: true\n },\n {\n name: '라디오2',\n description: '라디오 그룹2',\n sequence: 5,\n tag: 'check2',\n type: 'radio',\n options: {\n options: [\n {\n text: '예',\n value: 'Y'\n },\n {\n text: '아니오',\n value: 'N'\n }\n ]\n },\n quota: 1,\n active: true\n },\n {\n name: '첨부파일',\n description: '참조 첨부 파일.',\n sequence: 4,\n tag: 'attachment',\n type: 'file',\n quota: 1,\n active: true\n }\n ]\n}\nvar value = {\n temp: 1000,\n humid: [20, 23, 21, 26, 27],\n inspection: [true, false, true],\n evaluation: ['최우수', '보통', '우수'],\n comment: '이것이 코멘트입니다.'\n}\n\nconst Template: Story<ArgTypes> = ({}: ArgTypes) => html`\n <link href=\"/themes/app-theme.css\" rel=\"stylesheet\" />\n <link\n href=\"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL@20..48,100..700,0..1\"\n rel=\"stylesheet\"\n />\n <link\n href=\"https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL@20..48,100..700,0..1\"\n rel=\"stylesheet\"\n />\n <link\n href=\"https://fonts.googleapis.com/css2?family=Material+Symbols+Sharp:opsz,wght,FILL@20..48,100..700,0..1\"\n rel=\"stylesheet\"\n />\n\n <style>\n body {\n }\n </style>\n <link href=\"/themes/app-theme.css\" rel=\"stylesheet\" />\n <link href=\"/themes/oops-theme.css\" rel=\"stylesheet\" />\n <link href=\"/themes/grist-theme.css\" rel=\"stylesheet\" />\n\n <ox-data-entry-form\n .dataSet=${dataSet}\n .value=${value}\n @change=${(e: CustomEvent) => {\n value = e.detail\n console.log('change', value)\n }}\n ></ox-data-entry-form>\n`\n\nexport const Regular = Template.bind({})\nRegular.args = {}\n"]}
@@ -1,5 +1,5 @@
1
1
  import '@operato/i18n';
2
- import '@material/mwc-icon';
2
+ import '@material/web/icon/icon.js';
3
3
  import '@operato/property-editor/ox-property-editor-checkbox.js';
4
4
  import '@operato/property-editor/ox-property-editor-number.js';
5
5
  import '@operato/property-editor/ox-property-editor-string.js';
@@ -1,5 +1,5 @@
1
1
  import '@operato/i18n';
2
- import '@material/mwc-icon';
2
+ import '@material/web/icon/icon.js';
3
3
  import '@operato/property-editor/ox-property-editor-checkbox.js';
4
4
  import '@operato/property-editor/ox-property-editor-number.js';
5
5
  import '@operato/property-editor/ox-property-editor-string.js';
@@ -87,7 +87,19 @@ var specB = {
87
87
  QC: { accpetables: ['최우수', '우수'] }
88
88
  };
89
89
  const Template = ({}) => html ` <link href="/themes/app-theme.css" rel="stylesheet" />
90
- <link href="https://fonts.googleapis.com/css?family=Material+Icons&display=block" rel="stylesheet" />
90
+ <link
91
+ href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL@20..48,100..700,0..1"
92
+ rel="stylesheet"
93
+ />
94
+ <link
95
+ href="https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL@20..48,100..700,0..1"
96
+ rel="stylesheet"
97
+ />
98
+ <link
99
+ href="https://fonts.googleapis.com/css2?family=Material+Symbols+Sharp:opsz,wght,FILL@20..48,100..700,0..1"
100
+ rel="stylesheet"
101
+ />
102
+
91
103
  <style>
92
104
  body {
93
105
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ox-data-item-spec.stories.js","sourceRoot":"","sources":["../../stories/ox-data-item-spec.stories.ts"],"names":[],"mappings":"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","sourcesContent":["import '@operato/i18n'\nimport '@material/mwc-icon'\nimport '@operato/property-editor/ox-property-editor-checkbox.js'\nimport '@operato/property-editor/ox-property-editor-number.js'\nimport '@operato/property-editor/ox-property-editor-string.js'\nimport '@operato/property-editor/ox-properties-dynamic-view.js'\nimport '../src/ox-data-item-spec.js'\nimport '../src/usecase/ccp' /* register usecase CCP */\nimport '../src/usecase/qc' /* register usecase QC */\nimport '../src/usecase/ccp/ox-property-editor-ccp-limits.js'\nimport '../src/usecase/qc/ox-property-editor-qc-limits.js'\n\nimport { html, TemplateResult } from 'lit'\n\nimport { OxPropertyEditor } from '@operato/property-editor'\n\nOxPropertyEditor.register({\n number: 'ox-property-editor-number',\n string: 'ox-property-editor-string',\n boolean: 'ox-property-editor-checkbox',\n 'ccp-limits': 'ox-property-editor-ccp-limits',\n 'qc-limits': 'ox-property-editor-qc-limits'\n})\n\nexport default {\n title: 'ox-data-item-spec',\n component: 'ox-data-item-spec',\n argTypes: {}\n}\n\ninterface Story<T> {\n (args: T): TemplateResult\n args?: Partial<T>\n argTypes?: Record<string, unknown>\n}\n\ninterface ArgTypes {}\n\nconst dataItemA = {\n name: '창고 온도',\n description: '창고 온도는 섭씨 0도 이하로 유지되어야 합니다.',\n sequence: 1,\n tag: 'temp',\n unit: '℃',\n type: 'number',\n quota: 1\n}\n\nconst dataItemB = {\n name: '품평',\n description: '품평은 최우수/우수/보통/미달을 포함하여 간단히 평가.',\n sequence: 4,\n tag: 'evaluation',\n type: 'select',\n options: {\n options: [\n { text: '최우수', value: '최우수' },\n { text: '우수', value: '우수' },\n { text: '보통', value: '보통' },\n { text: '미달', value: '미달' }\n ]\n },\n quota: 3\n}\n\nconst dataItemC = {\n name: '코멘트',\n description: '특이사항을 기록함.',\n sequence: 4,\n tag: 'comment',\n type: 'string',\n quota: 1\n}\n\nconst dataItemD = {\n name: '성공',\n description: '성공여부를 기록함.',\n sequence: 5,\n tag: 'success',\n type: 'boolean',\n quota: 1\n}\n\nvar specA = {\n CCP: {\n criticalLimits: {\n minimum: 100,\n maximum: 200\n },\n targetLimits: {\n minimum: 120,\n maximum: 180\n }\n },\n QC: {\n passLimits: {\n minimum: 320,\n maximum: 440\n }\n }\n}\n\nvar specB = {\n CCP: { accpetables: ['최우수', '우수'] },\n QC: { accpetables: ['최우수', '우수'] }\n}\n\nconst Template: Story<ArgTypes> = ({}: ArgTypes) =>\n html` <link href=\"/themes/app-theme.css\" rel=\"stylesheet\" />\n <link href=\"https://fonts.googleapis.com/css?family=Material+Icons&display=block\" rel=\"stylesheet\" />\n <style>\n body {\n }\n </style>\n\n <script type=\"module\"></script>\n\n <ox-data-item-spec\n .dataItem=${dataItemA}\n .value=${specA}\n @change=${(e: CustomEvent) => {\n specA = e.detail\n console.log('change', specA)\n }}\n ></ox-data-item-spec>\n\n <ox-data-item-spec\n .dataItem=${dataItemB}\n .value=${specB}\n @change=${(e: CustomEvent) => {\n specB = e.detail\n console.log('change', specB)\n }}\n ></ox-data-item-spec>\n\n <ox-data-item-spec\n .dataItem=${dataItemC}\n .value=${specA}\n @change=${(e: CustomEvent) => {\n specA = e.detail\n console.log('change', specA)\n }}\n ></ox-data-item-spec>\n\n <ox-data-item-spec\n .dataItem=${dataItemD}\n .value=${specB}\n @change=${(e: CustomEvent) => {\n specB = e.detail\n console.log('change', specB)\n }}\n ></ox-data-item-spec>`\n\nexport const Regular = Template.bind({})\nRegular.args = {}\n"]}
1
+ {"version":3,"file":"ox-data-item-spec.stories.js","sourceRoot":"","sources":["../../stories/ox-data-item-spec.stories.ts"],"names":[],"mappings":"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","sourcesContent":["import '@operato/i18n'\nimport '@material/web/icon/icon.js'\nimport '@operato/property-editor/ox-property-editor-checkbox.js'\nimport '@operato/property-editor/ox-property-editor-number.js'\nimport '@operato/property-editor/ox-property-editor-string.js'\nimport '@operato/property-editor/ox-properties-dynamic-view.js'\nimport '../src/ox-data-item-spec.js'\nimport '../src/usecase/ccp' /* register usecase CCP */\nimport '../src/usecase/qc' /* register usecase QC */\nimport '../src/usecase/ccp/ox-property-editor-ccp-limits.js'\nimport '../src/usecase/qc/ox-property-editor-qc-limits.js'\n\nimport { html, TemplateResult } from 'lit'\n\nimport { OxPropertyEditor } from '@operato/property-editor'\n\nOxPropertyEditor.register({\n number: 'ox-property-editor-number',\n string: 'ox-property-editor-string',\n boolean: 'ox-property-editor-checkbox',\n 'ccp-limits': 'ox-property-editor-ccp-limits',\n 'qc-limits': 'ox-property-editor-qc-limits'\n})\n\nexport default {\n title: 'ox-data-item-spec',\n component: 'ox-data-item-spec',\n argTypes: {}\n}\n\ninterface Story<T> {\n (args: T): TemplateResult\n args?: Partial<T>\n argTypes?: Record<string, unknown>\n}\n\ninterface ArgTypes {}\n\nconst dataItemA = {\n name: '창고 온도',\n description: '창고 온도는 섭씨 0도 이하로 유지되어야 합니다.',\n sequence: 1,\n tag: 'temp',\n unit: '℃',\n type: 'number',\n quota: 1\n}\n\nconst dataItemB = {\n name: '품평',\n description: '품평은 최우수/우수/보통/미달을 포함하여 간단히 평가.',\n sequence: 4,\n tag: 'evaluation',\n type: 'select',\n options: {\n options: [\n { text: '최우수', value: '최우수' },\n { text: '우수', value: '우수' },\n { text: '보통', value: '보통' },\n { text: '미달', value: '미달' }\n ]\n },\n quota: 3\n}\n\nconst dataItemC = {\n name: '코멘트',\n description: '특이사항을 기록함.',\n sequence: 4,\n tag: 'comment',\n type: 'string',\n quota: 1\n}\n\nconst dataItemD = {\n name: '성공',\n description: '성공여부를 기록함.',\n sequence: 5,\n tag: 'success',\n type: 'boolean',\n quota: 1\n}\n\nvar specA = {\n CCP: {\n criticalLimits: {\n minimum: 100,\n maximum: 200\n },\n targetLimits: {\n minimum: 120,\n maximum: 180\n }\n },\n QC: {\n passLimits: {\n minimum: 320,\n maximum: 440\n }\n }\n}\n\nvar specB = {\n CCP: { accpetables: ['최우수', '우수'] },\n QC: { accpetables: ['최우수', '우수'] }\n}\n\nconst Template: Story<ArgTypes> = ({}: ArgTypes) =>\n html` <link href=\"/themes/app-theme.css\" rel=\"stylesheet\" />\n <link\n href=\"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL@20..48,100..700,0..1\"\n rel=\"stylesheet\"\n />\n <link\n href=\"https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL@20..48,100..700,0..1\"\n rel=\"stylesheet\"\n />\n <link\n href=\"https://fonts.googleapis.com/css2?family=Material+Symbols+Sharp:opsz,wght,FILL@20..48,100..700,0..1\"\n rel=\"stylesheet\"\n />\n\n <style>\n body {\n }\n </style>\n\n <script type=\"module\"></script>\n\n <ox-data-item-spec\n .dataItem=${dataItemA}\n .value=${specA}\n @change=${(e: CustomEvent) => {\n specA = e.detail\n console.log('change', specA)\n }}\n ></ox-data-item-spec>\n\n <ox-data-item-spec\n .dataItem=${dataItemB}\n .value=${specB}\n @change=${(e: CustomEvent) => {\n specB = e.detail\n console.log('change', specB)\n }}\n ></ox-data-item-spec>\n\n <ox-data-item-spec\n .dataItem=${dataItemC}\n .value=${specA}\n @change=${(e: CustomEvent) => {\n specA = e.detail\n console.log('change', specA)\n }}\n ></ox-data-item-spec>\n\n <ox-data-item-spec\n .dataItem=${dataItemD}\n .value=${specB}\n @change=${(e: CustomEvent) => {\n specB = e.detail\n console.log('change', specB)\n }}\n ></ox-data-item-spec>`\n\nexport const Regular = Template.bind({})\nRegular.args = {}\n"]}
@@ -1,7 +1,7 @@
1
1
  import '@operato/i18n';
2
2
  import '../src/ox-data-ooc-brief-view.js';
3
3
  import '../src/usecase/ccp/index.js';
4
- import '@material/mwc-icon';
4
+ import '@material/web/icon/icon.js';
5
5
  import { TemplateResult } from 'lit';
6
6
  declare const _default: {
7
7
  title: string;
@@ -1,7 +1,7 @@
1
1
  import '@operato/i18n';
2
2
  import '../src/ox-data-ooc-brief-view.js';
3
3
  import '../src/usecase/ccp/index.js'; /* register usecase CCP */
4
- import '@material/mwc-icon';
4
+ import '@material/web/icon/icon.js';
5
5
  import { html } from 'lit';
6
6
  export default {
7
7
  title: 'ox-data-ooc-brief-view',
@@ -251,19 +251,31 @@ var dataOoc = {
251
251
  ]
252
252
  };
253
253
  const Template = ({}) => html `
254
- <link href="/themes/app-theme.css" rel="stylesheet" />
255
- <link href="https://fonts.googleapis.com/css?family=Material+Icons&display=block" rel="stylesheet" />
256
- <style>
257
- body {
258
- }
259
- </style>
254
+ <link href="/themes/app-theme.css" rel="stylesheet" />
255
+ <link
256
+ href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL@20..48,100..700,0..1"
257
+ rel="stylesheet"
258
+ />
259
+ <link
260
+ href="https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL@20..48,100..700,0..1"
261
+ rel="stylesheet"
262
+ />
263
+ <link
264
+ href="https://fonts.googleapis.com/css2?family=Material+Symbols+Sharp:opsz,wght,FILL@20..48,100..700,0..1"
265
+ rel="stylesheet"
266
+ />
260
267
 
261
- <ox-data-ooc-brief-view
262
- .dataSet=${dataSet}
263
- .dataOoc=${dataOoc}
264
- @change=${(e) => console.log(e.detail)}
265
- ></ox-data-ooc-brief-view>
266
- `;
268
+ <style>
269
+ body {
270
+ }
271
+ </style>
272
+
273
+ <ox-data-ooc-brief-view
274
+ .dataSet=${dataSet}
275
+ .dataOoc=${dataOoc}
276
+ @change=${(e) => console.log(e.detail)}
277
+ ></ox-data-ooc-brief-view>
278
+ `;
267
279
  export const Regular = Template.bind({});
268
280
  Regular.args = {};
269
281
  //# sourceMappingURL=ox-data-ooc-brief-view.stories.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ox-data-ooc-brief-view.stories.js","sourceRoot":"","sources":["../../stories/ox-data-ooc-brief-view.stories.ts"],"names":[],"mappings":"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","sourcesContent":["import '@operato/i18n'\nimport '../src/ox-data-ooc-brief-view.js'\nimport '../src/usecase/ccp/index.js' /* register usecase CCP */\nimport '@material/mwc-icon'\n\nimport { html, TemplateResult } from 'lit'\n\nexport default {\n title: 'ox-data-ooc-brief-view',\n component: 'ox-data-ooc-brief-view',\n argTypes: {}\n}\n\ninterface Story<T> {\n (args: T): TemplateResult\n args?: Partial<T>\n argTypes?: Record<string, unknown>\n}\n\ninterface ArgTypes {}\n\nconst dataSet = {\n name: 'sample',\n description: 'sample description',\n type: 'manual',\n useCase: 'CCP',\n dataItems: [\n {\n name: '창고 온도',\n description: '창고 온도는 섭씨 0도 이하로 유지되어야 합니다.',\n sequence: 1,\n tag: 'temp',\n group: '측정데이타',\n type: 'number',\n quota: 1,\n active: true,\n unit: '℃',\n spec: {\n CCP: {\n criticalLimits: {\n minimum: 100,\n maximum: 200\n },\n targetLimits: {\n minimum: 120,\n maximum: 180\n }\n }\n }\n },\n {\n name: '창고 습도',\n description: '창고 습도는 30% 이하로 유지되어야 합니다.',\n sequence: 2,\n tag: 'humid',\n group: '측정데이타',\n type: 'number',\n quota: 5,\n active: true,\n unit: '%',\n spec: {\n CCP: {\n criticalLimits: {\n minimum: 10,\n maximum: 50\n },\n targetLimits: {\n minimum: 20,\n maximum: 40\n }\n }\n }\n },\n {\n name: '육안 검사',\n description: '육안 검사는 포장전 30분 내로 실행되어야 합니다.',\n sequence: 3,\n tag: 'inspection',\n group: '측정데이타',\n type: 'boolean',\n quota: 3,\n active: true,\n spec: {\n CCP: {\n criticalLimits: {\n acceptables: true\n },\n targetLimits: {\n acceptables: true\n }\n }\n }\n },\n {\n name: '품평',\n description: '품평은 최우수/우수/보통/미달을 포함하여 간단히 평가.',\n sequence: 4,\n tag: 'evaluation',\n group: '측정데이타',\n type: 'select',\n options: {\n options: [\n { text: '최우수', value: '최우수' },\n { text: '우수', value: '우수' },\n { text: '보통', value: '보통' },\n { text: '미달', value: '미달' }\n ]\n },\n quota: 3,\n active: true,\n spec: {\n CCP: {\n criticalLimits: {\n acceptables: ['최우수', '우수', '보통']\n },\n targetLimits: {\n acceptables: ['최우수', '우수']\n }\n }\n }\n },\n {\n name: '코멘트',\n description: '특이사항을 기록함.',\n sequence: 4,\n tag: 'comment',\n type: 'string',\n quota: 1,\n active: true\n },\n {\n name: '첨부파일',\n description: '참조 첨부 파일.',\n sequence: 4,\n tag: 'attachment',\n type: 'file',\n quota: 1,\n active: true\n }\n ]\n}\n\nvar dataOoc = {\n name: 'Data Sample Name',\n description: 'Data Sample이 어쩌구 저쩌구 그래서 중요합니다. 당연히 그래야죠.',\n state: 'CORRECTED',\n useCase: 'CCP',\n judgment: {\n temp: {\n ooc: true,\n oos: false\n },\n humid: {\n ooc: false,\n oos: true\n }\n },\n data: {\n temp: [1000, 1023, 1027, 997, 981],\n humid: [20, 23, 21, 26, 27],\n inspection: [true, false, true, false, false],\n evaluation: ['최우수', '보통', '우수', '보통', '최우수'],\n comment: '이것은 코멘트입니다.'\n },\n dataItems: dataSet.dataItems,\n spec: {\n temp: {\n name: '창고 온도',\n description: '창고 온도는 섭씨 0도 이하로 유지되어야 합니다.',\n spec: {\n CCP: {\n criticalLimits: {\n minimum: 100,\n maximum: 200\n },\n targetLimits: {\n minimum: 120,\n maximum: 180\n }\n }\n }\n },\n humid: {\n name: '창고 습도',\n description: '창고 습도는 30% 이하로 유지되어야 합니다.',\n spec: {\n CCP: {\n criticalLimits: {\n minimum: 10,\n maximum: 50\n },\n targetLimits: {\n minimum: 20,\n maximum: 40\n }\n }\n }\n },\n inspection: {\n name: '육안 검사',\n description: '육안 검사는 포장전 30분 내로 실행되어야 합니다.'\n },\n evaluation: {\n name: '품평',\n description: '품평은 최우수/우수/보통/미달을 포함하여 간단히 평가.',\n spec: {\n CCP: {\n criticalLimits: {\n acceptables: ['최우수', '우수', '보통']\n },\n targetLimits: {\n acceptables: ['최우수', '우수']\n }\n }\n }\n },\n comment: {\n name: '코멘트',\n description: '특이사항을 기록함.'\n },\n attachment: {\n name: '첨부파일',\n description: '참조 첨부 파일.'\n }\n },\n collectedAt: Date.now(),\n reviewer: {\n name: '남상혁'\n },\n reviewedAt: Date.now(),\n correctiveInstruction: '바지틀고서 만나오리오. 쿠투추파',\n corrector: {\n name: '남상혁'\n },\n correctedAt: Date.now(),\n correctiveAction: '바지틀고서 만나오리오. 쿠투추파',\n history: [\n {\n user: {\n id: 0,\n name: 'shnam'\n },\n state: 'ISSUED',\n timestamp: Date.now()\n },\n {\n user: {\n id: 0,\n name: 'shnam'\n },\n state: 'REVIEWED',\n comment: '금일 생산한 제품은 전량 폐기합니다',\n timestamp: Date.now()\n },\n {\n user: {\n id: 0,\n name: 'shnam'\n },\n state: 'CORRECTED',\n timestamp: Date.now()\n }\n ]\n}\n\nconst Template: Story<ArgTypes> = ({}: ArgTypes) =>\n html`\n <link href=\"/themes/app-theme.css\" rel=\"stylesheet\" />\n <link href=\"https://fonts.googleapis.com/css?family=Material+Icons&display=block\" rel=\"stylesheet\" />\n <style>\n body {\n }\n </style>\n\n <ox-data-ooc-brief-view\n .dataSet=${dataSet}\n .dataOoc=${dataOoc}\n @change=${(e: CustomEvent) => console.log(e.detail)}\n ></ox-data-ooc-brief-view>\n `\n\nexport const Regular = Template.bind({})\nRegular.args = {}\n"]}
1
+ {"version":3,"file":"ox-data-ooc-brief-view.stories.js","sourceRoot":"","sources":["../../stories/ox-data-ooc-brief-view.stories.ts"],"names":[],"mappings":"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","sourcesContent":["import '@operato/i18n'\nimport '../src/ox-data-ooc-brief-view.js'\nimport '../src/usecase/ccp/index.js' /* register usecase CCP */\nimport '@material/web/icon/icon.js'\n\nimport { html, TemplateResult } from 'lit'\n\nexport default {\n title: 'ox-data-ooc-brief-view',\n component: 'ox-data-ooc-brief-view',\n argTypes: {}\n}\n\ninterface Story<T> {\n (args: T): TemplateResult\n args?: Partial<T>\n argTypes?: Record<string, unknown>\n}\n\ninterface ArgTypes {}\n\nconst dataSet = {\n name: 'sample',\n description: 'sample description',\n type: 'manual',\n useCase: 'CCP',\n dataItems: [\n {\n name: '창고 온도',\n description: '창고 온도는 섭씨 0도 이하로 유지되어야 합니다.',\n sequence: 1,\n tag: 'temp',\n group: '측정데이타',\n type: 'number',\n quota: 1,\n active: true,\n unit: '℃',\n spec: {\n CCP: {\n criticalLimits: {\n minimum: 100,\n maximum: 200\n },\n targetLimits: {\n minimum: 120,\n maximum: 180\n }\n }\n }\n },\n {\n name: '창고 습도',\n description: '창고 습도는 30% 이하로 유지되어야 합니다.',\n sequence: 2,\n tag: 'humid',\n group: '측정데이타',\n type: 'number',\n quota: 5,\n active: true,\n unit: '%',\n spec: {\n CCP: {\n criticalLimits: {\n minimum: 10,\n maximum: 50\n },\n targetLimits: {\n minimum: 20,\n maximum: 40\n }\n }\n }\n },\n {\n name: '육안 검사',\n description: '육안 검사는 포장전 30분 내로 실행되어야 합니다.',\n sequence: 3,\n tag: 'inspection',\n group: '측정데이타',\n type: 'boolean',\n quota: 3,\n active: true,\n spec: {\n CCP: {\n criticalLimits: {\n acceptables: true\n },\n targetLimits: {\n acceptables: true\n }\n }\n }\n },\n {\n name: '품평',\n description: '품평은 최우수/우수/보통/미달을 포함하여 간단히 평가.',\n sequence: 4,\n tag: 'evaluation',\n group: '측정데이타',\n type: 'select',\n options: {\n options: [\n { text: '최우수', value: '최우수' },\n { text: '우수', value: '우수' },\n { text: '보통', value: '보통' },\n { text: '미달', value: '미달' }\n ]\n },\n quota: 3,\n active: true,\n spec: {\n CCP: {\n criticalLimits: {\n acceptables: ['최우수', '우수', '보통']\n },\n targetLimits: {\n acceptables: ['최우수', '우수']\n }\n }\n }\n },\n {\n name: '코멘트',\n description: '특이사항을 기록함.',\n sequence: 4,\n tag: 'comment',\n type: 'string',\n quota: 1,\n active: true\n },\n {\n name: '첨부파일',\n description: '참조 첨부 파일.',\n sequence: 4,\n tag: 'attachment',\n type: 'file',\n quota: 1,\n active: true\n }\n ]\n}\n\nvar dataOoc = {\n name: 'Data Sample Name',\n description: 'Data Sample이 어쩌구 저쩌구 그래서 중요합니다. 당연히 그래야죠.',\n state: 'CORRECTED',\n useCase: 'CCP',\n judgment: {\n temp: {\n ooc: true,\n oos: false\n },\n humid: {\n ooc: false,\n oos: true\n }\n },\n data: {\n temp: [1000, 1023, 1027, 997, 981],\n humid: [20, 23, 21, 26, 27],\n inspection: [true, false, true, false, false],\n evaluation: ['최우수', '보통', '우수', '보통', '최우수'],\n comment: '이것은 코멘트입니다.'\n },\n dataItems: dataSet.dataItems,\n spec: {\n temp: {\n name: '창고 온도',\n description: '창고 온도는 섭씨 0도 이하로 유지되어야 합니다.',\n spec: {\n CCP: {\n criticalLimits: {\n minimum: 100,\n maximum: 200\n },\n targetLimits: {\n minimum: 120,\n maximum: 180\n }\n }\n }\n },\n humid: {\n name: '창고 습도',\n description: '창고 습도는 30% 이하로 유지되어야 합니다.',\n spec: {\n CCP: {\n criticalLimits: {\n minimum: 10,\n maximum: 50\n },\n targetLimits: {\n minimum: 20,\n maximum: 40\n }\n }\n }\n },\n inspection: {\n name: '육안 검사',\n description: '육안 검사는 포장전 30분 내로 실행되어야 합니다.'\n },\n evaluation: {\n name: '품평',\n description: '품평은 최우수/우수/보통/미달을 포함하여 간단히 평가.',\n spec: {\n CCP: {\n criticalLimits: {\n acceptables: ['최우수', '우수', '보통']\n },\n targetLimits: {\n acceptables: ['최우수', '우수']\n }\n }\n }\n },\n comment: {\n name: '코멘트',\n description: '특이사항을 기록함.'\n },\n attachment: {\n name: '첨부파일',\n description: '참조 첨부 파일.'\n }\n },\n collectedAt: Date.now(),\n reviewer: {\n name: '남상혁'\n },\n reviewedAt: Date.now(),\n correctiveInstruction: '바지틀고서 만나오리오. 쿠투추파',\n corrector: {\n name: '남상혁'\n },\n correctedAt: Date.now(),\n correctiveAction: '바지틀고서 만나오리오. 쿠투추파',\n history: [\n {\n user: {\n id: 0,\n name: 'shnam'\n },\n state: 'ISSUED',\n timestamp: Date.now()\n },\n {\n user: {\n id: 0,\n name: 'shnam'\n },\n state: 'REVIEWED',\n comment: '금일 생산한 제품은 전량 폐기합니다',\n timestamp: Date.now()\n },\n {\n user: {\n id: 0,\n name: 'shnam'\n },\n state: 'CORRECTED',\n timestamp: Date.now()\n }\n ]\n}\n\nconst Template: Story<ArgTypes> = ({}: ArgTypes) => html`\n <link href=\"/themes/app-theme.css\" rel=\"stylesheet\" />\n <link\n href=\"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL@20..48,100..700,0..1\"\n rel=\"stylesheet\"\n />\n <link\n href=\"https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL@20..48,100..700,0..1\"\n rel=\"stylesheet\"\n />\n <link\n href=\"https://fonts.googleapis.com/css2?family=Material+Symbols+Sharp:opsz,wght,FILL@20..48,100..700,0..1\"\n rel=\"stylesheet\"\n />\n\n <style>\n body {\n }\n </style>\n\n <ox-data-ooc-brief-view\n .dataSet=${dataSet}\n .dataOoc=${dataOoc}\n @change=${(e: CustomEvent) => console.log(e.detail)}\n ></ox-data-ooc-brief-view>\n`\n\nexport const Regular = Template.bind({})\nRegular.args = {}\n"]}
@@ -1,7 +1,7 @@
1
1
  import '@operato/i18n';
2
2
  import '../src/ox-data-ooc-view.js';
3
3
  import '../src/usecase/ccp';
4
- import '@material/mwc-icon';
4
+ import '@material/web/icon/icon.js';
5
5
  import { TemplateResult } from 'lit';
6
6
  declare const _default: {
7
7
  title: string;
@@ -1,7 +1,7 @@
1
1
  import '@operato/i18n';
2
2
  import '../src/ox-data-ooc-view.js';
3
3
  import '../src/usecase/ccp'; /* register usecase CCP */
4
- import '@material/mwc-icon';
4
+ import '@material/web/icon/icon.js';
5
5
  import { html } from 'lit';
6
6
  export default {
7
7
  title: 'ox-data-ooc-view',
@@ -242,19 +242,31 @@ var dataOoc = {
242
242
  ]
243
243
  };
244
244
  const Template = ({}) => html `
245
- <link href="/themes/app-theme.css" rel="stylesheet" />
246
- <link href="https://fonts.googleapis.com/css?family=Material+Icons&display=block" rel="stylesheet" />
247
- <style>
248
- body {
249
- }
250
- </style>
245
+ <link href="/themes/app-theme.css" rel="stylesheet" />
246
+ <link
247
+ href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL@20..48,100..700,0..1"
248
+ rel="stylesheet"
249
+ />
250
+ <link
251
+ href="https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL@20..48,100..700,0..1"
252
+ rel="stylesheet"
253
+ />
254
+ <link
255
+ href="https://fonts.googleapis.com/css2?family=Material+Symbols+Sharp:opsz,wght,FILL@20..48,100..700,0..1"
256
+ rel="stylesheet"
257
+ />
251
258
 
252
- <ox-data-ooc-view
253
- .dataSet=${dataSet}
254
- .dataOoc=${dataOoc}
255
- @change=${(e) => console.log(e.detail)}
256
- ></ox-data-ooc-view>
257
- `;
259
+ <style>
260
+ body {
261
+ }
262
+ </style>
263
+
264
+ <ox-data-ooc-view
265
+ .dataSet=${dataSet}
266
+ .dataOoc=${dataOoc}
267
+ @change=${(e) => console.log(e.detail)}
268
+ ></ox-data-ooc-view>
269
+ `;
258
270
  export const Regular = Template.bind({});
259
271
  Regular.args = {};
260
272
  //# sourceMappingURL=ox-data-ooc-view.stories.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ox-data-ooc-view.stories.js","sourceRoot":"","sources":["../../stories/ox-data-ooc-view.stories.ts"],"names":[],"mappings":"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","sourcesContent":["import '@operato/i18n'\nimport '../src/ox-data-ooc-view.js'\nimport '../src/usecase/ccp' /* register usecase CCP */\nimport '@material/mwc-icon'\n\nimport { html, TemplateResult } from 'lit'\n\nexport default {\n title: 'ox-data-ooc-view',\n component: 'ox-data-ooc-view',\n argTypes: {}\n}\n\ninterface Story<T> {\n (args: T): TemplateResult\n args?: Partial<T>\n argTypes?: Record<string, unknown>\n}\n\ninterface ArgTypes {}\n\nconst dataSet = {\n name: 'sample',\n description: 'sample description',\n type: 'manual',\n useCase: 'CCP',\n dataItems: [\n {\n name: '창고 온도',\n description: '창고 온도는 섭씨 0도 이하로 유지되어야 합니다.',\n sequence: 1,\n tag: 'temp',\n group: '측정데이타',\n type: 'number',\n quota: 1,\n active: true,\n unit: '℃',\n spec: {\n CCP: {\n criticalLimits: {\n minimum: 100,\n maximum: 200\n },\n targetLimits: {\n minimum: 120,\n maximum: 180\n }\n }\n }\n },\n {\n name: '창고 습도',\n description: '창고 습도는 30% 이하로 유지되어야 합니다.',\n sequence: 2,\n tag: 'humid',\n group: '측정데이타',\n type: 'number',\n quota: 5,\n active: true,\n unit: '%',\n spec: {\n CCP: {\n criticalLimits: {\n minimum: 10,\n maximum: 50\n },\n targetLimits: {\n minimum: 20,\n maximum: 40\n }\n }\n }\n },\n {\n name: '육안 검사',\n description: '육안 검사는 포장전 30분 내로 실행되어야 합니다.',\n sequence: 3,\n tag: 'inspection',\n group: '측정데이타',\n type: 'boolean',\n quota: 3,\n active: true,\n spec: {\n CCP: {\n criticalLimits: {\n acceptables: true\n },\n targetLimits: {\n acceptables: true\n }\n }\n }\n },\n {\n name: '품평',\n description: '품평은 최우수/우수/보통/미달을 포함하여 간단히 평가.',\n sequence: 4,\n tag: 'evaluation',\n group: '측정데이타',\n type: 'select',\n options: {\n options: [\n { text: '최우수', value: '최우수' },\n { text: '우수', value: '우수' },\n { text: '보통', value: '보통' },\n { text: '미달', value: '미달' }\n ]\n },\n quota: 3,\n active: true,\n spec: {\n CCP: {\n criticalLimits: {\n acceptables: ['최우수', '우수', '보통']\n },\n targetLimits: {\n acceptables: ['최우수', '우수']\n }\n }\n }\n },\n {\n name: '코멘트',\n description: '특이사항을 기록함.',\n sequence: 4,\n tag: 'comment',\n type: 'string',\n quota: 1,\n active: true\n },\n {\n name: '첨부파일',\n description: '참조 첨부 파일.',\n sequence: 4,\n tag: 'attachment',\n type: 'file',\n quota: 1,\n active: true\n }\n ]\n}\n\nvar dataOoc = {\n name: 'Data Sample Name',\n description: 'Data Sample이 어쩌구 저쩌구 그래서 중요합니다. 당연히 그래야죠.',\n useCase: 'CCP',\n state: 'REVIEWED',\n judgment: {\n temp: {\n ooc: true,\n oos: false\n },\n humid: {\n ooc: false,\n oos: true\n }\n },\n data: {\n temp: [1000],\n humid: [20, 23, 21, 26, 27],\n inspection: [true, false, true],\n evaluation: ['최우수', '보통', '우수'],\n comment: '이것은 코멘트입니다.'\n },\n dataItems: dataSet.dataItems,\n spec: {\n temp: {\n name: '창고 온도',\n description: '창고 온도는 섭씨 0도 이하로 유지되어야 합니다.',\n spec: {\n CCP: {\n criticalLimits: {\n minimum: 100,\n maximum: 200\n },\n targetLimits: {\n minimum: 120,\n maximum: 180\n }\n }\n }\n },\n humid: {\n name: '창고 습도',\n description: '창고 습도는 30% 이하로 유지되어야 합니다.',\n spec: {\n CCP: {\n criticalLimits: {\n minimum: 10,\n maximum: 50\n },\n targetLimits: {\n minimum: 20,\n maximum: 40\n }\n }\n }\n },\n inspection: {\n name: '육안 검사',\n description: '육안 검사는 포장전 30분 내로 실행되어야 합니다.'\n },\n evaluation: {\n name: '품평',\n description: '품평은 최우수/우수/보통/미달을 포함하여 간단히 평가.',\n spec: {\n CCP: {\n criticalLimits: {\n acceptables: ['최우수', '우수', '보통']\n },\n targetLimits: {\n acceptables: ['최우수', '우수']\n }\n }\n }\n },\n comment: {\n name: '코멘트',\n description: '특이사항을 기록함.'\n },\n attachment: {\n name: '첨부파일',\n description: '참조 첨부 파일.'\n }\n },\n collectedAt: Date.now(),\n history: [\n {\n user: {\n id: 0,\n name: 'shnam'\n },\n state: 'ISSUED',\n timestamp: Date.now()\n },\n {\n user: {\n id: 0,\n name: 'shnam'\n },\n state: 'REVIEWED',\n comment: '금일 생산한 제품은 전량 폐기합니다',\n timestamp: Date.now()\n },\n {\n user: {\n id: 0,\n name: 'shnam'\n },\n state: 'CORRECTED',\n comment: '전량 폐기하였습니다',\n timestamp: Date.now()\n }\n ]\n}\n\nconst Template: Story<ArgTypes> = ({}: ArgTypes) =>\n html`\n <link href=\"/themes/app-theme.css\" rel=\"stylesheet\" />\n <link href=\"https://fonts.googleapis.com/css?family=Material+Icons&display=block\" rel=\"stylesheet\" />\n <style>\n body {\n }\n </style>\n\n <ox-data-ooc-view\n .dataSet=${dataSet}\n .dataOoc=${dataOoc}\n @change=${(e: CustomEvent) => console.log(e.detail)}\n ></ox-data-ooc-view>\n `\n\nexport const Regular = Template.bind({})\nRegular.args = {}\n"]}
1
+ {"version":3,"file":"ox-data-ooc-view.stories.js","sourceRoot":"","sources":["../../stories/ox-data-ooc-view.stories.ts"],"names":[],"mappings":"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","sourcesContent":["import '@operato/i18n'\nimport '../src/ox-data-ooc-view.js'\nimport '../src/usecase/ccp' /* register usecase CCP */\nimport '@material/web/icon/icon.js'\n\nimport { html, TemplateResult } from 'lit'\n\nexport default {\n title: 'ox-data-ooc-view',\n component: 'ox-data-ooc-view',\n argTypes: {}\n}\n\ninterface Story<T> {\n (args: T): TemplateResult\n args?: Partial<T>\n argTypes?: Record<string, unknown>\n}\n\ninterface ArgTypes {}\n\nconst dataSet = {\n name: 'sample',\n description: 'sample description',\n type: 'manual',\n useCase: 'CCP',\n dataItems: [\n {\n name: '창고 온도',\n description: '창고 온도는 섭씨 0도 이하로 유지되어야 합니다.',\n sequence: 1,\n tag: 'temp',\n group: '측정데이타',\n type: 'number',\n quota: 1,\n active: true,\n unit: '℃',\n spec: {\n CCP: {\n criticalLimits: {\n minimum: 100,\n maximum: 200\n },\n targetLimits: {\n minimum: 120,\n maximum: 180\n }\n }\n }\n },\n {\n name: '창고 습도',\n description: '창고 습도는 30% 이하로 유지되어야 합니다.',\n sequence: 2,\n tag: 'humid',\n group: '측정데이타',\n type: 'number',\n quota: 5,\n active: true,\n unit: '%',\n spec: {\n CCP: {\n criticalLimits: {\n minimum: 10,\n maximum: 50\n },\n targetLimits: {\n minimum: 20,\n maximum: 40\n }\n }\n }\n },\n {\n name: '육안 검사',\n description: '육안 검사는 포장전 30분 내로 실행되어야 합니다.',\n sequence: 3,\n tag: 'inspection',\n group: '측정데이타',\n type: 'boolean',\n quota: 3,\n active: true,\n spec: {\n CCP: {\n criticalLimits: {\n acceptables: true\n },\n targetLimits: {\n acceptables: true\n }\n }\n }\n },\n {\n name: '품평',\n description: '품평은 최우수/우수/보통/미달을 포함하여 간단히 평가.',\n sequence: 4,\n tag: 'evaluation',\n group: '측정데이타',\n type: 'select',\n options: {\n options: [\n { text: '최우수', value: '최우수' },\n { text: '우수', value: '우수' },\n { text: '보통', value: '보통' },\n { text: '미달', value: '미달' }\n ]\n },\n quota: 3,\n active: true,\n spec: {\n CCP: {\n criticalLimits: {\n acceptables: ['최우수', '우수', '보통']\n },\n targetLimits: {\n acceptables: ['최우수', '우수']\n }\n }\n }\n },\n {\n name: '코멘트',\n description: '특이사항을 기록함.',\n sequence: 4,\n tag: 'comment',\n type: 'string',\n quota: 1,\n active: true\n },\n {\n name: '첨부파일',\n description: '참조 첨부 파일.',\n sequence: 4,\n tag: 'attachment',\n type: 'file',\n quota: 1,\n active: true\n }\n ]\n}\n\nvar dataOoc = {\n name: 'Data Sample Name',\n description: 'Data Sample이 어쩌구 저쩌구 그래서 중요합니다. 당연히 그래야죠.',\n useCase: 'CCP',\n state: 'REVIEWED',\n judgment: {\n temp: {\n ooc: true,\n oos: false\n },\n humid: {\n ooc: false,\n oos: true\n }\n },\n data: {\n temp: [1000],\n humid: [20, 23, 21, 26, 27],\n inspection: [true, false, true],\n evaluation: ['최우수', '보통', '우수'],\n comment: '이것은 코멘트입니다.'\n },\n dataItems: dataSet.dataItems,\n spec: {\n temp: {\n name: '창고 온도',\n description: '창고 온도는 섭씨 0도 이하로 유지되어야 합니다.',\n spec: {\n CCP: {\n criticalLimits: {\n minimum: 100,\n maximum: 200\n },\n targetLimits: {\n minimum: 120,\n maximum: 180\n }\n }\n }\n },\n humid: {\n name: '창고 습도',\n description: '창고 습도는 30% 이하로 유지되어야 합니다.',\n spec: {\n CCP: {\n criticalLimits: {\n minimum: 10,\n maximum: 50\n },\n targetLimits: {\n minimum: 20,\n maximum: 40\n }\n }\n }\n },\n inspection: {\n name: '육안 검사',\n description: '육안 검사는 포장전 30분 내로 실행되어야 합니다.'\n },\n evaluation: {\n name: '품평',\n description: '품평은 최우수/우수/보통/미달을 포함하여 간단히 평가.',\n spec: {\n CCP: {\n criticalLimits: {\n acceptables: ['최우수', '우수', '보통']\n },\n targetLimits: {\n acceptables: ['최우수', '우수']\n }\n }\n }\n },\n comment: {\n name: '코멘트',\n description: '특이사항을 기록함.'\n },\n attachment: {\n name: '첨부파일',\n description: '참조 첨부 파일.'\n }\n },\n collectedAt: Date.now(),\n history: [\n {\n user: {\n id: 0,\n name: 'shnam'\n },\n state: 'ISSUED',\n timestamp: Date.now()\n },\n {\n user: {\n id: 0,\n name: 'shnam'\n },\n state: 'REVIEWED',\n comment: '금일 생산한 제품은 전량 폐기합니다',\n timestamp: Date.now()\n },\n {\n user: {\n id: 0,\n name: 'shnam'\n },\n state: 'CORRECTED',\n comment: '전량 폐기하였습니다',\n timestamp: Date.now()\n }\n ]\n}\n\nconst Template: Story<ArgTypes> = ({}: ArgTypes) => html`\n <link href=\"/themes/app-theme.css\" rel=\"stylesheet\" />\n <link\n href=\"https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL@20..48,100..700,0..1\"\n rel=\"stylesheet\"\n />\n <link\n href=\"https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL@20..48,100..700,0..1\"\n rel=\"stylesheet\"\n />\n <link\n href=\"https://fonts.googleapis.com/css2?family=Material+Symbols+Sharp:opsz,wght,FILL@20..48,100..700,0..1\"\n rel=\"stylesheet\"\n />\n\n <style>\n body {\n }\n </style>\n\n <ox-data-ooc-view\n .dataSet=${dataSet}\n .dataOoc=${dataOoc}\n @change=${(e: CustomEvent) => console.log(e.detail)}\n ></ox-data-ooc-view>\n`\n\nexport const Regular = Template.bind({})\nRegular.args = {}\n"]}
@@ -1,7 +1,7 @@
1
1
  import '@operato/i18n';
2
2
  import '../src/ox-data-sample-view.js';
3
3
  import '../src/usecase/ccp';
4
- import '@material/mwc-icon';
4
+ import '@material/web/icon/icon.js';
5
5
  import { TemplateResult } from 'lit';
6
6
  declare const _default: {
7
7
  title: string;
@@ -1,7 +1,7 @@
1
1
  import '@operato/i18n';
2
2
  import '../src/ox-data-sample-view.js';
3
3
  import '../src/usecase/ccp'; /* register usecase CCP */
4
- import '@material/mwc-icon';
4
+ import '@material/web/icon/icon.js';
5
5
  import { html } from 'lit';
6
6
  export default {
7
7
  title: 'ox-data-sample-view',
@@ -215,15 +215,27 @@ var dataSample = {
215
215
  collectedAt: Date.now()
216
216
  };
217
217
  const Template = ({}) => html `
218
- <link href="/themes/app-theme.css" rel="stylesheet" />
219
- <link href="https://fonts.googleapis.com/css?family=Material+Icons&display=block" rel="stylesheet" />
220
- <style>
221
- body {
222
- }
223
- </style>
218
+ <link href="/themes/app-theme.css" rel="stylesheet" />
219
+ <link
220
+ href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL@20..48,100..700,0..1"
221
+ rel="stylesheet"
222
+ />
223
+ <link
224
+ href="https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL@20..48,100..700,0..1"
225
+ rel="stylesheet"
226
+ />
227
+ <link
228
+ href="https://fonts.googleapis.com/css2?family=Material+Symbols+Sharp:opsz,wght,FILL@20..48,100..700,0..1"
229
+ rel="stylesheet"
230
+ />
224
231
 
225
- <ox-data-sample-view .dataSample=${dataSample}></ox-data-sample-view>
226
- `;
232
+ <style>
233
+ body {
234
+ }
235
+ </style>
236
+
237
+ <ox-data-sample-view .dataSample=${dataSample}></ox-data-sample-view>
238
+ `;
227
239
  export const Regular = Template.bind({});
228
240
  Regular.args = {};
229
241
  //# sourceMappingURL=ox-data-sample-view.stories.js.map