@projectcaluma/ember-distribution 1.0.0-beta.7 → 11.0.0-beta.24

Sign up to get free protection for your applications and to get access to all the features.
Files changed (59) hide show
  1. package/CHANGELOG.md +95 -0
  2. package/addon/abilities/distribution.js +19 -0
  3. package/addon/abilities/inquiry.js +20 -0
  4. package/addon/components/cd-document-header.hbs +20 -0
  5. package/addon/components/cd-inquiry-answer-form.hbs +34 -9
  6. package/addon/components/cd-inquiry-answer-form.js +30 -12
  7. package/addon/components/cd-inquiry-dialog/inquiry-deadline.hbs +7 -13
  8. package/addon/components/cd-inquiry-dialog/inquiry-divider.hbs +1 -1
  9. package/addon/components/cd-inquiry-dialog/inquiry-part.hbs +107 -44
  10. package/addon/components/cd-inquiry-dialog/inquiry-part.js +25 -8
  11. package/addon/components/cd-inquiry-dialog/inquiry.hbs +8 -4
  12. package/addon/components/cd-inquiry-dialog.hbs +19 -0
  13. package/addon/components/cd-inquiry-dialog.js +32 -3
  14. package/addon/components/cd-inquiry-edit-form.hbs +36 -17
  15. package/addon/components/cd-inquiry-edit-form.js +2 -2
  16. package/addon/components/cd-inquiry-new-form.hbs +35 -31
  17. package/addon/components/cd-inquiry-new-form.js +17 -45
  18. package/addon/components/cd-navigation/controls.hbs +47 -18
  19. package/addon/components/cd-navigation/controls.js +34 -9
  20. package/addon/components/cd-navigation/item.hbs +14 -11
  21. package/addon/components/cd-navigation/section.hbs +4 -4
  22. package/addon/components/cd-navigation/status-indicator.hbs +10 -15
  23. package/addon/components/cd-navigation.hbs +11 -14
  24. package/addon/components/cd-truncated.hbs +8 -0
  25. package/addon/components/cd-truncated.js +32 -0
  26. package/addon/config.js +12 -8
  27. package/addon/controllers/application.js +3 -0
  28. package/addon/controllers/new.js +1 -1
  29. package/addon/engine.js +9 -1
  30. package/addon/gql/fragments/inquiry.graphql +40 -14
  31. package/addon/gql/mutations/complete-inquiry-work-item.graphql +1 -1
  32. package/addon/gql/mutations/redo-work-item.graphql +8 -0
  33. package/addon/gql/queries/control-work-items.graphql +11 -0
  34. package/addon/gql/queries/inquiry-answer.graphql +17 -12
  35. package/addon/gql/queries/inquiry-dialog.graphql +3 -2
  36. package/addon/gql/queries/inquiry-edit.graphql +2 -0
  37. package/addon/gql/queries/inquiry-navigation.graphql +2 -1
  38. package/addon/services/distribution.js +42 -4
  39. package/addon/templates/application.hbs +17 -6
  40. package/addon/utils/inquiry-answer-status.js +34 -0
  41. package/addon/utils/inquiry-deadline.js +5 -7
  42. package/addon/utils/inquiry-status.js +12 -7
  43. package/app/components/cd-document-header.js +1 -0
  44. package/app/components/{cd-icon-button.js → cd-truncated.js} +1 -1
  45. package/app/styles/@projectcaluma/ember-distribution.scss +3 -2
  46. package/app/styles/_answer-form.scss +4 -0
  47. package/app/styles/_group-list.scss +7 -0
  48. package/app/styles/_inquiry-divider.scss +1 -1
  49. package/app/styles/_truncated.scss +3 -0
  50. package/app/utils/inquiry-answer-status.js +1 -0
  51. package/index.js +1 -6
  52. package/package.json +28 -29
  53. package/translations/de.yaml +30 -8
  54. package/translations/en.yaml +31 -9
  55. package/translations/fr.yaml +31 -9
  56. package/addon/components/cd-icon-button.hbs +0 -27
  57. package/addon/components/cd-icon-button.js +0 -22
  58. package/app/styles/_icon-button.scss +0 -13
  59. package/app/styles/_status-indicator.scss +0 -31
