@things-factory/organization 10.1.34 → 10.1.37

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,3 +1,13 @@
1
1
  import '@material/web/icon/icon.js';
2
2
  import { FieldRenderer } from '@operato/data-grist';
3
+ /**
4
+ * 결재선 칸 — **결재 단계를 센다. 줄의 길이가 아니다.**
5
+ *
6
+ * 전에는 `value.length` 로 갈랐다. 그러면 참조만 있는 줄이 사람 아이콘을 얻고, 목록을 읽는 사람은
7
+ * 결재자가 있는 것으로 본다. 참조는 의견을 낼 뿐 판정하지 않으므로 그 업무는 올라가기만 하고
8
+ * 아무도 못 내린다. 무엇을 그릴지는 `approvalLineMark` 한 자리가 답한다.
9
+ *
10
+ * 「참조만」은 빈 칸으로 두지 않는다 — 고칠 사람이 할 일이 다르다. 줄이 없으면 만들어야 하고,
11
+ * 참조만 있으면 그 줄에 결재자를 더해야 한다.
12
+ */
3
13
  export declare const GristRendererApprovalLine: FieldRenderer;
@@ -1,10 +1,32 @@
1
1
  import '@material/web/icon/icon.js';
2
2
  import { html } from 'lit-html';
3
+ import { i18next } from '@operato/i18n';
4
+ import { approvalLineMark } from '../types/approval-line.js';
5
+ /**
6
+ * 결재선 칸 — **결재 단계를 센다. 줄의 길이가 아니다.**
7
+ *
8
+ * 전에는 `value.length` 로 갈랐다. 그러면 참조만 있는 줄이 사람 아이콘을 얻고, 목록을 읽는 사람은
9
+ * 결재자가 있는 것으로 본다. 참조는 의견을 낼 뿐 판정하지 않으므로 그 업무는 올라가기만 하고
10
+ * 아무도 못 내린다. 무엇을 그릴지는 `approvalLineMark` 한 자리가 답한다.
11
+ *
12
+ * 「참조만」은 빈 칸으로 두지 않는다 — 고칠 사람이 할 일이 다르다. 줄이 없으면 만들어야 하고,
13
+ * 참조만 있으면 그 줄에 결재자를 더해야 한다.
14
+ */
3
15
  export const GristRendererApprovalLine = (value, column, record, rowIndex, field) => {
4
- return !value || !(value instanceof Array) || value.length == 0
5
- ? html ``
6
- : value.length == 1
7
- ? html `<md-icon style="--md-icon-size:1.3em">person</md-icon>`
8
- : html `<md-icon style="--md-icon-size:1.3em">group</md-icon>`;
16
+ const icon = (name, key, muted = false) => html `<md-icon
17
+ style=${`--md-icon-size:1.3em${muted ? ';opacity:.55' : ''}`}
18
+ title=${i18next.t(key)}
19
+ >${name}</md-icon
20
+ >`;
21
+ switch (approvalLineMark(value)) {
22
+ case 'none':
23
+ return html ``;
24
+ case 'reference-only':
25
+ return icon('visibility', 'text.approval-line has references only', true);
26
+ case 'one':
27
+ return icon('person', 'text.approval-line has one approver');
28
+ default:
29
+ return icon('group', 'text.approval-line has several approvers');
30
+ }
9
31
  };
10
32
  //# sourceMappingURL=grist-renderer-approval-line.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"grist-renderer-approval-line.js","sourceRoot":"","sources":["../../client/grist-editor/grist-renderer-approval-line.ts"],"names":[],"mappings":"AAAA,OAAO,4BAA4B,CAAA;AAEnC,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAA;AAI/B,MAAM,CAAC,MAAM,yBAAyB,GAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE;IACjG,OAAO,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC;QAC7D,CAAC,CAAC,IAAI,CAAA,EAAE;QACR,CAAC,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC;YACnB,CAAC,CAAC,IAAI,CAAA,wDAAwD;YAC9D,CAAC,CAAC,IAAI,CAAA,uDAAuD,CAAA;AACjE,CAAC,CAAA","sourcesContent":["import '@material/web/icon/icon.js'\n\nimport { html } from 'lit-html'\n\nimport { FieldRenderer } from '@operato/data-grist'\n\nexport const GristRendererApprovalLine: FieldRenderer = (value, column, record, rowIndex, field) => {\n return !value || !(value instanceof Array) || value.length == 0\n ? html``\n : value.length == 1\n ? html`<md-icon style=\"--md-icon-size:1.3em\">person</md-icon>`\n : html`<md-icon style=\"--md-icon-size:1.3em\">group</md-icon>`\n}\n"]}
1
+ {"version":3,"file":"grist-renderer-approval-line.js","sourceRoot":"","sources":["../../client/grist-editor/grist-renderer-approval-line.ts"],"names":[],"mappings":"AAAA,OAAO,4BAA4B,CAAA;AAEnC,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAA;AAG/B,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAEvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AAE5D;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE;IACjG,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,GAAW,EAAE,KAAK,GAAG,KAAK,EAAE,EAAE,CAAC,IAAI,CAAA;YACrD,uBAAuB,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,EAAE;YACpD,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;OACnB,IAAI;IACP,CAAA;IAEF,QAAQ,gBAAgB,CAAC,KAAY,CAAC,EAAE,CAAC;QACvC,KAAK,MAAM;YACT,OAAO,IAAI,CAAA,EAAE,CAAA;QACf,KAAK,gBAAgB;YACnB,OAAO,IAAI,CAAC,YAAY,EAAE,wCAAwC,EAAE,IAAI,CAAC,CAAA;QAC3E,KAAK,KAAK;YACR,OAAO,IAAI,CAAC,QAAQ,EAAE,qCAAqC,CAAC,CAAA;QAC9D;YACE,OAAO,IAAI,CAAC,OAAO,EAAE,0CAA0C,CAAC,CAAA;IACpE,CAAC;AACH,CAAC,CAAA","sourcesContent":["import '@material/web/icon/icon.js'\n\nimport { html } from 'lit-html'\n\nimport { FieldRenderer } from '@operato/data-grist'\nimport { i18next } from '@operato/i18n'\n\nimport { approvalLineMark } from '../types/approval-line.js'\n\n/**\n * 결재선 칸 — **결재 단계를 센다. 줄의 길이가 아니다.**\n *\n * 전에는 `value.length` 로 갈랐다. 그러면 참조만 있는 줄이 사람 아이콘을 얻고, 목록을 읽는 사람은\n * 결재자가 있는 것으로 본다. 참조는 의견을 낼 뿐 판정하지 않으므로 그 업무는 올라가기만 하고\n * 아무도 못 내린다. 무엇을 그릴지는 `approvalLineMark` 한 자리가 답한다.\n *\n * 「참조만」은 빈 칸으로 두지 않는다 — 고칠 사람이 할 일이 다르다. 줄이 없으면 만들어야 하고,\n * 참조만 있으면 그 줄에 결재자를 더해야 한다.\n */\nexport const GristRendererApprovalLine: FieldRenderer = (value, column, record, rowIndex, field) => {\n const icon = (name: string, key: string, muted = false) => html`<md-icon\n style=${`--md-icon-size:1.3em${muted ? ';opacity:.55' : ''}`}\n title=${i18next.t(key)}\n >${name}</md-icon\n >`\n\n switch (approvalLineMark(value as any)) {\n case 'none':\n return html``\n case 'reference-only':\n return icon('visibility', 'text.approval-line has references only', true)\n case 'one':\n return icon('person', 'text.approval-line has one approver')\n default:\n return icon('group', 'text.approval-line has several approvers')\n }\n}\n"]}