PageSourceSearch

https://www.ibf.com.kh/assets/EditUserWorkPage.2d569d07.js

js ibf.com.kh collected 2026-10-09 21:43:46 UTC 27,059 bytes, 210 lines download raw bytes

1import { _ as _export_sfc, a9 as useUserStore, r as ref, o as onMounted, m as openBlock, A as createBlock, x as withCtx, p as createBaseVNode, j as createVNode, aM as QCardSection, C as QSeparator, n as createElementBlock, y as renderList, F as Fragment, a5 as QBtn, aN as QCard, t as toDisplayString, q as normalizeClass, ba as QInput, v as createCommentVNode } from "./index.6f7a794b.js";
2import { Q as QSelect } from "./QSelect.810c102a.js";
3import { Q as QForm } from "./QForm.4929f1f2.js";
4import { Q as QPage } from "./QPage.89183c37.js";
5import { u as useQuasar } from "./use-quasar.1ed7d5ca.js";
6import "./QField.83adcbce.js";
7import "./QChip.46ffda0d.js";
8import "./QItem.0e5842fe.js";
9import "./QMenu.a90d7506.js";
10import "./position-engine.d1b7c8f1.js";
11import "./selection.31c0c870.js";
12import "./rtl.276c3f1b.js";
13import "./format.054b8074.js";
14const _hoisted_1 = { class: "q-pa-md" };
15const _hoisted_2 = { class: "row q-col-gutter-md" };
16const _hoisted_3 = { class: "ibf-h11 text-weight-medium text-grey-6" };
17const _hoisted_4 = { align: "right" };
18const _sfc_main = {
19  __name: "EditUserWorkPage",
20  emits: ["form:success", "form:update"],
21  setup(__props, { emit: __emit }) {
22    const userStore = useUserStore();
23    const user = ref(userStore.getUser);
24    const roles = ref(userStore.getRoles);
25    const position = ref("Accountant");
26    const $q = useQuasar();
27    const dateFormRef = ref(null);
28    const emits = __emit;
29    const fields = ref([
30      {
31        label: "BFI Name",
32        type: "select",
33        value: user.value.bfis[0].name,
34        options: ["ACLEDA", "ABA", "Vattanak", "Institut of Banking & Finance"],
35        name: "BFIs",
36        class: "ibf-h11"
37      },
38      {
39        label: "Role",
40        type: "select",
41        value: roles.value[0],
42        name: "role",
43        class: "text-weight-bold text-primary ibf-h11",
44        disable: true
45      },
46      {
47        label: "Position",
48        type: "select",
49        value: position.value,
50        options: ["Software Engineer", "Accountant", "HR", "Marketing", "Sales"],
51        name: "position",
52        class: "ibf-h11"
53      },
54      {
55        label: "Email Address (Work)",
56        type: "input",
57        value: user.value.email,
58        name: "email",
59        class: "ibf-h11",
60        disabled: true
61      }
62    ]);
63    const onReset = () => {
64      console.log("Reseted");
65    };
66    const validate = () => {
67      dateFormRef.value.validate().then((success) => {
68        if (success) {
69          onSave();
70          emits("form:success");
71        } else {
72          $q.notify({
73            message: "Check the username and password again",
74            position: "top-right",
75            type: "negative"
76          });
77        }
78      });
79    };
80    const updateField = (field) => {
81      emits("form:update", field);
82    };
83    const onSave = () => {
84      if (user.value.bfis[0].name && roles.value[0] && position.value && user.value.email) {
85        $q.notify({
86          message: "Check the username and password again",
87          position: "top-right",
88          type: "green-4"
89        });
90        emits("form:update", {
91          bfis: user.value.bfis[0].name,
92          role: roles.value[0],
93          position: position.value,
94          email: user.value.email
95        });
96      } else {
97        $q.notify({
98          color: "red-5",
99          textColor: "white",
100          icon: "warning",
101          message: "Failed to submit, please check the fields."
102        });
103      }
104    };
105    const resetValidation = () => {
106      dateFormRef.value.resetValidation();
107    };
108    onMounted(() => {
109      userStore.getUser;
110    });
111    return (_ctx, _cache) => {
112      return openBlock(), createBlock(QPage, {
113        padding: "",
114        class: "ibf-container-1200",
115        id: "edit-user-profile"
116      }, {
117        default: withCtx(() => [
118          createBaseVNode("div", null, [
119            createVNode(QCard, {
120              flat: "",
121              bordered: "",
122              square: ""
123            }, {
124              default: withCtx(() => [
125                createVNode(QCardSection, null, {
126                  default: withCtx(() => [
127                    _cache[2] || (_cache[2] = createBaseVNode("div", { class: "row justify-between" }, [
128                      createBaseVNode("span", { class: "ibf-h9 text-weight-bold text-primary q-pa-sm" }, " Update Work Information ")
129                    ], -1)),
130                    createVNode(QSeparator, {
131                      spaced: "",
132                      color: "grey-3"
133                    }),
134                    createBaseVNode("div", _hoisted_1, [
135                      createVNode(QForm, {
136                        ref_key: "dateFormRef",
137                        ref: dateFormRef,
138                        onSubmit: _cache[0] || (_cache[0] = ($event) => validate()),
139                        onReset: _cache[1] || (_cache[1] = ($event) => resetValidation()),
140                        class: "q-gutter-y-md"
141                      }, {
142                        default: withCtx(() => [
143                          createBaseVNode("div", _hoisted_2, [
144                            (openBlock(true), createElementBlock(Fragment, null, renderList(fields.value, (field, index) => {
145                              return openBlock(), createElementBlock("div", {
146                                key: index,
147                                class: "col-6 q-gutter-xs"
148                              }, [
149                                createBaseVNode("div", _hoisted_3, toDisplayString(field.label), 1),
150                                field.type === "select" ? (openBlock(), createBlock(QSelect, {
151                                  key: 0,
152                                  class: normalizeClass(field.class),
153                                  outlined: "",
154                                  name: field.name,
155                                  label: field.label,
156                                  options: field.options,
157                                  modelValue: field.value,
158                                  "onUpdate:modelValue": [($event) => field.value = $event, ($event) => updateField(field)],
159                                  "label-color": "grey-6"
160                                }, null, 8, ["class", "name", "label", "options", "modelValue", "onUpdate:modelValue"])) : field.type === "input" ? (openBlock(), createBlock(QInput, {
161                                  key: 1,
162                                  class: normalizeClass(field.class),
163                                  name: field.name,
164                                  label: field.label,
165                                  modelValue: field.value,
166                                  "onUpdate:modelValue": ($event) => field.value = $event,
167                                  outlined: "",
168                                  clearable: "",
169                                  disabled: field.disabled,
170                                  "label-color": "grey-6"
171                                }, null, 8, ["class", "name", "label", "modelValue", "onUpdate:modelValue", "disabled"])) : createCommentVNode("", true)
172                              ]);
173                            }), 128))
174                          ]),
175                          createBaseVNode("div", _hoisted_4, [
176                            createVNode(QBtn, {
177                              label: "Cancel",
178                              type: "reset",
179                              onClick: onReset,
180                              color: "grey",
181                              flat: ""
182                            }),
183                            createVNode(QBtn, {
184                              flat: "",
185                              label: "Save",
186                              onClick: validate,
187                              type: "submit",
188                              color: "primary"
189                            })
190                          ])
191                        ]),
192                        _: 1
193                      }, 512)
194                    ])
195                  ]),
196                  _: 1
197                })
198              ]),
199              _: 1
200            })
201          ])
202        ]),
203        _: 1
204      });
205    };
206  }
207};
208var EditUserWorkPage = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "EditUserWorkPage.vue"]]);
209export { EditUserWorkPage as default };
210//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRWRpdFVzZXJXb3JrUGFnZS4yZDU2OWQwNy5qcyIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3BhZ2VzL3VzZXIvRWRpdFVzZXJXb3JrUGFnZS52dWUiXSwic291cmNlc0NvbnRlbnQiOlsiPHRlbXBsYXRlPlxuICA8cS1wYWdlIHBhZGRpbmcgY2xhc3M9XCJpYmYtY29udGFpbmVyLTEyMDBcIiBpZD1cImVkaXQtdXNlci1wcm9maWxlXCI+XG4gICAgPGRpdj5cbiAgICAgIDxxLWNhcmQgZmxhdCBib3JkZXJlZCBzcXVhcmU+XG4gICAgICAgIDxxLWNhcmQtc2VjdGlvbj5cbiAgICAgICAgICA8IS0tIDxkaXY+IC0tPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cganVzdGlmeS1iZXR3ZWVuXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImliZi1oOSB0ZXh0LXdlaWdodC1ib2xkIHRleHQtcHJpbWFyeSBxLXBhLXNtXCI+XG4gICAgICAgICAgICAgIFVwZGF0ZSBXb3JrIEluZm9ybWF0aW9uXG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICA8cS1zZXBhcmF0b3Igc3BhY2VkIGNvbG9yPVwiZ3JleS0zXCIgLz5cblxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJxLXBhLW1kXCI+XG4gICAgICAgICAgICA8cS1mb3JtXG4gICAgICAgICAgICAgI
210HJlZj1cImRhdGVGb3JtUmVmXCJcbiAgICAgICAgICAgICAgQHN1Ym1pdD1cInZhbGlkYXRlKClcIlxuICAgICAgICAgICAgICBAcmVzZXQ9XCJyZXNldFZhbGlkYXRpb24oKVwiXG4gICAgICAgICAgICAgIGNsYXNzPVwicS1ndXR0ZXIteS1tZFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgcS1jb2wtZ3V0dGVyLW1kXCI+XG4gICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgdi1mb3I9XCIoZmllbGQsIGluZGV4KSBpbiBmaWVsZHNcIlxuICAgICAgICAgICAgICAgICAgOmtleT1cImluZGV4XCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY29sLTYgcS1ndXR0ZXIteHNcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpYmYtaDExIHRleHQtd2VpZ2h0LW1lZGl1bSB0ZXh0LWdyZXktNlwiPlxuICAgICAgICAgICAgICAgICAgICB7eyBmaWVsZC5sYWJlbCB9fVxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8cS1zZWxlY3RcbiAgICAgICAgICAgICAgICAgICAgdi1pZj1cImZpZWxkLnR5cGUgPT09ICdzZWxlY3QnXCJcbiAgICAgICAgICAgICAgICAgICAgOmNsYXNzPVwiZmllbGQuY2xhc3NcIlxuICAgICAgICAgICAgICAgICAgICBvdXRsaW5lZFxuICAgICAgICAgICAgICAgICAgICA6bmFtZT1cImZpZWxkLm5hbWVcIlxuICAgICAgICAgICAgICAgICAgICA6bGFiZWw9XCJmaWVsZC5sYWJlbFwiXG4gICAgICAgICAgICAgICAgICAgIDpvcHRpb25zPVwiZmllbGQub3B0aW9uc1wiXG4gICAgICAgICAgICAgICAgICAgIHYtbW9kZWw9XCJmaWVsZC52YWx1ZVwiXG4gICAgICAgICAgICAgICAgICAgIEB1cGRhdGU6bW9kZWwtdmFsdWU9XCJ1cGRhdGVGaWVsZChmaWVsZClcIlxuICAgICAgICAgICAgICAgICAgICBsYWJlbC1jb2xvcj1cImdyZXktNlwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgPHEtaW5wdXRcbiAgICAgICAgICAgICAgICAgICAgdi1lbHNlLWlmPVwiZmllbGQudHlwZSA9PT0gJ2lucHV0J1wiXG4gICAgICAgICAgICAgICAgICAgIDpjbGFzcz1cImZpZWxkLmNsYXNzXCJcbiAgICAgICAgICAgICAgICAgICAgOm5hbWU9XCJmaWVsZC5uYW1lXCJcbiAgICAgICAgICAgICAgICAgICAgOmxhYmVsPVwiZmllbGQubGFiZWxcIlxuICAgICAgICAgICAgICAgICAgICB2LW1vZGVsPVwiZmllbGQudmFsdWVcIlxuICAgICAgICAgICAgICAgICAgICBvdXRsaW5lZFxuICAgICAgICAgICAgICAgICAgICBjbGVhcmFibGVcbiAgICAgICAgICAgICAgICAgICAgOmRpc2FibGVkPVwiZmllbGQuZGlzYWJsZWRcIlxuICAgICAgICAgICAgICAgICAgICBsYWJlbC1jb2xvcj1cImdyZXktNlwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICA8IS0tIGJ1dHRvbiBzdWJtaXQgb3IgcmVzZXQgLS0+XG4gICAgICAgICAgICAgIDxkaXYgYWxpZ249XCJyaWdodFwiPlxuICAgICAgICAgICAgICAgIDxxLWJ0blxuICAgICAgICAgICAgICAgICAgbGFiZWw9XCJDYW5jZWxcIlxuICAgICAgICAgICAgICAgICAgdHlwZT1cInJlc2V0XCJcbiAgICAgICAgICAgICAgICAgIEBjbGljaz1cIm9uUmVzZXRcIlxuICAgICAgICAgICAgICAgICAgY29sb3I9XCJncmV5XCJcbiAgICAgICAgICAgICAgICAgIGZsYXRcbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDxxLWJ0blxuICAgICAgICAgICAgICAgICAgZmxh
210dFxuICAgICAgICAgICAgICAgICAgbGFiZWw9XCJTYXZlXCJcbiAgICAgICAgICAgICAgICAgIEBjbGljaz1cInZhbGlkYXRlXCJcbiAgICAgICAgICAgICAgICAgIHR5cGU9XCJzdWJtaXRcIlxuICAgICAgICAgICAgICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvcS1mb3JtPlxuICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwicS1wYS1tZFwiPlxuICAgICAgICAgICAgPHEtZm9ybVxuICAgICAgICAgICAgICByZWY9XCJkYXRlRm9ybVJlZlwiXG4gICAgICAgICAgICAgIEBzdWJtaXQ9XCJ2YWxpZGF0ZSgpXCJcbiAgICAgICAgICAgICAgQHJlc2V0PVwicmVzZXRWYWxpZGF0aW9uKClcIlxuICAgICAgICAgICAgICBjbGFzcz1cInEtZ3V0dGVyLXktbWRcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IHEtY29sLWd1dHRlci1tZFwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtNiBxLWd1dHRlci14c1wiPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImliZi1oMTEgdGV4dC13ZWlnaHQtbWVkaXVtIHRleHQtZ3JleS02XCI+XG4gICAgICAgICAgICAgICAgICAgIEJGSSBOYW1lXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDxxLXNlbGVjdFxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImliZi1oMTFcIlxuICAgICAgICAgICAgICAgICAgICBvdXRsaW5lZFxuICAgICAgICAgICAgICAgICAgICBuYW1lPVwiQkZJc1wiXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsPVwiWW91ciBiZmlzXCJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1zaG93PVwianVtcC11cFwiXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb24taGlkZT1cImp1bXAtdXBcIlxuICAgICAgICAgICAgICAgICAgICB2LW1vZGVsPVwidXNlci5iZmlzWzBdLm5hbWVcIlxuICAgICAgICAgICAgICAgICAgICBAdXBkYXRlOm1vZGVsLXZhbHVlPVwidXNlci5iZmlzWzBdLm5hbWVcIlxuICAgICAgICAgICAgICAgICAgICA6b3B0aW9ucz1cIm9wdGlvbnNcIlxuICAgICAgICAgICAgICAgICAgICBsYWJlbC1jb2xvcj1cImdyZXktNlwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtNlwiPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImliZi1oMTAgdGV4dC1ncmV5LTdcIj5Sb2xlPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8cS1zZWxlY3RcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0ZXh0LXdlaWdodC1ib2xkIHRleHQtcHJpbWFyeSBpYmYtaDEwXCJcbiAgICAgICAgICAgICAgICAgICAgZGlzYWJsZWRcbiAgICAgICAgICAgICAgICAgICAgb3V0bGluZWRcbiAgICAgICAgICAgICAgICAgICAgbmFtZT1cInJvbGVcIlxuICAgICAgICAgICAgICAgICAgICBsYWJlbD1cIllvdXIgcm9sZVwiXG4gICAgICAgICAgICAgICAgICAgIHYtbW9kZWw9XCJyb2xlc1swXVwiXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsLWNvbG9yPVwiZ3JleS02XCJcbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDwvcS1zZWxlY3Q+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgcS1jb2wtZ3V0dGVyLXgtbWRcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTZcIj5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpYmYtaDEwIHRleHQtZ3JleS03XCI+XG4gICAgICAgICAgICAgICAgICAgIFBvc2l0aW9uXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDxxLXNlbGVjdFxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImliZi1oMTBcIlxuICAgICAgICAgICAgICAgICAgICBvdXRsaW5lZFxuICAgICAgICAgICAgICAgICAgICBuYW1lPVwiUG9zaXRpb25cIlxuICAgICAgICAgICAgICAgICAgICBsYWJlbD1cIllvdXIgcG9zaXRpb25cIlxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLXNob3c9XCJqdW1wLXVwXCJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1oaWRlPVwianVtcC11cFwiXG4gICAgICAgICAgICAgICAgICAgIHYtbW9kZWw9XCJwb3NpdGlvblwiXG4gICAgICAgICAgICAgICAgICAgIEB1cGRhdGU6bW9kZWwtdmFsdWU9XCJwb3NpdGlvblwiXG4gICAgICAgICAgICAgICAgICAgIDpvcHRpb25zPVwib3B0aW9uczJcIlxuICAgICAgICAgICAgICAgICAgICBsYWJlbC1jb2xvcj1cImdyZXktNlwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC02XCI+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaWJmLWgxMCB0ZXh0LWdyZXktN1wiPkVtYWlsIEFkZHJlc3MgKFdvcmspPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8cS1pbnB1dFxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImliZi1oMTBcIlxuICAgICAgICAgICAgICAgICAgICBkaXNhYmxlXG4gICAgICAgICAgICAgICAgICAgIG5hbWU9XCJlbWFpbFwiXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsPVwiWW91ciBjb21wYW55IG5hbWVcIlxuICAgICAgICAgICAgICAgICAgICB2LW1vZGVsPVwidXNlci5lbWFpbFwiXG4gICAgICAgICAgICAgICAgICAgIG91dGxpbmVkXG4gICAgICAgICAgICAgICAgICAgIGNsZWFyYWJsZVxuICAgICAgICAgICAgICAgICAgICBsYWJlbC1jb2xvcj1cImdyZXktNlwiXG4gICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICA8ZGl2IGFsaWduPVwicmlnaHRcIj5cbiAgICAgICAgICAgICAgICA8cS1idG5cbiAgICAgICAgICAgICAgICAgIGxhYmVsPVwiQ2FuY2VsXCJcbiAgICAgICAgICAgICAgICAgI
210HR5cGU9XCJyZXNldFwiXG4gICAgICAgICAgICAgICAgICB2LW1vZGVsPVwib25SZXNldFwiXG4gICAgICAgICAgICAgICAgICBjb2xvcj1cImdyZXlcIlxuICAgICAgICAgICAgICAgICAgZmxhdFxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPHEtYnRuXG4gICAgICAgICAgICAgICAgICBmbGF0XG4gICAgICAgICAgICAgICAgICBsYWJlbD1cIlNhdmVcIlxuICAgICAgICAgICAgICAgICAgQGNsaWNrPVwidmFsaWRhdGVcIlxuICAgICAgICAgICAgICAgICAgdHlwZT1cInN1Ym1pdFwiXG4gICAgICAgICAgICAgICAgICBjb2xvcj1cInByaW1hcnlcIlxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9xLWZvcm0+XG4gICAgICAgICAgPC9kaXY+IC0tPlxuXG4gICAgICAgICAgPCEtLSA8L2Rpdj4gLS0+XG4gICAgICAgIDwvcS1jYXJkLXNlY3Rpb24+XG4gICAgICA8L3EtY2FyZD5cblxuICAgICAgPCEtLTxwcmV2aWV3LWpzb24gOmxpc3Q9XCJ1c2VyXCI+PC9wcmV2aWV3LWpzb24+LS0+XG4gICAgPC9kaXY+XG4gIDwvcS1wYWdlPlxuPC90ZW1wbGF0ZT5cblxuPHNjcmlwdCBzZXR1cD5cbmltcG9ydCB7IHJlZiwgb25Nb3VudGVkLCBjb21wdXRlZCB9IGZyb20gXCJ2dWVcIjtcbmltcG9ydCB7IHVzZVVzZXJTdG9yZSB9IGZyb20gXCJzcmMvc3RvcmVzL3VzZXItc3RvcmVcIjtcbmltcG9ydCB7IHVzZVF1YXNhciB9IGZyb20gXCJxdWFzYXJcIjtcblxuY29uc3QgdXNlclN0b3JlID0gdXNlVXNlclN0b3JlKCk7XG5jb25zdCB1c2VyID0gcmVmKHVzZXJTdG9yZS5nZXRVc2VyKTtcbmNvbnN0IHJvbGVzID0gcmVmKHVzZXJTdG9yZS5nZXRSb2xlcyk7XG5cbmNvbnN0IHBvc2l0aW9uID0gcmVmKFwiQWNjb3VudGFudFwiKTtcbi8vIGNvbnN0IHVzZXIgPSB1c2VyU3RvcmUuZ2V0VXNlcjtcbi8vIGNvbnN0IHVzZXIgPSBjb21wdXRlZCgoKSA9PiB1c2VyU3RvcmUuZ2V0VXNlcik7XG4vLyBjb25zdCByb2xlcyA9IHVzZXJTdG9yZS5nZXRSb2xlcztcblxuY29uc3QgJHEgPSB1c2VRdWFzYXIoKTtcbmNvbnN0IGRhdGVGb3JtUmVmID0gcmVmKG51bGwpO1xuY29uc3QgZW1pdHMgPSBkZWZpbmVFbWl0cyhbXCJmb3JtOnN1Y2Nlc3NcIiwgXCJmb3JtOnVwZGF0ZVwiXSk7XG5cbmNvbnN0IGZpZWxkcyA9IHJlZihbXG4gIHtcbiAgICBsYWJlbDogXCJCRkkgTmFtZVwiLFxuICAgIHR5cGU6IFwic2VsZWN0XCIsXG4gICAgdmFsdWU6IHVzZXIudmFsdWUuYmZpc1swXS5uYW1lLFxuICAgIG9wdGlvbnM6IFtcIkFDTEVEQVwiLCBcIkFCQVwiLCBcIlZhdHRhbmFrXCIsIFwiSW5zdGl0dXQgb2YgQmFua2luZyAmIEZpbmFuY2VcIl0sXG4gICAgbmFtZTogXCJCRklzXCIsXG4gICAgY2xhc3M6IFwiaWJmLWgxMVwiLFxuICB9LFxuICB7XG4gICAgbGFiZWw6IFwiUm9sZVwiLFxuICAgIHR5cGU6IFwic2VsZWN0XCIsXG4gICAgdmFsdWU6IHJvbGVzLnZhbHVlWzBdLFxuICAgIC8vIG9wdGlvbnM6IFtcIk1hbmFnZXJcIiwgXCJFbXBsb3llZVwiLCBcIkFkbWluXCJdLFxuICAgIG5hbWU6IFwicm9sZVwiLFxuICAgIGNsYXNzOiBcInRleHQtd2VpZ2h0LWJvbGQgdGV4dC1wcmltYXJ5IGliZi1oMTFcIixcbiAgICBkaXNhYmxlOiB0cnVlLFxuICB9LFxuICB7XG4gICAgbGFiZWw6IFwiUG9zaXRpb25cIixcbiAgICB0eXBlOiBcInNlbGVjdFwiLFxuICAgIHZhbHVlOiBwb3NpdGlvbi52YWx1ZSxcbiAgICBvcHRpb25zOiBbXCJTb2Z0d2FyZSBFbmdpbmVlclwiLCBcIkFjY291bnRhbnRcIiwgXCJIUlwiLCBcIk1hcmtldGluZ1wiLCBcIlNhbGVzXCJdLFxuICAgIG5hbWU6IFwicG9zaXRpb25cIixcbiAgICBjbGFzczogXCJpYmYtaDExXCIsXG4gIH0sXG4gIHtcbiAgICBsYWJlbDogXCJFbWFpbCBBZGRyZXNzIChXb3JrKVwiLFxuICAgIHR5cGU6IFwiaW5wdXRcIixcbiAgICB2YWx1ZTogdXNlci52YWx1ZS5lbWFpbCxcbiAgICBuYW1lOiBcImVtYWlsXCIsXG4gICAgY2xhc3M6IFwiaWJmLWgxMVwiLFxuICAgIGRpc2FibGVkOiB0cnVlLFxuICB9LFxuXSk7XG5cbmNvbnN0IG9uUmVzZXQgPSAoKSA9PiB7XG4gIGNvbnNvbGUubG9nKFwiUmVzZXRlZFwiKTtcbn07XG5cbi8vIGNvbnN0IHZhbGlkYXRlID0gKCkgPT4ge1xuLy8gICBhdXRoRm9ybVJlZi52YWx1ZS52YWxpZGF0ZSgpLnRoZW4oKHN1Y2Nlc3MpID0+IHtcbi8vICAgICBpZiAoc3VjY2Vzcykge1xuLy8gICAgICAgbG9naW4oKTtcbi8vICAgICB9IGVsc2Uge1xuLy8gICAgICAgJHEubm90aWZ5KHtcbi8vICAgICAgICAgbWVzc2FnZTogXCJDaGVjayB0aGUgdXNlcm5hbWUgYW5kIHBhc3N3b3JkIGFnYWluXCIsXG4vLyAgICAgICAgIHBvc2l0aW9uOiBcInRvcC1yaWdodFwiLFxuLy8gICAgICAgICB0eXBlOiBcIm5lZ2F0aXZlXCIsXG4vLyAgICAgICB9KTtcbi8vICAgICB9XG4vLyAgIH0pO1xuLy8gfTtcblxuY29uc3QgdmFsaWRhdGUgPSAoKSA9PiB7XG4gIGRhdGVGb3JtUmVmLnZhbHVlLnZhbGlkYXRlKCkudGhlbigoc3VjY2VzcykgPT4ge1xuICAgIGlmIChzdWNjZXNzKSB7XG4gICAgICBvblNhdmUoKTtcbiAgICAgIGVtaXRzKFwiZm9ybTpzdWNjZXNzXCIpO1xuICAgIH0gZWxzZSB7XG4gICAgICAkcS5ub3RpZnkoe1xuICAgICAgICBtZXNzYWdlOiBcIkNoZWNrIHRoZSB1c2VybmFtZSBhbmQgcGFzc3dvcmQgYWdhaW5cIixcbiAgICAgICAgcG9zaXRpb246IFwidG9wLXJpZ2h0XCIsXG4gICAgICAgIHR5cGU6IFwibmVnYXRpdmVcIixcbiAgICAgIH0pO1xuICAgIH1cbiAgfSk7XG59O1xuY29uc3QgdXBkYXRlRmllbGQgPSAoZmllbGQpID0+IHtcbiAgZW1pdHMoXCJmb3JtOnVwZGF0ZVwiLCBmaWVsZCk7XG59O1xuXG5jb25zdCBvblNhdmUgPSAoKSA9PiB7XG4gIGlmIChcbiAgICB1c2VyLnZhbHVlLmJmaXNbMF0ubmFtZSAmJlxuICAgI
210HJvbGVzLnZhbHVlWzBdICYmXG4gICAgcG9zaXRpb24udmFsdWUgJiZcbiAgICB1c2VyLnZhbHVlLmVtYWlsXG4gICkge1xuICAgICRxLm5vdGlmeSh7XG4gICAgICBtZXNzYWdlOiBcIkNoZWNrIHRoZSB1c2VybmFtZSBhbmQgcGFzc3dvcmQgYWdhaW5cIixcbiAgICAgIHBvc2l0aW9uOiBcInRvcC1yaWdodFwiLFxuICAgICAgdHlwZTogXCJncmVlbi00XCIsXG4gICAgfSk7XG4gICAgLy8gJHEubm90aWZ5KHtcbiAgICAvLyAgIGNvbG9yOiBcImdyZWVuLTRcIixcbiAgICAvLyAgIHRleHRDb2xvcjogXCJ3aGl0ZVwiLFxuICAgIC8vICAgaWNvbjogXCJjbG91ZF9kb25lXCIsXG4gICAgLy8gICBtZXNzYWdlOiBcIkZvcm0gc3VibWl0dGVkIHN1Y2Nlc3NmdWxseSFcIixcbiAgICAvLyB9KTtcblxuICAgIC8vIEVtaXQgdGhlIHVwZGF0ZWQgZm9ybSBkYXRhIGJhY2sgdG8gUHJvZmlsZVBhZ2VcbiAgICBlbWl0cyhcImZvcm06dXBkYXRlXCIsIHtcbiAgICAgIGJmaXM6IHVzZXIudmFsdWUuYmZpc1swXS5uYW1lLFxuICAgICAgcm9sZTogcm9sZXMudmFsdWVbMF0sXG4gICAgICBwb3NpdGlvbjogcG9zaXRpb24udmFsdWUsXG4gICAgICBlbWFpbDogdXNlci52YWx1ZS5lbWFpbCxcbiAgICB9KTtcbiAgfSBlbHNlIHtcbiAgICAkcS5ub3RpZnkoe1xuICAgICAgY29sb3I6IFwicmVkLTVcIixcbiAgICAgIHRleHRDb2xvcjogXCJ3aGl0ZVwiLFxuICAgICAgaWNvbjogXCJ3YXJuaW5nXCIsXG4gICAgICBtZXNzYWdlOiBcIkZhaWxlZCB0byBzdWJtaXQsIHBsZWFzZSBjaGVjayB0aGUgZmllbGRzLlwiLFxuICAgIH0pO1xuICB9XG59O1xuXG5jb25zdCByZXNldFZhbGlkYXRpb24gPSAoKSA9PiB7XG4gIGRhdGVGb3JtUmVmLnZhbHVlLnJlc2V0VmFsaWRhdGlvbigpO1xufTtcblxuLy8gY29uc3QgZ2V0QmZpTmFtZSA9IGNvbXB1dGVkKHtcbi8vICAgZ2V0KCkge1xuLy8gICAgIHJldHVybiB1c2VyLnZhbHVlLmJmaXNbMF0ubmFtZSA/IHVzZXIudmFsdWUuYmZpc1swXS5uYW1lIDogXCJOL0FcIjtcbi8vICAgfSxcbi8vICAgc2V0KHZhbHVlKSB7XG4vLyAgICAgaWYgKHVzZXIudmFsdWUuYmZpc1swXS5uYW1lKSB7XG4vLyAgICAgICB1c2VyLnZhbHVlLmJmaXNbMF0ubmFtZSA9IHZhbHVlO1xuLy8gICAgIH1cbi8vICAgfVxuLy8gfSk7XG5cbmNvbnN0IG9wdGlvbnMgPSBbXCJBQ0xFREFcIiwgXCJBQkFcIiwgXCJWYXR0YW5ha1wiLCBcIkluc3RpdHV0IG9mIEJhbmtpbmcgJiBGaW5hbmNlXCJdO1xuXG4vLyBjb25zdCBzYXZlVXNlcldvcmsgPSAoKSA9PiB7XG4vLyAgIGlmIChcbi8vICAgICB1c2VyLnZhbHVlICYmXG4vLyAgICAgdXNlci52YWx1ZS5iZmlzWzBdLm5hbWUgJiZcbi8vICAgICByb2xlc1swXSAmJlxuLy8gICAgIHBvc2l0aW9uLnZhbHVlICYmXG4vLyAgICAgdXNlci52YWx1ZS5lbWFpbFxuLy8gICApIHtcbi8vICAgfSBlbHNlIHtcbi8vICAgICBjb25zb2xlLmVycm9yKFwiVXNlciBvciBjdXN0b21lciBkYXRhIGlzIG1pc3NpbmdcIik7XG4vLyAgIH1cbi8vIH07XG5cbi8vIGNvbnN0IG9uU3VibWl0ID0gKGV2dCkgPT4ge1xuLy8gICBjb25zdCBmb3JtRGF0YSA9IG5ldyBGb3JtRGF0YShldnQudGFyZ2V0KTtcbi8vICAgY29uc3QgZGF0YSA9IFtdO1xuXG4vLyAgIGZvciAoY29uc3QgW25hbWUsIHZhbHVlXSBvZiBmb3JtRGF0YS5lbnRyaWVzKCkpIHtcbi8vICAgICBkYXRhLnB1c2goe1xuLy8gICAgICAgbmFtZSxcbi8vICAgICAgIHZhbHVlLFxuLy8gICAgIH0pO1xuLy8gICB9XG5cbi8vICAgc3VibWl0UmVzdWx0LnZhbHVlID0gZGF0YTtcbi8vIH07XG5cbm9uTW91bnRlZCgoKSA9PiB7XG4gIGNvbnN0IHVzZXIgPSB1c2VyU3RvcmUuZ2V0VXNlcjtcbn0pO1xuXG4vLyBjb25zdCBmZXRjaERhdGFGcm9tQXBpID0gYXN5bmMgKCkgPT4ge1xuLy8gICB0cnkge1xuLy8gICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgYXhpb3MuZ2V0KFwiaHR0cHM6Ly9hcGkuZXhhbXBsZS5jb20vZGF0YVwiKTtcbi8vICAgICBkYXRhRnJvbUFwaS52YWx1ZSA9IHJlc3BvbnNlLmRhdGE7XG4vLyAgIH0gY2F0Y2ggKGVycm9yKSB7XG4vLyAgICAgY29uc29sZS5lcnJvcihcIkVycm9yIGZldGNoaW5nIGRhdGEgZnJvbSBBUEk6XCIsIGVycm9yKTtcbi8vICAgfVxuLy8gfTtcbjwvc2NyaXB0PlxuIl0sIm5hbWVzIjpbIl9jcmVhdGVCbG9jayIsIl9jcmVhdGVFbGVtZW50Vk5vZGUiLCJfY3JlYXRlVk5vZGUiLCJfb3BlbkJsb2NrIiwiX2NyZWF0ZUVsZW1lbnRCbG9jayIsIl9GcmFnbWVudCIsIl9yZW5kZXJMaXN0IiwiX3RvRGlzcGxheVN0cmluZyIsIl9ub3JtYWxpemVDbGFzcyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBc0xBLFVBQU0sWUFBWSxhQUFZO0FBQzlCLFVBQU0sT0FBTyxJQUFJLFVBQVUsT0FBTztBQUNsQyxVQUFNLFFBQVEsSUFBSSxVQUFVLFFBQVE7QUFFcEMsVUFBTSxXQUFXLElBQUksWUFBWTtBQUtqQyxVQUFNLEtBQUssVUFBUztBQUNwQixVQUFNLGNBQWMsSUFBSSxJQUFJO0FBQzVCLFVBQU0sUUFBUTtBQUVkLFVBQU0sU0FBUyxJQUFJO0FBQUEsTUFDakI7QUFBQSxRQUNFLE9BQU87QUFBQSxRQUNQLE1BQU07QUFBQSxRQUNOLE9BQU8sS0FBSyxNQUFNLEtBQUssR0FBRztBQUFBLFFBQzFCLFNBQVMsQ0FBQyxVQUFVLE9BQU8sWUFBWSwrQkFBK0I7QUFBQSxRQUN0RSxNQUFNO0FBQUEsUUFDTixPQUFPO0FBQUEsTUFDUj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

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.