@kubik-cms/wysiwyg 0.1.17 → 0.1.18
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.
- package/dist/wysiwyg.es.js +136 -15
- package/dist/wysiwyg.umd.js +23 -1
- package/package.json +1 -1
package/dist/wysiwyg.es.js
CHANGED
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
3
|
+
var __publicField = (obj, key, value) => {
|
|
4
|
+
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
5
|
+
return value;
|
|
6
|
+
};
|
|
1
7
|
function camelize(value) {
|
|
2
8
|
return value.replace(/(?:[_-])([a-z0-9])/g, (_, char) => char.toUpperCase());
|
|
3
9
|
}
|
|
@@ -804,13 +810,13 @@ function toString$1(value) {
|
|
|
804
810
|
}
|
|
805
811
|
var toString_1 = toString$1;
|
|
806
812
|
var isArray$1 = isArray_1, isKey = _isKey, stringToPath = _stringToPath, toString = toString_1;
|
|
807
|
-
function castPath$
|
|
813
|
+
function castPath$2(value, object) {
|
|
808
814
|
if (isArray$1(value)) {
|
|
809
815
|
return value;
|
|
810
816
|
}
|
|
811
817
|
return isKey(value, object) ? [value] : stringToPath(toString(value));
|
|
812
818
|
}
|
|
813
|
-
var _castPath = castPath$
|
|
819
|
+
var _castPath = castPath$2;
|
|
814
820
|
var MAX_SAFE_INTEGER = 9007199254740991;
|
|
815
821
|
var reIsUint = /^(?:0|[1-9]\d*)$/;
|
|
816
822
|
function isIndex$1(value, length) {
|
|
@@ -821,23 +827,23 @@ function isIndex$1(value, length) {
|
|
|
821
827
|
var _isIndex = isIndex$1;
|
|
822
828
|
var isSymbol = isSymbol_1;
|
|
823
829
|
var INFINITY = 1 / 0;
|
|
824
|
-
function toKey$
|
|
830
|
+
function toKey$2(value) {
|
|
825
831
|
if (typeof value == "string" || isSymbol(value)) {
|
|
826
832
|
return value;
|
|
827
833
|
}
|
|
828
834
|
var result = value + "";
|
|
829
835
|
return result == "0" && 1 / value == -INFINITY ? "-0" : result;
|
|
830
836
|
}
|
|
831
|
-
var _toKey = toKey$
|
|
832
|
-
var assignValue = _assignValue, castPath = _castPath, isIndex = _isIndex, isObject$2 = isObject_1, toKey = _toKey;
|
|
837
|
+
var _toKey = toKey$2;
|
|
838
|
+
var assignValue = _assignValue, castPath$1 = _castPath, isIndex = _isIndex, isObject$2 = isObject_1, toKey$1 = _toKey;
|
|
833
839
|
function baseSet$1(object, path, value, customizer) {
|
|
834
840
|
if (!isObject$2(object)) {
|
|
835
841
|
return object;
|
|
836
842
|
}
|
|
837
|
-
path = castPath(path, object);
|
|
843
|
+
path = castPath$1(path, object);
|
|
838
844
|
var index2 = -1, length = path.length, lastIndex = length - 1, nested = object;
|
|
839
845
|
while (nested != null && ++index2 < length) {
|
|
840
|
-
var key = toKey(path[index2]), newValue = value;
|
|
846
|
+
var key = toKey$1(path[index2]), newValue = value;
|
|
841
847
|
if (key === "__proto__" || key === "constructor" || key === "prototype") {
|
|
842
848
|
return object;
|
|
843
849
|
}
|
|
@@ -859,6 +865,22 @@ function set(object, path, value) {
|
|
|
859
865
|
return object == null ? object : baseSet(object, path, value);
|
|
860
866
|
}
|
|
861
867
|
var set_1 = set;
|
|
868
|
+
var castPath = _castPath, toKey = _toKey;
|
|
869
|
+
function baseGet$1(object, path) {
|
|
870
|
+
path = castPath(path, object);
|
|
871
|
+
var index2 = 0, length = path.length;
|
|
872
|
+
while (object != null && index2 < length) {
|
|
873
|
+
object = object[toKey(path[index2++])];
|
|
874
|
+
}
|
|
875
|
+
return index2 && index2 == length ? object : void 0;
|
|
876
|
+
}
|
|
877
|
+
var _baseGet = baseGet$1;
|
|
878
|
+
var baseGet = _baseGet;
|
|
879
|
+
function get(object, path, defaultValue) {
|
|
880
|
+
var result = object == null ? void 0 : baseGet(object, path);
|
|
881
|
+
return result === void 0 ? defaultValue : result;
|
|
882
|
+
}
|
|
883
|
+
var get_1 = get;
|
|
862
884
|
const isDate = (d) => d instanceof Date;
|
|
863
885
|
const isEmpty = (o) => Object.keys(o).length === 0;
|
|
864
886
|
const isObject$1 = (o) => o != null && typeof o === "object";
|
|
@@ -969,6 +991,12 @@ class kubik_widget_controller_default extends Controller {
|
|
|
969
991
|
this.getNewWidget();
|
|
970
992
|
}
|
|
971
993
|
}
|
|
994
|
+
overrideData(event) {
|
|
995
|
+
const fieldName = event.detail.fieldName;
|
|
996
|
+
const value = event.detail.newValues;
|
|
997
|
+
const duplicateData = set_1(this.dataValue, fieldName, value);
|
|
998
|
+
this.dataValue = duplicateData;
|
|
999
|
+
}
|
|
972
1000
|
updateField(event) {
|
|
973
1001
|
const name = event.currentTarget.name;
|
|
974
1002
|
let v = event.currentTarget.value;
|
|
@@ -978,6 +1006,18 @@ class kubik_widget_controller_default extends Controller {
|
|
|
978
1006
|
if (event.currentTarget.dataset.checkbox === "true" && event.currentTarget.type === "checkbox") {
|
|
979
1007
|
v = Array.from(event.currentTarget.parentElement.parentElement.querySelectorAll("[name=`${event.currentTarget.name}`]")).map((el) => el.checked ? el.value : null).filter((el) => el !== null);
|
|
980
1008
|
}
|
|
1009
|
+
if (event.currentTarget.dataset.repeatedKeyValue === "true") {
|
|
1010
|
+
const [field, idx, ...rest] = event.currentTarget.name.split(".").reverse();
|
|
1011
|
+
const fieldName = [rest.reverse().join("."), idx.toString(), field].join(".");
|
|
1012
|
+
get_1(this.dataValue, fieldName, "");
|
|
1013
|
+
}
|
|
1014
|
+
if (event.currentTarget.dataset.repeated === "true") {
|
|
1015
|
+
event.currentTarget.dataset.index;
|
|
1016
|
+
const [field, index2, ...rest] = event.currentTarget.name.split(".").reverse();
|
|
1017
|
+
const fieldName = rest.reverse().join(".");
|
|
1018
|
+
const fieldValues = get_1(this.dataValue, fieldName);
|
|
1019
|
+
v = set_1(fieldValues[index2], field, v);
|
|
1020
|
+
}
|
|
981
1021
|
const duplicateData = set_1(this.dataValue, name, v);
|
|
982
1022
|
this.dataValue = duplicateData;
|
|
983
1023
|
}
|
|
@@ -1030,6 +1070,8 @@ kubik_widget_controller_default.values = {
|
|
|
1030
1070
|
maxItems: { type: Number, default: 0 }
|
|
1031
1071
|
};
|
|
1032
1072
|
class kubik_repeater_controller_default extends Controller {
|
|
1073
|
+
connect() {
|
|
1074
|
+
}
|
|
1033
1075
|
updateHeader(event) {
|
|
1034
1076
|
this.headerTarget.innerHTML = event.currentTarget.value;
|
|
1035
1077
|
}
|
|
@@ -1039,6 +1081,92 @@ class kubik_repeater_controller_default extends Controller {
|
|
|
1039
1081
|
}
|
|
1040
1082
|
kubik_repeater_controller_default.targets = ["header"];
|
|
1041
1083
|
kubik_repeater_controller_default.classes = ["expanded"];
|
|
1084
|
+
class KubikKeyValueRepeaterController extends Controller {
|
|
1085
|
+
connect() {
|
|
1086
|
+
this.renderFields();
|
|
1087
|
+
}
|
|
1088
|
+
dataValueChanged() {
|
|
1089
|
+
console.log("dataValueChanged", this.dataValue);
|
|
1090
|
+
this.dispatch("updateData", {
|
|
1091
|
+
detail: {
|
|
1092
|
+
fieldName: this.fieldNameValue,
|
|
1093
|
+
newValues: this.dataValue
|
|
1094
|
+
}
|
|
1095
|
+
});
|
|
1096
|
+
}
|
|
1097
|
+
renderFields() {
|
|
1098
|
+
this.valuesContainerTarget.innerHTML = "";
|
|
1099
|
+
this.dataValue.forEach((item, index2) => {
|
|
1100
|
+
const prefix = this.prefixValue != "" ? `<span class='kubik--key_value_repeater--prefix para--small'>${this.prefixValue}</span>` : "";
|
|
1101
|
+
const formFields = this.fieldsValue.map((field) => {
|
|
1102
|
+
return `<input
|
|
1103
|
+
id='${this.fieldNameValue}-${this.widgetIdValue}'
|
|
1104
|
+
name='${field}'
|
|
1105
|
+
tabindex='1'
|
|
1106
|
+
type='text'
|
|
1107
|
+
value='${item[field]}'
|
|
1108
|
+
class='input'
|
|
1109
|
+
placeholder='${field}'
|
|
1110
|
+
data-index='${index2}'
|
|
1111
|
+
data-repeated-key-value='true'
|
|
1112
|
+
data-action='input->kubik-key-value-repeater#updateField'
|
|
1113
|
+
data-item-index='${index2}'
|
|
1114
|
+
>`;
|
|
1115
|
+
}).join("");
|
|
1116
|
+
const deleteButton = `<button
|
|
1117
|
+
class='kubik--key_value_repeater--delete_button'
|
|
1118
|
+
data-action='click->kubik-key-value-repeater#deleteField'
|
|
1119
|
+
data-index='${index2}'>Delete</button>
|
|
1120
|
+
`;
|
|
1121
|
+
this.valuesContainerTarget.insertAdjacentHTML(
|
|
1122
|
+
"beforeend",
|
|
1123
|
+
`
|
|
1124
|
+
<div class='kubik--key_value_repeater'>
|
|
1125
|
+
${prefix}
|
|
1126
|
+
${formFields}
|
|
1127
|
+
${deleteButton}
|
|
1128
|
+
</div>
|
|
1129
|
+
`
|
|
1130
|
+
);
|
|
1131
|
+
});
|
|
1132
|
+
}
|
|
1133
|
+
deleteField(event) {
|
|
1134
|
+
const index2 = event.target.dataset.index;
|
|
1135
|
+
this.dataValue = this.dataValue.filter((_, i) => i != index2);
|
|
1136
|
+
this.valuesContainerTarget.innerHTML = "";
|
|
1137
|
+
this.renderFields();
|
|
1138
|
+
}
|
|
1139
|
+
updateField(event) {
|
|
1140
|
+
const index2 = event.target.dataset.index;
|
|
1141
|
+
const name = event.target.name;
|
|
1142
|
+
const value = event.target.value;
|
|
1143
|
+
const updatedField = {
|
|
1144
|
+
...this.dataValue[index2],
|
|
1145
|
+
[name]: value
|
|
1146
|
+
};
|
|
1147
|
+
this.dataValue = [
|
|
1148
|
+
...this.dataValue.slice(0, index2),
|
|
1149
|
+
updatedField,
|
|
1150
|
+
...this.dataValue.slice(index2 + 1)
|
|
1151
|
+
];
|
|
1152
|
+
}
|
|
1153
|
+
addField() {
|
|
1154
|
+
const newField = this.fieldsValue.reduce((acc, field) => {
|
|
1155
|
+
acc[field] = "";
|
|
1156
|
+
return acc;
|
|
1157
|
+
}, {});
|
|
1158
|
+
this.dataValue = [...this.dataValue, newField];
|
|
1159
|
+
this.renderFields();
|
|
1160
|
+
}
|
|
1161
|
+
}
|
|
1162
|
+
__publicField(KubikKeyValueRepeaterController, "targets", ["valuesContainer"]);
|
|
1163
|
+
__publicField(KubikKeyValueRepeaterController, "values", {
|
|
1164
|
+
data: Array,
|
|
1165
|
+
widgetId: String,
|
|
1166
|
+
fields: Array,
|
|
1167
|
+
fieldName: String,
|
|
1168
|
+
prefix: String
|
|
1169
|
+
});
|
|
1042
1170
|
function makeElement(tagName, classNames = [], attributes = {}, textContent = "") {
|
|
1043
1171
|
const el = document.createElement(tagName);
|
|
1044
1172
|
el.classList.add(...classNames);
|
|
@@ -1226,13 +1354,6 @@ kubik_autocomplete_controller_default.values = {
|
|
|
1226
1354
|
results: { type: Array, default: [] },
|
|
1227
1355
|
resultActive: Number
|
|
1228
1356
|
};
|
|
1229
|
-
class KubikWysiwygController extends Controller {
|
|
1230
|
-
connect() {
|
|
1231
|
-
}
|
|
1232
|
-
change(event) {
|
|
1233
|
-
debugger;
|
|
1234
|
-
}
|
|
1235
|
-
}
|
|
1236
1357
|
const widgetWrapper = function widgetWrapper2(details = {}, data) {
|
|
1237
1358
|
let wrapperAttributes = {
|
|
1238
1359
|
"data-controller": "kubik-widget",
|
|
@@ -1302,8 +1423,8 @@ class PluginFactory {
|
|
|
1302
1423
|
var index = {
|
|
1303
1424
|
KubikWidgetController: kubik_widget_controller_default,
|
|
1304
1425
|
KubikRepeaterController: kubik_repeater_controller_default,
|
|
1426
|
+
KubikKeyValueRepeaterController,
|
|
1305
1427
|
PluginFactory,
|
|
1306
|
-
KubikWysiwygController,
|
|
1307
1428
|
KubikAutocompleteController: kubik_autocomplete_controller_default
|
|
1308
1429
|
};
|
|
1309
1430
|
export { index as default };
|
package/dist/wysiwyg.umd.js
CHANGED
|
@@ -1 +1,23 @@
|
|
|
1
|
-
(function(p,u){typeof exports=="object"&&typeof module!="undefined"?module.exports=u():typeof define=="function"&&define.amd?define(u):(p=typeof globalThis!="undefined"?globalThis:p||self,p.wysiwyg=u())})(this,function(){"use strict";function p(e){return e.replace(/(?:[_-])([a-z0-9])/g,(t,r)=>r.toUpperCase())}function u(e){return e.charAt(0).toUpperCase()+e.slice(1)}function ue(e){return e.replace(/([A-Z])/g,(t,r)=>`-${r.toLowerCase()}`)}function M(e,t){const r=R(e);return Array.from(r.reduce((a,s)=>(de(s,t).forEach(n=>a.add(n)),a),new Set))}function le(e,t){return R(e).reduce((a,s)=>(a.push(...he(s,t)),a),[])}function R(e){const t=[];for(;e;)t.push(e),e=Object.getPrototypeOf(e);return t.reverse()}function de(e,t){const r=e[t];return Array.isArray(r)?r:[]}function he(e,t){const r=e[t];return r?Object.keys(r).map(a=>[a,r[a]]):[]}(()=>{function e(r){function a(){return Reflect.construct(r,arguments,new.target)}return a.prototype=Object.create(r.prototype,{constructor:{value:a}}),Reflect.setPrototypeOf(a,r),a}function t(){const a=e(function(){this.a.call(this)});return a.prototype.a=function(){},new a}try{return t(),e}catch{return a=>class extends a{}}})();function fe(e){return M(e,"classes").reduce((r,a)=>Object.assign(r,pe(a)),{})}function pe(e){return{[`${e}Class`]:{get(){const{classes:t}=this;if(t.has(e))return t.get(e);{const r=t.getAttributeName(e);throw new Error(`Missing attribute "${r}"`)}}},[`${e}Classes`]:{get(){return this.classes.getAll(e)}},[`has${u(e)}Class`]:{get(){return this.classes.has(e)}}}}function ge(e){return M(e,"targets").reduce((r,a)=>Object.assign(r,ve(a)),{})}function ve(e){return{[`${e}Target`]:{get(){const t=this.targets.find(e);if(t)return t;throw new Error(`Missing target element "${e}" for "${this.identifier}" controller`)}},[`${e}Targets`]:{get(){return this.targets.findAll(e)}},[`has${u(e)}Target`]:{get(){return this.targets.has(e)}}}}function me(e){const t=le(e,"values"),r={valueDescriptorMap:{get(){return t.reduce((a,s)=>{const n=F(s,this.identifier),o=this.data.getAttributeNameForKey(n.key);return Object.assign(a,{[o]:n})},{})}}};return t.reduce((a,s)=>Object.assign(a,be(s)),r)}function be(e,t){const r=F(e,t),{key:a,name:s,reader:n,writer:o}=r;return{[s]:{get(){const i=this.data.get(a);return i!==null?n(i):r.defaultValue},set(i){i===void 0?this.data.delete(a):this.data.set(a,o(i))}},[`has${u(s)}`]:{get(){return this.data.has(a)||r.hasCustomDefaultValue}}}}function F([e,t],r){return we({controller:r,token:e,typeDefinition:t})}function C(e){switch(e){case Array:return"array";case Boolean:return"boolean";case Number:return"number";case Object:return"object";case String:return"string"}}function g(e){switch(typeof e){case"boolean":return"boolean";case"number":return"number";case"string":return"string"}if(Array.isArray(e))return"array";if(Object.prototype.toString.call(e)==="[object Object]")return"object"}function _e(e){const t=C(e.typeObject.type);if(!t)return;const r=g(e.typeObject.default);if(t!==r){const a=e.controller?`${e.controller}.${e.token}`:e.token;throw new Error(`The specified default value for the Stimulus Value "${a}" must match the defined type "${t}". The provided default value of "${e.typeObject.default}" is of type "${r}".`)}return t}function ye(e){const t=_e({controller:e.controller,token:e.token,typeObject:e.typeDefinition}),r=g(e.typeDefinition),a=C(e.typeDefinition),s=t||r||a;if(s)return s;const n=e.controller?`${e.controller}.${e.typeDefinition}`:e.token;throw new Error(`Unknown value type "${n}" for "${e.token}" value`)}function $e(e){const t=C(e);if(t)return Te[t];const r=e.default;return r!==void 0?r:e}function we(e){const t=`${ue(e.token)}-value`,r=ye(e);return{type:r,key:t,name:p(t),get defaultValue(){return $e(e.typeDefinition)},get hasCustomDefaultValue(){return g(e.typeDefinition)!==void 0},reader:Ce[r],writer:H[r]||H.default}}const Te={get array(){return[]},boolean:!1,number:0,get object(){return{}},string:""},Ce={array(e){const t=JSON.parse(e);if(!Array.isArray(t))throw new TypeError(`expected value of type "array" but instead got value "${e}" of type "${g(t)}"`);return t},boolean(e){return!(e=="0"||String(e).toLowerCase()=="false")},number(e){return Number(e)},object(e){const t=JSON.parse(e);if(t===null||typeof t!="object"||Array.isArray(t))throw new TypeError(`expected value of type "object" but instead got value "${e}" of type "${g(t)}"`);return t},string(e){return e}},H={default:Oe,array:z,object:z};function z(e){return JSON.stringify(e)}function Oe(e){return`${e}`}class l{constructor(t){this.context=t}static get shouldLoad(){return!0}get application(){return this.context.application}get scope(){return this.context.scope}get element(){return this.scope.element}get identifier(){return this.scope.identifier}get targets(){return this.scope.targets}get classes(){return this.scope.classes}get data(){return this.scope.data}initialize(){}connect(){}disconnect(){}dispatch(t,{target:r=this.element,detail:a={},prefix:s=this.identifier,bubbles:n=!0,cancelable:o=!0}={}){const i=s?`${s}:${t}`:t,c=new CustomEvent(i,{detail:a,bubbles:n,cancelable:o});return r.dispatchEvent(c),c}}l.blessings=[fe,ge,me],l.targets=[],l.values={};var b=typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof global!="undefined"?global:typeof self!="undefined"?self:{},je=typeof b=="object"&&b&&b.Object===Object&&b,Se=je,Ve=Se,Ae=typeof self=="object"&&self&&self.Object===Object&&self,De=Ve||Ae||Function("return this")(),O=De,Pe=O,xe=Pe.Symbol,j=xe,G=j,K=Object.prototype,Ne=K.hasOwnProperty,Ie=K.toString,v=G?G.toStringTag:void 0;function ke(e){var t=Ne.call(e,v),r=e[v];try{e[v]=void 0;var a=!0}catch{}var s=Ie.call(e);return a&&(t?e[v]=r:delete e[v]),s}var Ee=ke,Le=Object.prototype,Me=Le.toString;function Re(e){return Me.call(e)}var Fe=Re,W=j,He=Ee,ze=Fe,Ge="[object Null]",Ke="[object Undefined]",U=W?W.toStringTag:void 0;function We(e){return e==null?e===void 0?Ke:Ge:U&&U in Object(e)?He(e):ze(e)}var J=We;function Ue(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var S=Ue,Je=J,qe=S,Be="[object AsyncFunction]",Xe="[object Function]",Ze="[object GeneratorFunction]",Ye="[object Proxy]";function Qe(e){if(!qe(e))return!1;var t=Je(e);return t==Xe||t==Ze||t==Be||t==Ye}var et=Qe,tt=O,rt=tt["__core-js_shared__"],at=rt,V=at,q=function(){var e=/[^.]+$/.exec(V&&V.keys&&V.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function st(e){return!!q&&q in e}var nt=st,it=Function.prototype,ot=it.toString;function ct(e){if(e!=null){try{return ot.call(e)}catch{}try{return e+""}catch{}}return""}var ut=ct,lt=et,dt=nt,ht=S,ft=ut,pt=/[\\^$.*+?()[\]{}|]/g,gt=/^\[object .+?Constructor\]$/,vt=Function.prototype,mt=Object.prototype,bt=vt.toString,_t=mt.hasOwnProperty,yt=RegExp("^"+bt.call(_t).replace(pt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function $t(e){if(!ht(e)||dt(e))return!1;var t=lt(e)?yt:gt;return t.test(ft(e))}var wt=$t;function Tt(e,t){return e==null?void 0:e[t]}var Ct=Tt,Ot=wt,jt=Ct;function St(e,t){var r=jt(e,t);return Ot(r)?r:void 0}var A=St,Vt=A,At=function(){try{var e=Vt(Object,"defineProperty");return e({},"",{}),e}catch{}}(),Dt=At,B=Dt;function Pt(e,t,r){t=="__proto__"&&B?B(e,t,{configurable:!0,enumerable:!0,value:r,writable:!0}):e[t]=r}var xt=Pt;function Nt(e,t){return e===t||e!==e&&t!==t}var X=Nt,It=xt,kt=X,Et=Object.prototype,Lt=Et.hasOwnProperty;function Mt(e,t,r){var a=e[t];(!(Lt.call(e,t)&&kt(a,r))||r===void 0&&!(t in e))&&It(e,t,r)}var Rt=Mt,Ft=Array.isArray,D=Ft;function Ht(e){return e!=null&&typeof e=="object"}var zt=Ht,Gt=J,Kt=zt,Wt="[object Symbol]";function Ut(e){return typeof e=="symbol"||Kt(e)&&Gt(e)==Wt}var P=Ut,Jt=D,qt=P,Bt=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Xt=/^\w*$/;function Zt(e,t){if(Jt(e))return!1;var r=typeof e;return r=="number"||r=="symbol"||r=="boolean"||e==null||qt(e)?!0:Xt.test(e)||!Bt.test(e)||t!=null&&e in Object(t)}var Yt=Zt,Qt=A,er=Qt(Object,"create"),_=er,Z=_;function tr(){this.__data__=Z?Z(null):{},this.size=0}var rr=tr;function ar(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var sr=ar,nr=_,ir="__lodash_hash_undefined__",or=Object.prototype,cr=or.hasOwnProperty;function ur(e){var t=this.__data__;if(nr){var r=t[e];return r===ir?void 0:r}return cr.call(t,e)?t[e]:void 0}var lr=ur,dr=_,hr=Object.prototype,fr=hr.hasOwnProperty;function pr(e){var t=this.__data__;return dr?t[e]!==void 0:fr.call(t,e)}var gr=pr,vr=_,mr="__lodash_hash_undefined__";function br(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=vr&&t===void 0?mr:t,this}var _r=br,yr=rr,$r=sr,wr=lr,Tr=gr,Cr=_r;function d(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var a=e[t];this.set(a[0],a[1])}}d.prototype.clear=yr,d.prototype.delete=$r,d.prototype.get=wr,d.prototype.has=Tr,d.prototype.set=Cr;var Or=d;function jr(){this.__data__=[],this.size=0}var Sr=jr,Vr=X;function Ar(e,t){for(var r=e.length;r--;)if(Vr(e[r][0],t))return r;return-1}var y=Ar,Dr=y,Pr=Array.prototype,xr=Pr.splice;function Nr(e){var t=this.__data__,r=Dr(t,e);if(r<0)return!1;var a=t.length-1;return r==a?t.pop():xr.call(t,r,1),--this.size,!0}var Ir=Nr,kr=y;function Er(e){var t=this.__data__,r=kr(t,e);return r<0?void 0:t[r][1]}var Lr=Er,Mr=y;function Rr(e){return Mr(this.__data__,e)>-1}var Fr=Rr,Hr=y;function zr(e,t){var r=this.__data__,a=Hr(r,e);return a<0?(++this.size,r.push([e,t])):r[a][1]=t,this}var Gr=zr,Kr=Sr,Wr=Ir,Ur=Lr,Jr=Fr,qr=Gr;function h(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var a=e[t];this.set(a[0],a[1])}}h.prototype.clear=Kr,h.prototype.delete=Wr,h.prototype.get=Ur,h.prototype.has=Jr,h.prototype.set=qr;var Br=h,Xr=A,Zr=O,Yr=Xr(Zr,"Map"),Qr=Yr,Y=Or,ea=Br,ta=Qr;function ra(){this.size=0,this.__data__={hash:new Y,map:new(ta||ea),string:new Y}}var aa=ra;function sa(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}var na=sa,ia=na;function oa(e,t){var r=e.__data__;return ia(t)?r[typeof t=="string"?"string":"hash"]:r.map}var $=oa,ca=$;function ua(e){var t=ca(this,e).delete(e);return this.size-=t?1:0,t}var la=ua,da=$;function ha(e){return da(this,e).get(e)}var fa=ha,pa=$;function ga(e){return pa(this,e).has(e)}var va=ga,ma=$;function ba(e,t){var r=ma(this,e),a=r.size;return r.set(e,t),this.size+=r.size==a?0:1,this}var _a=ba,ya=aa,$a=la,wa=fa,Ta=va,Ca=_a;function f(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var a=e[t];this.set(a[0],a[1])}}f.prototype.clear=ya,f.prototype.delete=$a,f.prototype.get=wa,f.prototype.has=Ta,f.prototype.set=Ca;var Oa=f,Q=Oa,ja="Expected a function";function x(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(ja);var r=function(){var a=arguments,s=t?t.apply(this,a):a[0],n=r.cache;if(n.has(s))return n.get(s);var o=e.apply(this,a);return r.cache=n.set(s,o)||n,o};return r.cache=new(x.Cache||Q),r}x.Cache=Q;var Sa=x,Va=Sa,Aa=500;function Da(e){var t=Va(e,function(a){return r.size===Aa&&r.clear(),a}),r=t.cache;return t}var Pa=Da,xa=Pa,Na=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Ia=/\\(\\)?/g,ka=xa(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(Na,function(r,a,s,n){t.push(s?n.replace(Ia,"$1"):a||r)}),t}),Ea=ka;function La(e,t){for(var r=-1,a=e==null?0:e.length,s=Array(a);++r<a;)s[r]=t(e[r],r,e);return s}var Ma=La,ee=j,Ra=Ma,Fa=D,Ha=P,za=1/0,te=ee?ee.prototype:void 0,re=te?te.toString:void 0;function ae(e){if(typeof e=="string")return e;if(Fa(e))return Ra(e,ae)+"";if(Ha(e))return re?re.call(e):"";var t=e+"";return t=="0"&&1/e==-za?"-0":t}var Ga=ae,Ka=Ga;function Wa(e){return e==null?"":Ka(e)}var Ua=Wa,Ja=D,qa=Yt,Ba=Ea,Xa=Ua;function Za(e,t){return Ja(e)?e:qa(e,t)?[e]:Ba(Xa(e))}var Ya=Za,Qa=9007199254740991,es=/^(?:0|[1-9]\d*)$/;function ts(e,t){var r=typeof e;return t=t==null?Qa:t,!!t&&(r=="number"||r!="symbol"&&es.test(e))&&e>-1&&e%1==0&&e<t}var rs=ts,as=P,ss=1/0;function ns(e){if(typeof e=="string"||as(e))return e;var t=e+"";return t=="0"&&1/e==-ss?"-0":t}var is=ns,os=Rt,cs=Ya,us=rs,se=S,ls=is;function ds(e,t,r,a){if(!se(e))return e;t=cs(t,e);for(var s=-1,n=t.length,o=n-1,i=e;i!=null&&++s<n;){var c=ls(t[s]),T=r;if(c==="__proto__"||c==="constructor"||c==="prototype")return e;if(s!=o){var L=i[c];T=a?a(L,c,i):void 0,T===void 0&&(T=se(L)?L:us(t[s+1])?[]:{})}os(i,c,T),i=i[c]}return e}var hs=ds,fs=hs;function ps(e,t,r){return e==null?e:fs(e,t,r)}var m=ps;const N=e=>e instanceof Date,gs=e=>Object.keys(e).length===0,I=e=>e!=null&&typeof e=="object",vs=(e,...t)=>Object.prototype.hasOwnProperty.call(e,...t),k=e=>I(e)&&gs(e),ms=()=>Object.create(null),ne=(e,t)=>e===t?{}:!I(e)||!I(t)?t:N(e)||N(t)?e.valueOf()==t.valueOf()?{}:t:Object.keys(t).reduce((r,a)=>{if(vs(e,a)){const s=ne(e[a],t[a]);return k(s)&&!N(s)&&(k(e[a])||!k(t[a]))||(r[a]=s),r}return r},ms());function bs(e){return e!==null&&typeof e=="object"&&!(e instanceof Date)}var _s=Array.isArray;function ie(e,t,r,a){return Object.keys(e).forEach(function(s){var n=s.replace(/\./g,"\\.");if(bs(e[s])&&!_s(e[s])){var o=r&&r+"."+n;a&&t.push(r?o:n),ie(e[s],t,o||n,a)}else{var i=r?r+"."+n:n;t.push(i)}}),t}var ys=function(e,t){return ie(e,[],null,t)};function $s(e){return document.head.querySelector(`meta[name="${e}"]`).getAttribute("content")}function ws(e,t,r){if(r>=e.length)for(var a=r-e.length+1;a--;)e.push(void 0);return e.splice(r,0,e.splice(t,1)[0]),e}class oe extends l{connect(){this.getNewWidget()}moveItemUp(t){const r=t.currentTarget;this.moveItemToPosition(r,-1)}moveItemDown(t){const r=t.currentTarget;this.moveItemToPosition(r,1)}moveItemToPosition(t,r){const a=parseInt(t.dataset.itemIndex),s=t.dataset.targetList,n=this.dataValue[s].repeated_items,o=ws(n,a,a+r),i=Object.assign({},this.dataValue);i[s].repeated_items=o,this.dataValue=i}removeItem(t){const r=t.currentTarget,a=r.dataset.itemIndex,s=r.dataset.targetList,n=Object.assign({},this.dataValue);n[s].repeated_items.splice(a,1),this.dataValue=n,this.getNewWidget()}addItem(t){const a=t.currentTarget.dataset.targetList;typeof this.dataValue[a]=="undefined"&&(this.dataValue=Object.assign({},this.dataValue,{[a]:{repeated_items:[]}})),this.dataValue=Object.assign({},this.dataValue,{[a]:{repeated_items:[...this.dataValue[a].repeated_items,{}]}}),this.getNewWidget()}dataValueChanged(t,r){const a=ne(t,r),s=ys(a);(a.items&&a.items.repeated_items&&JSON.stringify(Object.values(a.items.repeated_items)[0])===JSON.stringify({})||s.filter(o=>o.match(/^id$|\.id$/g)).length>0)&&this.getNewWidget()}updateField(t){const r=t.currentTarget.name;let a=t.currentTarget.value;t.currentTarget.dataset.boolean==="true"&&t.currentTarget.type==="checkbox"&&!t.currentTarget.checked&&(a=0),t.currentTarget.dataset.checkbox==="true"&&t.currentTarget.type==="checkbox"&&(a=Array.from(t.currentTarget.parentElement.parentElement.querySelectorAll("[name=`${event.currentTarget.name}`]")).map(n=>n.checked?n.value:null).filter(n=>n!==null));const s=m(this.dataValue,r,a);this.dataValue=s}updateWysiwygField(t){const r=t.currentTarget.dataset.fieldName,a=m(this.dataValue,r,t.currentTarget.innerHTML);this.dataValue=a}selectResult(t){const r=t.currentTarget,a=JSON.parse(r.dataset.returnObject),s=m(this.dataValue,r.dataset.fieldName,a.id);this.dataValue=s,this.getNewWidget()}removeResource(t){const r=t.currentTarget,a=m(this.dataValue,r.dataset.fieldName,null);this.dataValue=a,this.getNewWidget()}receiveModalReturn(t){const r=t,a=m(this.dataValue,r.return_payload.field_name,r.payload.id);this.dataValue=a,this.getNewWidget()}getNewWidget(){fetch(`${this.setupValue.src}.json`,{method:"POST",headers:{"Content-Type":"application/json","X-CSRF-Token":$s("csrf-token")},body:JSON.stringify({widget_id:this.widgetIdValue,data:this.dataValue,setup:this.setupValue,max_items:this.maxItemsValue})}).then(t=>t.json()).then(t=>{this.element.innerHTML=t.html_data})}}oe.values={widgetId:String,setup:Object,data:Object,maxItems:{type:Number,default:0}};class E extends l{updateHeader(t){this.headerTarget.innerHTML=t.currentTarget.value}toggleItem(t){Array.from(this.element.classList).includes(this.expandedClass)?this.element.classList.remove(this.expandedClass):this.element.classList.add(this.expandedClass)}}E.targets=["header"],E.classes=["expanded"];function ce(e,t=[],r={},a=""){const s=document.createElement(e);s.classList.add(...t);for(const n in r)s.setAttribute(n,r[n]);return typeof a=="string"&&(s.innerText=a),s}class w extends l{connect(){this._loadDefaultResults()}showForm(){this.element.classList.add(this.activeListClass)}cancel(t){t.preventDefault(),this.element.classList.remove(this.activeListClass)}errorValueChanged(){this.errorValue==""?this.element.classList.remove(this.fetchErrorClass):this.element.classList.add(this.fetchErrorClass)}resultActiveValueChanged(){if(this.resultTargets.forEach(t=>{t.classList.remove(this.activeResultClass)}),!isNaN(this.resultActiveValue)){const t=this.resultActiveValue;this.resultTargets[t].classList.add(this.activeResultClass)}}mouseOver(t){const r=t.currentTarget;this.resultActiveValue=parseInt(r.dataset.index)}mouseOut(t){this.resultActiveValue=null}resultsValueChanged(){const t=this.fieldNameValue;this.resultTargets.forEach(r=>r.remove()),this.resultActiveValue=null,this.resultsValue.forEach((r,a)=>{const s=Object.assign({receive_index:this.inputTarget.dataset.itemIndex},r),n=ce("li",["kubik-wysiwyg-component--item-autocomplete-results-list-item"],{"data-kubik-autocomplete-target":"result","data-index":a,"data-return-id":s.id,"data-return-object":JSON.stringify(s),"data-field-name":t,"data-action":"mouseout->kubik-autocomplete#mouseOut mouseover->kubik-autocomplete#mouseOver mousedown->kubik-widget#selectResult mousedown->kubik-autocomplete#blur"},r.return_object.display_name);this.resultsListTarget.insertBefore(n,this.feedbackTarget)}),this.resultActiveValue>this.resultsValue.length&&(this.resultActiveValue=this.resultsValue.length-1)}load(){this._fetchResults()}focus(){this.element.classList.add(this.activeClass)}blur(){this.errorValue="",this.inputTarget.blur(),this.connectionController.abort(),this.element.classList.remove(this.fetchErrorClass),this.element.classList.remove(this.loadingClass),this.element.classList.remove(this.activeClass)}_sourceURL(){const t=[window.location.protocol,window.location.host].join("//"),r=new URLSearchParams({kubik_search:"1",q:this.inputTarget.value});return new URL([this.srcValue,".json?",r.toString()].join(""),t)}_loadDefaultResults(){this._fetchResults()}keyCheck(t){switch(t.key){case"Down":case"ArrowDown":this._nextResult(),t.preventDefault(),t.stopImmediatePropagation();return;case"Up":case"ArrowUp":this._previousResult(),t.preventDefault(),t.stopImmediatePropagation();return;case"Enter":const r=this.resultTargets[this.resultActiveValue];r&&r.dispatchEvent(new Event("mousedown")),t.preventDefault(),t.stopImmediatePropagation();return;case"Backspace":t.stopImmediatePropagation();return}}_previousResult(){isNaN(this.resultActiveValue)?this.resultActiveValue=this.resultTargets.length>1?this.resultTargets.length-1:0:this.resultActiveValue=this.resultActiveValue==0?this.resultTargets.length-1:this.resultActiveValue-1}_nextResult(){isNaN(this.resultActiveValue)?this.resultActiveValue=0:this.resultActiveValue=this.resultActiveValue+1==this.resultTargets.length?0:this.resultActiveValue+1}_fetchResults(){this.errorValue="",this.feedbackTarget.innerHTML="Loading...",this.connectionController=new AbortController,fetch(this._sourceURL(),{headers:{"Content-Type":"application/json"}}).then(t=>t.json()).then(t=>{this.errorValue="",t.length>0&&(this.resultsValue=t,this.queryValue=this.inputTarget.value),this.inputTarget.value==""?(this.queryValue="",this.feedbackTarget.innerHTML="",this.feedbackTarget.insertAdjacentHTML("beforeend",`Showing latest <span>${t.length}</span> results`)):(this.feedbackTarget.innerHTML="",this.queryValue==""?this.feedbackTarget.insertAdjacentHTML("beforeend",`Showing latest <span>${t.length}</span> results`):this.feedbackTarget.insertAdjacentHTML("beforeend",`Showing results for <span>${this.queryValue}</span>`)),this.queryValue==this.inputTarget.value?this.element.classList.remove(this.noResultsClass):this.element.classList.add(this.noResultsClass)}).catch(t=>{this.feedbackTarget.innerHTML="",this.errorValue="Error loading the results"})}}w.classes=["fetchError","loading","active","activeResult","noResults","activeList"],w.targets=["feedback","input","resultsList","result"],w.values={returnController:String,src:String,fieldName:String,query:{type:String,default:""},error:{type:String,default:""},results:{type:Array,default:[]},resultActive:Number};class Ts extends l{connect(){}change(t){debugger}}const Cs=function(t={},r){let a={"data-controller":"kubik-widget","data-kubik-widget-setup-value":JSON.stringify(t.setup),"data-kubik-widget-data-value":JSON.stringify(r),"data-kubik-widget-widget-id-value":t.setup.widget_id,"data-kubik-widget-widget-icon":t.setup.config.icon,id:t.setup.widget_id};return t.items_limit&&(a["data-kubik-widget-items-max-items-value"]=t.items_limit),ce("div",["kubik_media_wrapper","kubik-wysiwyg-component"],a)};class Os{static get defaultWidgetConfig(){return{data_src:"/admin/kubik_wysiwyg_widget/show"}}constructor({data:t,api:r}){this.data=t,this.api=r,this.randomString=Math.random().toString(36).substring(2,7),this.label=this.constructor.toolbox.title;const a=this.constructor.defaultWidgetConfig,s=this.constructor.widgetConfig;this.config=Object.assign(a,s)}render(){const t=[this.config.widget_name,this.randomString].join("-");return Cs({setup:{label:this.label,widget_model:this.config.widget_model,src:this.config.data_src,widget_id:t,widget_type:this.config.widget_name,config:this.config}},this.data)}save(t){const r=JSON.parse(t.attributes["data-kubik-widget-data-value"].value);let a={};return this.config.tabs.forEach(s=>{a[s.name]=r[s.name]}),a}validate(t){return!0}}var js={KubikWidgetController:oe,KubikRepeaterController:E,PluginFactory:Os,KubikWysiwygController:Ts,KubikAutocompleteController:w};return js});
|
|
1
|
+
(function(l,u){typeof exports=="object"&&typeof module!="undefined"?module.exports=u():typeof define=="function"&&define.amd?define(u):(l=typeof globalThis!="undefined"?globalThis:l||self,l.wysiwyg=u())})(this,function(){"use strict";var Is=Object.defineProperty;var Ls=(l,u,d)=>u in l?Is(l,u,{enumerable:!0,configurable:!0,writable:!0,value:d}):l[u]=d;var R=(l,u,d)=>(Ls(l,typeof u!="symbol"?u+"":u,d),d);function l(e){return e.replace(/(?:[_-])([a-z0-9])/g,(t,r)=>r.toUpperCase())}function u(e){return e.charAt(0).toUpperCase()+e.slice(1)}function d(e){return e.replace(/([A-Z])/g,(t,r)=>`-${r.toLowerCase()}`)}function H(e,t){const r=z(e);return Array.from(r.reduce((a,s)=>(ve(s,t).forEach(n=>a.add(n)),a),new Set))}function ge(e,t){return z(e).reduce((a,s)=>(a.push(...me(s,t)),a),[])}function z(e){const t=[];for(;e;)t.push(e),e=Object.getPrototypeOf(e);return t.reverse()}function ve(e,t){const r=e[t];return Array.isArray(r)?r:[]}function me(e,t){const r=e[t];return r?Object.keys(r).map(a=>[a,r[a]]):[]}(()=>{function e(r){function a(){return Reflect.construct(r,arguments,new.target)}return a.prototype=Object.create(r.prototype,{constructor:{value:a}}),Reflect.setPrototypeOf(a,r),a}function t(){const a=e(function(){this.a.call(this)});return a.prototype.a=function(){},new a}try{return t(),e}catch{return a=>class extends a{}}})();function be(e){return H(e,"classes").reduce((r,a)=>Object.assign(r,_e(a)),{})}function _e(e){return{[`${e}Class`]:{get(){const{classes:t}=this;if(t.has(e))return t.get(e);{const r=t.getAttributeName(e);throw new Error(`Missing attribute "${r}"`)}}},[`${e}Classes`]:{get(){return this.classes.getAll(e)}},[`has${u(e)}Class`]:{get(){return this.classes.has(e)}}}}function ye(e){return H(e,"targets").reduce((r,a)=>Object.assign(r,$e(a)),{})}function $e(e){return{[`${e}Target`]:{get(){const t=this.targets.find(e);if(t)return t;throw new Error(`Missing target element "${e}" for "${this.identifier}" controller`)}},[`${e}Targets`]:{get(){return this.targets.findAll(e)}},[`has${u(e)}Target`]:{get(){return this.targets.has(e)}}}}function we(e){const t=ge(e,"values"),r={valueDescriptorMap:{get(){return t.reduce((a,s)=>{const n=G(s,this.identifier),i=this.data.getAttributeNameForKey(n.key);return Object.assign(a,{[i]:n})},{})}}};return t.reduce((a,s)=>Object.assign(a,Te(s)),r)}function Te(e,t){const r=G(e,t),{key:a,name:s,reader:n,writer:i}=r;return{[s]:{get(){const o=this.data.get(a);return o!==null?n(o):r.defaultValue},set(o){o===void 0?this.data.delete(a):this.data.set(a,i(o))}},[`has${u(s)}`]:{get(){return this.data.has(a)||r.hasCustomDefaultValue}}}}function G([e,t],r){return Se({controller:r,token:e,typeDefinition:t})}function V(e){switch(e){case Array:return"array";case Boolean:return"boolean";case Number:return"number";case Object:return"object";case String:return"string"}}function b(e){switch(typeof e){case"boolean":return"boolean";case"number":return"number";case"string":return"string"}if(Array.isArray(e))return"array";if(Object.prototype.toString.call(e)==="[object Object]")return"object"}function Ce(e){const t=V(e.typeObject.type);if(!t)return;const r=b(e.typeObject.default);if(t!==r){const a=e.controller?`${e.controller}.${e.token}`:e.token;throw new Error(`The specified default value for the Stimulus Value "${a}" must match the defined type "${t}". The provided default value of "${e.typeObject.default}" is of type "${r}".`)}return t}function Ve(e){const t=Ce({controller:e.controller,token:e.token,typeObject:e.typeDefinition}),r=b(e.typeDefinition),a=V(e.typeDefinition),s=t||r||a;if(s)return s;const n=e.controller?`${e.controller}.${e.typeDefinition}`:e.token;throw new Error(`Unknown value type "${n}" for "${e.token}" value`)}function Oe(e){const t=V(e);if(t)return je[t];const r=e.default;return r!==void 0?r:e}function Se(e){const t=`${d(e.token)}-value`,r=Ve(e);return{type:r,key:t,name:l(t),get defaultValue(){return Oe(e.typeDefinition)},get hasCustomDefaultValue(){return b(e.typeDefinition)!==void 0},reader:Ae[r],writer:K[r]||K.default}}const je={get array(){return[]},boolean:!1,number:0,get object(){return{}},string:""},Ae={array(e){const t=JSON.parse(e);if(!Array.isArray(t))throw new TypeError(`expected value of type "array" but instead got value "${e}" of type "${b(t)}"`);return t},boolean(e){return!(e=="0"||String(e).toLowerCase()=="false")},number(e){return Number(e)},object(e){const t=JSON.parse(e);if(t===null||typeof t!="object"||Array.isArray(t))throw new TypeError(`expected value of type "object" but instead got value "${e}" of type "${b(t)}"`);return t},string(e){return e}},K={default:xe,array:U,object:U};function U(e){return JSON.stringify(e)}function xe(e){return`${e}`}class h{constructor(t){this.context=t}static get shouldLoad(){return!0}get application(){return this.context.application}get scope(){return this.context.scope}get element(){return this.scope.element}get identifier(){return this.scope.identifier}get targets(){return this.scope.targets}get classes(){return this.scope.classes}get data(){return this.scope.data}initialize(){}connect(){}disconnect(){}dispatch(t,{target:r=this.element,detail:a={},prefix:s=this.identifier,bubbles:n=!0,cancelable:i=!0}={}){const o=s?`${s}:${t}`:t,c=new CustomEvent(o,{detail:a,bubbles:n,cancelable:i});return r.dispatchEvent(c),c}}h.blessings=[be,ye,we],h.targets=[],h.values={};var y=typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof global!="undefined"?global:typeof self!="undefined"?self:{},ke=typeof y=="object"&&y&&y.Object===Object&&y,Ne=ke,De=Ne,Pe=typeof self=="object"&&self&&self.Object===Object&&self,Ie=De||Pe||Function("return this")(),O=Ie,Le=O,Ee=Le.Symbol,S=Ee,W=S,J=Object.prototype,Fe=J.hasOwnProperty,Me=J.toString,_=W?W.toStringTag:void 0;function Re(e){var t=Fe.call(e,_),r=e[_];try{e[_]=void 0;var a=!0}catch{}var s=Me.call(e);return a&&(t?e[_]=r:delete e[_]),s}var He=Re,ze=Object.prototype,Ge=ze.toString;function Ke(e){return Ge.call(e)}var Ue=Ke,q=S,We=He,Je=Ue,qe="[object Null]",Be="[object Undefined]",B=q?q.toStringTag:void 0;function Xe(e){return e==null?e===void 0?Be:qe:B&&B in Object(e)?We(e):Je(e)}var X=Xe;function Ze(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var j=Ze,Ye=X,Qe=j,et="[object AsyncFunction]",tt="[object Function]",rt="[object GeneratorFunction]",at="[object Proxy]";function st(e){if(!Qe(e))return!1;var t=Ye(e);return t==tt||t==rt||t==et||t==at}var nt=st,it=O,ot=it["__core-js_shared__"],ut=ot,A=ut,Z=function(){var e=/[^.]+$/.exec(A&&A.keys&&A.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function ct(e){return!!Z&&Z in e}var lt=ct,dt=Function.prototype,ht=dt.toString;function ft(e){if(e!=null){try{return ht.call(e)}catch{}try{return e+""}catch{}}return""}var pt=ft,gt=nt,vt=lt,mt=j,bt=pt,_t=/[\\^$.*+?()[\]{}|]/g,yt=/^\[object .+?Constructor\]$/,$t=Function.prototype,wt=Object.prototype,Tt=$t.toString,Ct=wt.hasOwnProperty,Vt=RegExp("^"+Tt.call(Ct).replace(_t,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Ot(e){if(!mt(e)||vt(e))return!1;var t=gt(e)?Vt:yt;return t.test(bt(e))}var St=Ot;function jt(e,t){return e==null?void 0:e[t]}var At=jt,xt=St,kt=At;function Nt(e,t){var r=kt(e,t);return xt(r)?r:void 0}var x=Nt,Dt=x,Pt=function(){try{var e=Dt(Object,"defineProperty");return e({},"",{}),e}catch{}}(),It=Pt,Y=It;function Lt(e,t,r){t=="__proto__"&&Y?Y(e,t,{configurable:!0,enumerable:!0,value:r,writable:!0}):e[t]=r}var Et=Lt;function Ft(e,t){return e===t||e!==e&&t!==t}var Q=Ft,Mt=Et,Rt=Q,Ht=Object.prototype,zt=Ht.hasOwnProperty;function Gt(e,t,r){var a=e[t];(!(zt.call(e,t)&&Rt(a,r))||r===void 0&&!(t in e))&&Mt(e,t,r)}var Kt=Gt,Ut=Array.isArray,k=Ut;function Wt(e){return e!=null&&typeof e=="object"}var Jt=Wt,qt=X,Bt=Jt,Xt="[object Symbol]";function Zt(e){return typeof e=="symbol"||Bt(e)&&qt(e)==Xt}var N=Zt,Yt=k,Qt=N,er=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,tr=/^\w*$/;function rr(e,t){if(Yt(e))return!1;var r=typeof e;return r=="number"||r=="symbol"||r=="boolean"||e==null||Qt(e)?!0:tr.test(e)||!er.test(e)||t!=null&&e in Object(t)}var ar=rr,sr=x,nr=sr(Object,"create"),$=nr,ee=$;function ir(){this.__data__=ee?ee(null):{},this.size=0}var or=ir;function ur(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var cr=ur,lr=$,dr="__lodash_hash_undefined__",hr=Object.prototype,fr=hr.hasOwnProperty;function pr(e){var t=this.__data__;if(lr){var r=t[e];return r===dr?void 0:r}return fr.call(t,e)?t[e]:void 0}var gr=pr,vr=$,mr=Object.prototype,br=mr.hasOwnProperty;function _r(e){var t=this.__data__;return vr?t[e]!==void 0:br.call(t,e)}var yr=_r,$r=$,wr="__lodash_hash_undefined__";function Tr(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=$r&&t===void 0?wr:t,this}var Cr=Tr,Vr=or,Or=cr,Sr=gr,jr=yr,Ar=Cr;function p(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var a=e[t];this.set(a[0],a[1])}}p.prototype.clear=Vr,p.prototype.delete=Or,p.prototype.get=Sr,p.prototype.has=jr,p.prototype.set=Ar;var xr=p;function kr(){this.__data__=[],this.size=0}var Nr=kr,Dr=Q;function Pr(e,t){for(var r=e.length;r--;)if(Dr(e[r][0],t))return r;return-1}var w=Pr,Ir=w,Lr=Array.prototype,Er=Lr.splice;function Fr(e){var t=this.__data__,r=Ir(t,e);if(r<0)return!1;var a=t.length-1;return r==a?t.pop():Er.call(t,r,1),--this.size,!0}var Mr=Fr,Rr=w;function Hr(e){var t=this.__data__,r=Rr(t,e);return r<0?void 0:t[r][1]}var zr=Hr,Gr=w;function Kr(e){return Gr(this.__data__,e)>-1}var Ur=Kr,Wr=w;function Jr(e,t){var r=this.__data__,a=Wr(r,e);return a<0?(++this.size,r.push([e,t])):r[a][1]=t,this}var qr=Jr,Br=Nr,Xr=Mr,Zr=zr,Yr=Ur,Qr=qr;function g(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var a=e[t];this.set(a[0],a[1])}}g.prototype.clear=Br,g.prototype.delete=Xr,g.prototype.get=Zr,g.prototype.has=Yr,g.prototype.set=Qr;var ea=g,ta=x,ra=O,aa=ta(ra,"Map"),sa=aa,te=xr,na=ea,ia=sa;function oa(){this.size=0,this.__data__={hash:new te,map:new(ia||na),string:new te}}var ua=oa;function ca(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}var la=ca,da=la;function ha(e,t){var r=e.__data__;return da(t)?r[typeof t=="string"?"string":"hash"]:r.map}var T=ha,fa=T;function pa(e){var t=fa(this,e).delete(e);return this.size-=t?1:0,t}var ga=pa,va=T;function ma(e){return va(this,e).get(e)}var ba=ma,_a=T;function ya(e){return _a(this,e).has(e)}var $a=ya,wa=T;function Ta(e,t){var r=wa(this,e),a=r.size;return r.set(e,t),this.size+=r.size==a?0:1,this}var Ca=Ta,Va=ua,Oa=ga,Sa=ba,ja=$a,Aa=Ca;function v(e){var t=-1,r=e==null?0:e.length;for(this.clear();++t<r;){var a=e[t];this.set(a[0],a[1])}}v.prototype.clear=Va,v.prototype.delete=Oa,v.prototype.get=Sa,v.prototype.has=ja,v.prototype.set=Aa;var xa=v,re=xa,ka="Expected a function";function D(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(ka);var r=function(){var a=arguments,s=t?t.apply(this,a):a[0],n=r.cache;if(n.has(s))return n.get(s);var i=e.apply(this,a);return r.cache=n.set(s,i)||n,i};return r.cache=new(D.Cache||re),r}D.Cache=re;var Na=D,Da=Na,Pa=500;function Ia(e){var t=Da(e,function(a){return r.size===Pa&&r.clear(),a}),r=t.cache;return t}var La=Ia,Ea=La,Fa=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Ma=/\\(\\)?/g,Ra=Ea(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(Fa,function(r,a,s,n){t.push(s?n.replace(Ma,"$1"):a||r)}),t}),Ha=Ra;function za(e,t){for(var r=-1,a=e==null?0:e.length,s=Array(a);++r<a;)s[r]=t(e[r],r,e);return s}var Ga=za,ae=S,Ka=Ga,Ua=k,Wa=N,Ja=1/0,se=ae?ae.prototype:void 0,ne=se?se.toString:void 0;function ie(e){if(typeof e=="string")return e;if(Ua(e))return Ka(e,ie)+"";if(Wa(e))return ne?ne.call(e):"";var t=e+"";return t=="0"&&1/e==-Ja?"-0":t}var qa=ie,Ba=qa;function Xa(e){return e==null?"":Ba(e)}var Za=Xa,Ya=k,Qa=ar,es=Ha,ts=Za;function rs(e,t){return Ya(e)?e:Qa(e,t)?[e]:es(ts(e))}var oe=rs,as=9007199254740991,ss=/^(?:0|[1-9]\d*)$/;function ns(e,t){var r=typeof e;return t=t==null?as:t,!!t&&(r=="number"||r!="symbol"&&ss.test(e))&&e>-1&&e%1==0&&e<t}var is=ns,os=N,us=1/0;function cs(e){if(typeof e=="string"||os(e))return e;var t=e+"";return t=="0"&&1/e==-us?"-0":t}var ue=cs,ls=Kt,ds=oe,hs=is,ce=j,fs=ue;function ps(e,t,r,a){if(!ce(e))return e;t=ds(t,e);for(var s=-1,n=t.length,i=n-1,o=e;o!=null&&++s<n;){var c=fs(t[s]),m=r;if(c==="__proto__"||c==="constructor"||c==="prototype")return e;if(s!=i){var M=o[c];m=a?a(M,c,o):void 0,m===void 0&&(m=ce(M)?M:hs(t[s+1])?[]:{})}ls(o,c,m),o=o[c]}return e}var gs=ps,vs=gs;function ms(e,t,r){return e==null?e:vs(e,t,r)}var f=ms,bs=oe,_s=ue;function ys(e,t){t=bs(t,e);for(var r=0,a=t.length;e!=null&&r<a;)e=e[_s(t[r++])];return r&&r==a?e:void 0}var $s=ys,ws=$s;function Ts(e,t,r){var a=e==null?void 0:ws(e,t);return a===void 0?r:a}var le=Ts;const P=e=>e instanceof Date,Cs=e=>Object.keys(e).length===0,I=e=>e!=null&&typeof e=="object",Vs=(e,...t)=>Object.prototype.hasOwnProperty.call(e,...t),L=e=>I(e)&&Cs(e),Os=()=>Object.create(null),de=(e,t)=>e===t?{}:!I(e)||!I(t)?t:P(e)||P(t)?e.valueOf()==t.valueOf()?{}:t:Object.keys(t).reduce((r,a)=>{if(Vs(e,a)){const s=de(e[a],t[a]);return L(s)&&!P(s)&&(L(e[a])||!L(t[a]))||(r[a]=s),r}return r},Os());function Ss(e){return e!==null&&typeof e=="object"&&!(e instanceof Date)}var js=Array.isArray;function he(e,t,r,a){return Object.keys(e).forEach(function(s){var n=s.replace(/\./g,"\\.");if(Ss(e[s])&&!js(e[s])){var i=r&&r+"."+n;a&&t.push(r?i:n),he(e[s],t,i||n,a)}else{var o=r?r+"."+n:n;t.push(o)}}),t}var As=function(e,t){return he(e,[],null,t)};function xs(e){return document.head.querySelector(`meta[name="${e}"]`).getAttribute("content")}function ks(e,t,r){if(r>=e.length)for(var a=r-e.length+1;a--;)e.push(void 0);return e.splice(r,0,e.splice(t,1)[0]),e}class fe extends h{connect(){this.getNewWidget()}moveItemUp(t){const r=t.currentTarget;this.moveItemToPosition(r,-1)}moveItemDown(t){const r=t.currentTarget;this.moveItemToPosition(r,1)}moveItemToPosition(t,r){const a=parseInt(t.dataset.itemIndex),s=t.dataset.targetList,n=this.dataValue[s].repeated_items,i=ks(n,a,a+r),o=Object.assign({},this.dataValue);o[s].repeated_items=i,this.dataValue=o}removeItem(t){const r=t.currentTarget,a=r.dataset.itemIndex,s=r.dataset.targetList,n=Object.assign({},this.dataValue);n[s].repeated_items.splice(a,1),this.dataValue=n,this.getNewWidget()}addItem(t){const a=t.currentTarget.dataset.targetList;typeof this.dataValue[a]=="undefined"&&(this.dataValue=Object.assign({},this.dataValue,{[a]:{repeated_items:[]}})),this.dataValue=Object.assign({},this.dataValue,{[a]:{repeated_items:[...this.dataValue[a].repeated_items,{}]}}),this.getNewWidget()}dataValueChanged(t,r){const a=de(t,r),s=As(a);(a.items&&a.items.repeated_items&&JSON.stringify(Object.values(a.items.repeated_items)[0])===JSON.stringify({})||s.filter(i=>i.match(/^id$|\.id$/g)).length>0)&&this.getNewWidget()}overrideData(t){const r=t.detail.fieldName,a=t.detail.newValues,s=f(this.dataValue,r,a);this.dataValue=s}updateField(t){const r=t.currentTarget.name;let a=t.currentTarget.value;if(t.currentTarget.dataset.boolean==="true"&&t.currentTarget.type==="checkbox"&&!t.currentTarget.checked&&(a=0),t.currentTarget.dataset.checkbox==="true"&&t.currentTarget.type==="checkbox"&&(a=Array.from(t.currentTarget.parentElement.parentElement.querySelectorAll("[name=`${event.currentTarget.name}`]")).map(n=>n.checked?n.value:null).filter(n=>n!==null)),t.currentTarget.dataset.repeatedKeyValue==="true"){const[n,i,...o]=t.currentTarget.name.split(".").reverse(),c=[o.reverse().join("."),i.toString(),n].join(".");le(this.dataValue,c,"")}if(t.currentTarget.dataset.repeated==="true"){t.currentTarget.dataset.index;const[n,i,...o]=t.currentTarget.name.split(".").reverse(),c=o.reverse().join("."),m=le(this.dataValue,c);a=f(m[i],n,a)}const s=f(this.dataValue,r,a);this.dataValue=s}updateWysiwygField(t){const r=t.currentTarget.dataset.fieldName,a=f(this.dataValue,r,t.currentTarget.innerHTML);this.dataValue=a}selectResult(t){const r=t.currentTarget,a=JSON.parse(r.dataset.returnObject),s=f(this.dataValue,r.dataset.fieldName,a.id);this.dataValue=s,this.getNewWidget()}removeResource(t){const r=t.currentTarget,a=f(this.dataValue,r.dataset.fieldName,null);this.dataValue=a,this.getNewWidget()}receiveModalReturn(t){const r=t,a=f(this.dataValue,r.return_payload.field_name,r.payload.id);this.dataValue=a,this.getNewWidget()}getNewWidget(){fetch(`${this.setupValue.src}.json`,{method:"POST",headers:{"Content-Type":"application/json","X-CSRF-Token":xs("csrf-token")},body:JSON.stringify({widget_id:this.widgetIdValue,data:this.dataValue,setup:this.setupValue,max_items:this.maxItemsValue})}).then(t=>t.json()).then(t=>{this.element.innerHTML=t.html_data})}}fe.values={widgetId:String,setup:Object,data:Object,maxItems:{type:Number,default:0}};class E extends h{connect(){}updateHeader(t){this.headerTarget.innerHTML=t.currentTarget.value}toggleItem(t){Array.from(this.element.classList).includes(this.expandedClass)?this.element.classList.remove(this.expandedClass):this.element.classList.add(this.expandedClass)}}E.targets=["header"],E.classes=["expanded"];class F extends h{connect(){this.renderFields()}dataValueChanged(){console.log("dataValueChanged",this.dataValue),this.dispatch("updateData",{detail:{fieldName:this.fieldNameValue,newValues:this.dataValue}})}renderFields(){this.valuesContainerTarget.innerHTML="",this.dataValue.forEach((t,r)=>{const a=this.prefixValue!=""?`<span class='kubik--key_value_repeater--prefix para--small'>${this.prefixValue}</span>`:"",s=this.fieldsValue.map(i=>`<input
|
|
2
|
+
id='${this.fieldNameValue}-${this.widgetIdValue}'
|
|
3
|
+
name='${i}'
|
|
4
|
+
tabindex='1'
|
|
5
|
+
type='text'
|
|
6
|
+
value='${t[i]}'
|
|
7
|
+
class='input'
|
|
8
|
+
placeholder='${i}'
|
|
9
|
+
data-index='${r}'
|
|
10
|
+
data-repeated-key-value='true'
|
|
11
|
+
data-action='input->kubik-key-value-repeater#updateField'
|
|
12
|
+
data-item-index='${r}'
|
|
13
|
+
>`).join(""),n=`<button
|
|
14
|
+
class='kubik--key_value_repeater--delete_button'
|
|
15
|
+
data-action='click->kubik-key-value-repeater#deleteField'
|
|
16
|
+
data-index='${r}'>Delete</button>
|
|
17
|
+
`;this.valuesContainerTarget.insertAdjacentHTML("beforeend",`
|
|
18
|
+
<div class='kubik--key_value_repeater'>
|
|
19
|
+
${a}
|
|
20
|
+
${s}
|
|
21
|
+
${n}
|
|
22
|
+
</div>
|
|
23
|
+
`)})}deleteField(t){const r=t.target.dataset.index;this.dataValue=this.dataValue.filter((a,s)=>s!=r),this.valuesContainerTarget.innerHTML="",this.renderFields()}updateField(t){const r=t.target.dataset.index,a=t.target.name,s=t.target.value,n={...this.dataValue[r],[a]:s};this.dataValue=[...this.dataValue.slice(0,r),n,...this.dataValue.slice(r+1)]}addField(){const t=this.fieldsValue.reduce((r,a)=>(r[a]="",r),{});this.dataValue=[...this.dataValue,t],this.renderFields()}}R(F,"targets",["valuesContainer"]),R(F,"values",{data:Array,widgetId:String,fields:Array,fieldName:String,prefix:String});function pe(e,t=[],r={},a=""){const s=document.createElement(e);s.classList.add(...t);for(const n in r)s.setAttribute(n,r[n]);return typeof a=="string"&&(s.innerText=a),s}class C extends h{connect(){this._loadDefaultResults()}showForm(){this.element.classList.add(this.activeListClass)}cancel(t){t.preventDefault(),this.element.classList.remove(this.activeListClass)}errorValueChanged(){this.errorValue==""?this.element.classList.remove(this.fetchErrorClass):this.element.classList.add(this.fetchErrorClass)}resultActiveValueChanged(){if(this.resultTargets.forEach(t=>{t.classList.remove(this.activeResultClass)}),!isNaN(this.resultActiveValue)){const t=this.resultActiveValue;this.resultTargets[t].classList.add(this.activeResultClass)}}mouseOver(t){const r=t.currentTarget;this.resultActiveValue=parseInt(r.dataset.index)}mouseOut(t){this.resultActiveValue=null}resultsValueChanged(){const t=this.fieldNameValue;this.resultTargets.forEach(r=>r.remove()),this.resultActiveValue=null,this.resultsValue.forEach((r,a)=>{const s=Object.assign({receive_index:this.inputTarget.dataset.itemIndex},r),n=pe("li",["kubik-wysiwyg-component--item-autocomplete-results-list-item"],{"data-kubik-autocomplete-target":"result","data-index":a,"data-return-id":s.id,"data-return-object":JSON.stringify(s),"data-field-name":t,"data-action":"mouseout->kubik-autocomplete#mouseOut mouseover->kubik-autocomplete#mouseOver mousedown->kubik-widget#selectResult mousedown->kubik-autocomplete#blur"},r.return_object.display_name);this.resultsListTarget.insertBefore(n,this.feedbackTarget)}),this.resultActiveValue>this.resultsValue.length&&(this.resultActiveValue=this.resultsValue.length-1)}load(){this._fetchResults()}focus(){this.element.classList.add(this.activeClass)}blur(){this.errorValue="",this.inputTarget.blur(),this.connectionController.abort(),this.element.classList.remove(this.fetchErrorClass),this.element.classList.remove(this.loadingClass),this.element.classList.remove(this.activeClass)}_sourceURL(){const t=[window.location.protocol,window.location.host].join("//"),r=new URLSearchParams({kubik_search:"1",q:this.inputTarget.value});return new URL([this.srcValue,".json?",r.toString()].join(""),t)}_loadDefaultResults(){this._fetchResults()}keyCheck(t){switch(t.key){case"Down":case"ArrowDown":this._nextResult(),t.preventDefault(),t.stopImmediatePropagation();return;case"Up":case"ArrowUp":this._previousResult(),t.preventDefault(),t.stopImmediatePropagation();return;case"Enter":const r=this.resultTargets[this.resultActiveValue];r&&r.dispatchEvent(new Event("mousedown")),t.preventDefault(),t.stopImmediatePropagation();return;case"Backspace":t.stopImmediatePropagation();return}}_previousResult(){isNaN(this.resultActiveValue)?this.resultActiveValue=this.resultTargets.length>1?this.resultTargets.length-1:0:this.resultActiveValue=this.resultActiveValue==0?this.resultTargets.length-1:this.resultActiveValue-1}_nextResult(){isNaN(this.resultActiveValue)?this.resultActiveValue=0:this.resultActiveValue=this.resultActiveValue+1==this.resultTargets.length?0:this.resultActiveValue+1}_fetchResults(){this.errorValue="",this.feedbackTarget.innerHTML="Loading...",this.connectionController=new AbortController,fetch(this._sourceURL(),{headers:{"Content-Type":"application/json"}}).then(t=>t.json()).then(t=>{this.errorValue="",t.length>0&&(this.resultsValue=t,this.queryValue=this.inputTarget.value),this.inputTarget.value==""?(this.queryValue="",this.feedbackTarget.innerHTML="",this.feedbackTarget.insertAdjacentHTML("beforeend",`Showing latest <span>${t.length}</span> results`)):(this.feedbackTarget.innerHTML="",this.queryValue==""?this.feedbackTarget.insertAdjacentHTML("beforeend",`Showing latest <span>${t.length}</span> results`):this.feedbackTarget.insertAdjacentHTML("beforeend",`Showing results for <span>${this.queryValue}</span>`)),this.queryValue==this.inputTarget.value?this.element.classList.remove(this.noResultsClass):this.element.classList.add(this.noResultsClass)}).catch(t=>{this.feedbackTarget.innerHTML="",this.errorValue="Error loading the results"})}}C.classes=["fetchError","loading","active","activeResult","noResults","activeList"],C.targets=["feedback","input","resultsList","result"],C.values={returnController:String,src:String,fieldName:String,query:{type:String,default:""},error:{type:String,default:""},results:{type:Array,default:[]},resultActive:Number};const Ns=function(t={},r){let a={"data-controller":"kubik-widget","data-kubik-widget-setup-value":JSON.stringify(t.setup),"data-kubik-widget-data-value":JSON.stringify(r),"data-kubik-widget-widget-id-value":t.setup.widget_id,"data-kubik-widget-widget-icon":t.setup.config.icon,id:t.setup.widget_id};return t.items_limit&&(a["data-kubik-widget-items-max-items-value"]=t.items_limit),pe("div",["kubik_media_wrapper","kubik-wysiwyg-component"],a)};class Ds{static get defaultWidgetConfig(){return{data_src:"/admin/kubik_wysiwyg_widget/show"}}constructor({data:t,api:r}){this.data=t,this.api=r,this.randomString=Math.random().toString(36).substring(2,7),this.label=this.constructor.toolbox.title;const a=this.constructor.defaultWidgetConfig,s=this.constructor.widgetConfig;this.config=Object.assign(a,s)}render(){const t=[this.config.widget_name,this.randomString].join("-");return Ns({setup:{label:this.label,widget_model:this.config.widget_model,src:this.config.data_src,widget_id:t,widget_type:this.config.widget_name,config:this.config}},this.data)}save(t){const r=JSON.parse(t.attributes["data-kubik-widget-data-value"].value);let a={};return this.config.tabs.forEach(s=>{a[s.name]=r[s.name]}),a}validate(t){return!0}}var Ps={KubikWidgetController:fe,KubikRepeaterController:E,KubikKeyValueRepeaterController:F,PluginFactory:Ds,KubikAutocompleteController:C};return Ps});
|