package/addon/config.js CHANGED
@@ -4,6 +4,7 @@ import { cached } from "tracked-toolbox";
4
4
 
5
5
  export const INQUIRY_STATUS = {
6
6
  DRAFT: "draft",
7
+ SKIPPED: "skipped",
7
8
  SENT: "sent",
8
9
  POSITIVE: "positive",
9
10
  NEGATIVE: "negative",
@@ -15,7 +16,7 @@ export default function config(target, property) {
15
16
  get() {
16
17
  return merge(
17
18
  {
18
- ui: { stack: false, small: false },
19
+ ui: { stack: false, small: false, readonly: false },
19
20
  controls: {
20
21
  createTask: "create-inquiry",
21
22
  completeTask: "complete-distribution",
@@ -27,7 +28,7 @@ export default function config(target, property) {
27
28
  infoQuestion: "inquiry-remark",
28
29
  answer: {
29
30
  statusQuestion: "inquiry-answer-status",
30
- infoQuestion: "inquiry-answer-reason",
31
+ infoQuestions: ["inquiry-answer-reason"],
31
32
  statusMapping: {
32
33
  "inquiry-answer-status-positive": INQUIRY_STATUS.POSITIVE,
33
34
  "inquiry-answer-status-negative": INQUIRY_STATUS.NEGATIVE,
@@ -37,20 +38,22 @@ export default function config(target, property) {
37
38
  buttons: {
38
39
  "compose-inquiry-answer": {
39
40
  color: "primary",
40
- label: "caluma.distribution.answer.release-for-review",
41
+ label: "caluma.distribution.answer.buttons.compose.label",
42
+ status: "caluma.distribution.answer.buttons.compose.status",
41
43
  },
42
44
  "confirm-inquiry-answer": {
43
45
  color: "primary",
44
- label: "caluma.distribution.answer.confirm",
46
+ label: "caluma.distribution.answer.buttons.confirm.label",
47
+ status: "caluma.distribution.answer.buttons.confirm.status",
45
48
  },
46
49
  "revise-inquiry-answer": {
47
50
  color: "default",
48
- label: "caluma.distribution.answer.revise",
51
+ label: "caluma.distribution.answer.buttons.revise.label",
49
52
  },
50
53
  "adjust-inquiry-answer": {
51
54
  color: "primary",
52
- label:
53
- "caluma.distribution.answer.release-adjustment-for-review",
55
+ label: "caluma.distribution.answer.buttons.adjust.label",
56
+ status: "caluma.distribution.answer.buttons.adjust.status",
54
57
  },
55
58
  },
56
59
  },
@@ -60,11 +63,12 @@ export default function config(target, property) {
60
63
  types: {
61
64
  suggestions: {
62
65
  label: "caluma.distribution.new.suggestions",
63
- icon: "bulb-outline",
66
+ icon: "star",
64
67
  iconColor: "warning",
65
68
  },
66
69
  },
67
70
  },
71
+ permissions: {},
68
72
  },
69
73
  getOwner(this).lookup("service:calumaOptions")?.distribution ?? {}
70
74
  );
@@ -1,7 +1,10 @@
1
1
  import Controller from "@ember/controller";
2
+ import { inject as service } from "@ember/service";
2
3
 
3
4
  import config from "@projectcaluma/ember-distribution/config";
4
5
 
5
6
  export default class ApplicationController extends Controller {
6
7
  @config config;
8
+
9
+ @service distribution;
7
10
  }
@@ -13,7 +13,7 @@ export default class NewController extends Controller {
13
13
 
14
14
  @cached
15
15
  get selectedTypes() {
16
- return this.types.split(",");
16
+ return this.types.split(",").filter(Boolean);
17
17
  }
18
18
 
19
19
  set selectedTypes(value) {
package/addon/engine.js CHANGED
@@ -11,7 +11,15 @@ export default class DistributionEngine extends Engine {
11
11
  Resolver = Resolver;
12
12
 
13
13
  dependencies = {
14
- services: ["apollo", "notification", "intl", "caluma-options"],
14
+ services: [
15
+ "apollo",
16
+ "notification",
17
+ "intl",
18
+ "caluma-options",
19
+ // this is just in case that a custom form widget uses the store or fetch service
20
+ "store",
21
+ "fetch",
22
+ ],
15
23
  };
16
24
  }
17
25
 
@@ -1,6 +1,21 @@
1
+ fragment InquiryAnswerButtons on Case {
2
+ workItems(filter: [{ tasks: $buttonTasks }, { status: READY }]) {
3
+ edges {
4
+ node {
5
+ id
6
+ status
7
+ task {
8
+ id
9
+ slug
10
+ }
11
+ }
12
+ }
13
+ }
14
+ }
15
+
1
16
  fragment InquiryDeadlineDocument on Document {
2
17
  id
3
- deadline: answers(question: $deadlineQuestion) {
18
+ deadline: answers(filter: [{ question: $deadlineQuestion }]) {
4
19
  edges {
5
20
  node {
6
21
  id
@@ -14,7 +29,7 @@ fragment InquiryDeadlineDocument on Document {
14
29
 
15
30
  fragment InquiryStatusDocument on Document {
16
31
  id
17
- status: answers(question: $statusQuestion) {
32
+ status: answers(filter: [{ question: $statusQuestion }]) {
18
33
  edges {
19
34
  node {
20
35
  id
@@ -30,6 +45,21 @@ fragment InquiryStatusDocument on Document {
30
45
  }
31
46
  }
32
47
 
48
+ fragment InquiryRequest on Document {
49
+ id
50
+ ...InquiryDeadlineDocument
51
+ info: answers(filter: [{ question: $infoQuestion }]) {
52
+ edges {
53
+ node {
54
+ id
55
+ ... on StringAnswer {
56
+ value
57
+ }
58
+ }
59
+ }
60
+ }
61
+ }
62
+
33
63
  fragment InquiryDialog on WorkItem {
34
64
  id
35
65
  addressedGroups
@@ -42,26 +72,22 @@ fragment InquiryDialog on WorkItem {
42
72
  slug
43
73
  }
44
74
  document {
45
- ...InquiryDeadlineDocument
46
- info: answers(question: $infoQuestion) {
47
- edges {
48
- node {
49
- id
50
- ... on StringAnswer {
51
- value
52
- }
53
- }
54
- }
55
- }
75
+ ...InquiryRequest
56
76
  }
57
77
  childCase {
58
78
  id
79
+ ...InquiryAnswerButtons
59
80
  document {
60
81
  ...InquiryStatusDocument
61
- info: answers(question: $answerInfoQuestion) {
82
+ info: answers(filter: [{ questions: $answerInfoQuestions }]) {
62
83
  edges {
63
84
  node {
64
85
  id
86
+ question {
87
+ id
88
+ label
89
+ slug
90
+ }
65
91
  ... on StringAnswer {
66
92
  value
67
93
  }
@@ -15,7 +15,7 @@ mutation CompleteInquiryWorkItem(
15
15
  id
16
16
  ...InquiryStatusDocument
17
17
  }
18
- workItems(tasks: $buttonTasks, status: READY) {
18
+ workItems(filter: [{ tasks: $buttonTasks }, { status: READY }]) {
19
19
  edges {
20
20
  node {
21
21
  id
@@ -0,0 +1,8 @@
1
+ mutation RedoWorkItem($workItem: ID!) {
2
+ redoWorkItem(input: { id: $workItem }) {
3
+ workItem {
4
+ id
5
+ isRedoable
6
+ }
7
+ }
8
+ }
@@ -50,4 +50,15 @@ query ControlWorkItems(
50
50
  }
51
51
  }
52
52
  }
53
+ case: allCases(filter: [{ id: $caseId }]) {
54
+ edges {
55
+ node {
56
+ id
57
+ parentWorkItem {
58
+ id
59
+ isRedoable
60
+ }
61
+ }
62
+ }
63
+ }
53
64
  }
@@ -1,31 +1,36 @@
1
- query InquiryAnswer($inquiry: ID!, $buttonTasks: [String]!) {
1
+ #import InquiryAnswerButtons, InquiryDeadlineDocument, InquiryRequest from '../fragments/inquiry.graphql'
2
+
3
+ query InquiryAnswer(
4
+ $inquiry: ID!
5
+ $buttonTasks: [String]!
6
+ $infoQuestion: ID!
7
+ $deadlineQuestion: ID!
8
+ ) {
2
9
  allWorkItems(filter: [{ id: $inquiry }]) {
3
10
  edges {
4
11
  node {
5
12
  id
6
13
  status
7
14
  addressedGroups
15
+ controllingGroups
16
+ createdAt
17
+ closedAt
8
18
  task {
9
19
  id
10
20
  slug
11
21
  }
22
+ document {
23
+ ...InquiryRequest
24
+ }
12
25
  childCase {
13
26
  id
14
27
  status
15
28
  document {
16
29
  id
30
+ modifiedContentAt
31
+ modifiedContentByUser
17
32
  }
18
- workItems(tasks: $buttonTasks, status: READY) {
19
- edges {
20
- node {
21
- id
22
- task {
23
- id
24
- slug
25
- }
26
- }
27
- }
28
- }
33
+ ...InquiryAnswerButtons
29
34
  }
30
35
  }
31
36
  }
@@ -1,11 +1,12 @@
1
- #import InquiryDialog, InquiryDeadlineDocument, InquiryStatusDocument from '../fragments/inquiry.graphql'
1
+ #import InquiryAnswerButtons, InquiryDialog, InquiryDeadlineDocument, InquiryStatusDocument, InquiryRequest from '../fragments/inquiry.graphql'
2
2
 
3
3
  query InquiryDialog(
4
4
  $task: ID!
5
+ $buttonTasks: [String]!
5
6
  $statusQuestion: ID!
6
7
  $deadlineQuestion: ID!
7
8
  $infoQuestion: ID!
8
- $answerInfoQuestion: ID!
9
+ $answerInfoQuestions: [ID]!
9
10
  $from: [String]!
10
11
  $to: [String]!
11
12
  $caseId: ID!
@@ -11,6 +11,8 @@ query InquiryEdit($inquiry: ID!) {
11
11
  }
12
12
  document {
13
13
  id
14
+ modifiedContentAt
15
+ modifiedContentByUser
14
16
  }
15
17
  }
16
18
  }
@@ -45,7 +45,8 @@ query InquiryNavigation(
45
45
  { task: $task }
46
46
  { controllingGroups: [$currentGroup], invert: true }
47
47
  { addressedGroups: [$currentGroup], invert: true }
48
- { status: COMPLETED }
48
+ { status: SUSPENDED, invert: true }
49
+ { status: CANCELED, invert: true }
49
50
  ]
50
51
  order: [{ attribute: CREATED_AT, direction: DESC }]
51
52
  ) {
@@ -2,9 +2,11 @@ import { getOwner } from "@ember/application";
2
2
  import Service, { inject as service } from "@ember/service";
3
3
  import { queryManager, getObservable } from "ember-apollo-client";
4
4
  import { dropTask } from "ember-concurrency";
5
- import { useTask } from "ember-resources";
5
+ import { trackedTask } from "ember-resources/util/ember-concurrency";
6
6
 
7
+ import { decodeId } from "@projectcaluma/ember-core/helpers/decode-id";
7
8
  import config from "@projectcaluma/ember-distribution/config";
9
+ import createInquiryMutation from "@projectcaluma/ember-distribution/gql/mutations/create-inquiry.graphql";
8
10
  import controlWorkItemsQuery from "@projectcaluma/ember-distribution/gql/queries/control-work-items.graphql";
9
11
  import inquiryNavigationQuery from "@projectcaluma/ember-distribution/gql/queries/inquiry-navigation.graphql";
10
12
 
@@ -12,6 +14,8 @@ export default class DistributionService extends Service {
12
14
  @service("-scheduler") scheduler;
13
15
  @service calumaOptions;
14
16
  @service router;
17
+ @service intl;
18
+ @service notification;
15
19
 
16
20
  @queryManager apollo;
17
21
 
@@ -21,14 +25,22 @@ export default class DistributionService extends Service {
21
25
  return getOwner(this).lookup("route:application").currentModel;
22
26
  }
23
27
 
24
- controls = useTask(this, this.fetchControls, () => [this.caseId]);
25
- navigation = useTask(this, this.fetchNavigation, () => [this.caseId]);
28
+ controls = trackedTask(this, this.fetchControls, () => [this.caseId]);
29
+ navigation = trackedTask(this, this.fetchNavigation, () => [this.caseId]);
26
30
 
27
31
  async refetch() {
28
- await getObservable(this.controls.value)?.refetch();
32
+ await this.refetchControls();
33
+ await this.refetchNavigation();
34
+ }
35
+
36
+ async refetchNavigation() {
29
37
  await getObservable(this.navigation.value)?.refetch();
30
38
  }
31
39
 
40
+ async refetchControls() {
41
+ await getObservable(this.controls.value)?.refetch();
42
+ }
43
+
32
44
  @dropTask
33
45
  *fetchControls(caseId) {
34
46
  return yield this.apollo.watchQuery({
@@ -79,4 +91,30 @@ export default class DistributionService extends Service {
79
91
 
80
92
  return response;
81
93
  }
94
+
95
+ @dropTask
96
+ *createInquiry(groups) {
97
+ try {
98
+ // get create inquiry work item to complete
99
+ const createId = decodeId(this.controls.value?.create.edges[0].node.id);
100
+
101
+ // create new inquiries
102
+ yield this.apollo.mutate({
103
+ mutation: createInquiryMutation,
104
+ variables: {
105
+ id: createId,
106
+ context: JSON.stringify({
107
+ addressed_groups: groups.map(String),
108
+ }),
109
+ },
110
+ });
111
+
112
+ // refetch navigation and controls data
113
+ yield this.refetch();
114
+ } catch (e) {
115
+ this.notification.danger(
116
+ this.intl.t("caluma.distribution.new.error", { count: groups.length })
117
+ );
118
+ }
119
+ }
82
120
  }
@@ -1,8 +1,19 @@
1
- <div uk-grid class={{if this.config.ui.stack "uk-grid-small"}}>
2
- <div class={{if this.config.ui.stack "uk-width-1-1" "uk-width-1-3"}}>
3
- <CdNavigation @caseId={{@model}} />
1
+ {{#if
2
+ (or
3
+ this.distribution.navigation.isRunning this.distribution.controls.isRunning
4
+ )
5
+ }}
6
+ <div class="uk-text-center">
7
+ <UkSpinner @ratio={{2}} />
4
8
  </div>
5
- <div class={{if this.config.ui.stack "uk-width-1-1" "uk-width-2-3"}}>
6
- {{outlet}}
9
+ {{else}}
10
+ <div uk-grid class={{if this.config.ui.stack "uk-grid-small"}}>
11
+ <div class={{if this.config.ui.stack "uk-width-1-1" "uk-width-1-3"}}>
12
+ <CdNavigation @caseId={{@model}} />
13
+ </div>
14
+ {{#if this.config.ui.stack}}<div class="uk-width-1-1"><hr /></div>{{/if}}
15
+ <div class={{if this.config.ui.stack "uk-width-1-1" "uk-width-2-3"}}>
16
+ {{outlet}}
17
+ </div>
7
18
  </div>
8
- </div>
19
+ {{/if}}
@@ -0,0 +1,34 @@
1
+ import { assert } from "@ember/debug";
2
+ import { get } from "@ember/object";
3
+
4
+ import { createDecorator } from "@projectcaluma/ember-distribution/-private/decorator";
5
+
6
+ function decorator(
7
+ target,
8
+ key,
9
+ desc,
10
+ { inquiryProperty = "args.inquiry" } = {}
11
+ ) {
12
+ assert(
13
+ `The @projectcaluma/ember-distribution config must be injected in order to use @inquiryAnswerStatus: \`@config config\``,
14
+ Object.prototype.hasOwnProperty.call(target, "config")
15
+ );
16
+
17
+ return {
18
+ get() {
19
+ const inquiry = get(this, inquiryProperty);
20
+ const readyWorkItems =
21
+ inquiry.childCase?.workItems.edges
22
+ .filter((edge) => edge.node.status === "READY")
23
+ .map((edge) => edge.node.task.slug) ?? [];
24
+
25
+ const buttonConfig = Object.entries(
26
+ this.config.inquiry.answer.buttons
27
+ ).find(([task]) => readyWorkItems.includes(task))?.[1];
28
+
29
+ return buttonConfig?.status ? this.intl.t(buttonConfig.status) : null;
30
+ },
31
+ };
32
+ }
33
+
34
+ export default createDecorator(decorator);
@@ -19,20 +19,18 @@ function decorator(
19
19
  get() {
20
20
  const inquiry = get(this, inquiryProperty);
21
21
  const value = inquiry.document?.deadline.edges[0]?.node.value;
22
- const isAnswered = inquiry.status === "COMPLETED";
22
+ const isDone = ["COMPLETED", "SKIPPED"].includes(inquiry.status);
23
23
 
24
- const deadline = DateTime.fromISO(value).startOf("day");
25
- const now = DateTime.now().startOf("day");
24
+ const { days: diff } = DateTime.fromISO(value).diffNow("days").toObject();
26
25
 
27
- const isOverdue = !isAnswered && now > deadline;
28
- const isWarning =
29
- !isAnswered && now.plus({ days: this.config.warningPeriod }) > deadline;
26
+ const isOverdue = !isDone && diff <= 0;
27
+ const isWarning = !isDone && diff <= this.config.warningPeriod;
30
28
 
31
29
  return {
32
30
  value,
33
31
  isOverdue,
34
32
  isWarning,
35
- color: isAnswered
33
+ color: isDone
36
34
  ? "muted"
37
35
  : isOverdue
38
36
  ? "danger"
@@ -5,15 +5,17 @@ import { createDecorator } from "@projectcaluma/ember-distribution/-private/deco
5
5
  import { INQUIRY_STATUS } from "@projectcaluma/ember-distribution/config";
6
6
 
7
7
  export const ICON_MAP = {
8
- [INQUIRY_STATUS.DRAFT]: "pencil-outline",
9
- [INQUIRY_STATUS.SENT]: "paper-plane-outline",
10
- [INQUIRY_STATUS.POSITIVE]: "checkmark-outline",
11
- [INQUIRY_STATUS.NEGATIVE]: "close-outline",
12
- [INQUIRY_STATUS.NEEDS_INTERACTION]: "repeat-outline",
8
+ [INQUIRY_STATUS.DRAFT]: "commenting",
9
+ [INQUIRY_STATUS.SKIPPED]: "lock",
10
+ [INQUIRY_STATUS.SENT]: "comment",
11
+ [INQUIRY_STATUS.POSITIVE]: "check",
12
+ [INQUIRY_STATUS.NEGATIVE]: "close",
13
+ [INQUIRY_STATUS.NEEDS_INTERACTION]: "file-text",
13
14
  };
14
15
 
15
16
  export const COLOR_MAP = {
16
17
  [INQUIRY_STATUS.DRAFT]: "muted",
18
+ [INQUIRY_STATUS.SKIPPED]: "muted",
17
19
  [INQUIRY_STATUS.SENT]: "emphasis",
18
20
  [INQUIRY_STATUS.POSITIVE]: "success",
19
21
  [INQUIRY_STATUS.NEGATIVE]: "danger",
@@ -44,9 +46,12 @@ function decorator(
44
46
  ? inquiry.status === "READY"
45
47
  : inquiry.status === "SUSPENDED";
46
48
  const isSent = !isAddressed && inquiry.status === "READY";
49
+ const isSkipped = inquiry.status === "SKIPPED";
47
50
 
48
51
  const answer = inquiry.childCase?.document.status.edges[0]?.node;
49
- const slug = isDraft
52
+ const slug = isSkipped
53
+ ? INQUIRY_STATUS.SKIPPED
54
+ : isDraft
50
55
  ? INQUIRY_STATUS.DRAFT
51
56
  : isSent
52
57
  ? INQUIRY_STATUS.SENT
@@ -55,7 +60,7 @@ function decorator(
55
60
  return {
56
61
  slug,
57
62
  label:
58
- !isDraft && !isSent
63
+ !isSkipped && !isDraft && !isSent
59
64
  ? answer?.selectedOption.label
60
65
  : this.intl.t(`caluma.distribution.status.${slug}`),
61
66
  color: COLOR_MAP[slug],
@@ -0,0 +1 @@
1
+ export { default } from "@projectcaluma/ember-distribution/components/cd-document-header";
@@ -1 +1 @@
1
- export { default } from "@projectcaluma/ember-distribution/components/cd-icon-button";
1
+ export { default } from "@projectcaluma/ember-distribution/components/cd-truncated";
@@ -1,3 +1,4 @@
1
- @import "../icon-button";
1
+ @import "../answer-form";
2
+ @import "../group-list";
2
3
  @import "../inquiry-divider";
3
- @import "../status-indicator";
4
+ @import "../truncated";
@@ -0,0 +1,4 @@
1
+ .inquiry-answer-form__request {
2
+ border-left: 5px solid $global-border;
3
+ padding-left: $global-gutter - 5px;
4
+ }
@@ -0,0 +1,7 @@
1
+ .group-list tr {
2
+ cursor: pointer;
3
+
4
+ > td:last-of-type svg {
5
+ min-width: 20px;
6
+ }
7
+ }
@@ -3,7 +3,7 @@
3
3
  $size: 36px;
4
4
  $iconSize: $size * 0.6;
5
5
 
6
- $sizeSmall: 24px;
6
+ $sizeSmall: 32px;
7
7
  $iconSizeSmall: $sizeSmall * 0.6;
8
8
 
9
9
  $colors: (
@@ -0,0 +1,3 @@
1
+ .cd-truncated {
2
+ white-space: pre-line;
3
+ }
@@ -0,0 +1 @@
1
+ export { default } from "@projectcaluma/ember-distribution/utils/inquiry-answer-status";
package/index.js CHANGED
@@ -5,11 +5,6 @@ const { buildEngine } = require("ember-engines/lib/engine-addon");
5
5
 
6
6
  const name = require("./package").name;
7
7
 
8
- const ioniconAssets = [
9
- ...require.resolve("ionicons").split("/").slice(0, -1),
10
- "svg",
11
- ].join("/");
12
-
13
8
  const publicAssets = [
14
9
  ...require.resolve(name).split("/").slice(0, -1),
15
10
  "public",
@@ -19,5 +14,5 @@ const publicAssets = [
19
14
  module.exports = buildEngine({
20
15
  name,
21
16
  lazyLoading: { enabled: false },
22
- svgJar: { sourceDirs: [ioniconAssets, publicAssets] },
17
+ svgJar: { sourceDirs: [publicAssets] },
23
18
  });